Node Operator: Kubernetes Node Management Made Simple
Node Operator: Kubernetes Node Management Made Simple 陈俊(Joe), Ant Financial Agenda • Background and Motivation • Introduction of Operators • Node-Operator • Advanced Topic: Teardown Cluster fast and convenient • Add & delete Node at any time • Upgrade Master & Node Components reliably • Canary Rollout • Master & Node Component Versions Management Motivation: Work Order Order Deployment Worker Order • Upgrade Nodes Versions • Upgrade Node 10.10.10.1 • Upgrade docker • Upgrade kubelet • Upgrade Node 10.10.10.2 • Upgrade docker • Upgrade kubelet …. Motivation: Work Order0 码力 | 18 页 | 11.70 MB | 1 年前3Kubernetes开源书 - 周立
10-Annotation 11-K8s架构及基本概念 12-Master与Node的通信 13-Node 14-Pod 15-Replica Set 16-Deployment 17-StatefulSet 18-Daemon Set 19-配置最佳实践 20-管理容器的计算资源 21-Kubernetes资源分配 22-将Pod分配到Node 23-容忍与污点 24-Secret 25-Pod优先级和抢占 主机规划 IP 作⽤ 172.20.0.87 ansible-client 172.20.0.88 master,node 172.20.0.89 master,node 172.20.0.90 node 172.20.0.91 node 172.20.0.92 node 准备⼯作 关闭selinux 所有机器都必须关闭selinux,执⾏如下命令即可。 ~]# setenforce /proc/sys/net/bridge/bridge-nf-call-iptables ~]# sysctl -w net.ipv4.ip_forward=1 如果关闭了防⽕墙,则只需执⾏最下⾯三⾏。 在node机器上 ~]# firewall-cmd --permanent --add-port=10250/tcp ~]# firewall-cmd --permanent --add-port=10255/tcp0 码力 | 135 页 | 21.02 MB | 1 年前3k8s操作手册 2.3
51 k8s-master2.cof-lee.com 10.99.1.52 k8s-master3.cof-lee.com 10.99.1.53 k8s-node01.cof-lee.com 10.99.1.61 k8s-node02.cof-lee.com 10.99.1.62 规划Pod网络: 10.244.0.0/16 规划Service网络: 10.7.0.0/16 # 99.1.53 k8s-master3.cof-lee.com k8s-master3 10.99.1.61 k8s-node01.cof-lee.com k8s-node01 10.99.1.62 k8s-node02.cof-lee.com k8s-node02 EOF ★k8s初始化时要求系统里有/etc/resolv.conf文件及系统对外通信网口上配置有 默认路由;根据实际情况添加 #加载配置 ⑧防火墙放行端口 TCP: 6443,2379,2380,10250~10252,30000~32767 UDP: 8285,8472 ★最好是允许整个k8s的node网段以及pod网段入站 # firewall-cmd --add-rich-rule='rule family="ipv4" source address="10.99.1.0/24" accept'0 码力 | 126 页 | 4.33 MB | 1 年前3KubeCon2020/大型Kubernetes集群的资源编排优化
of cluster nodes ? Dynamic-Scheduler Node1 Node2 Kube-scheduler Pod Request Load Level Request Load Level Real Load Level Real Load Level Assigned to Node2 The native K8S scheduling is based on Dynamic-Scheduler Node1 Node2 Kube-scheduler Pod Request Load Level Request Load Level Real Load Level Real Load Level Assigned to Node1 Dynamic-scheduler Node1 has a lower load Dynamic-Scheduler Node1 Node2 Dynamic-scheduler- node-annotator 5m Load Prometheus 1h Load 1d Load 5m Load 1h Load 1d Load telegraf Record to node annotation telegraf Dynamic-Scheduler Predicate Node2 Node3 Node1 5m Load0 码力 | 27 页 | 3.91 MB | 1 年前3第1930期:Kubernetes基础介绍
Kubernetes基础结构介绍 Kubernetes Master架构组成: 8 www.h3c.com Confidential 秘密 88 Kubernetes基础结构介绍 Kubernetes Node(Worker)架构组成: 9 www.h3c.com Confidential 秘密 99 Kubernetes基础架构介绍 01 02 Kubernetes基本概念和术语介绍 04 Kubernetes技术在H3Cloud K8s基本概念和术语介绍(Node) 工作节点(Node/Worker): Node是集群的工作节点,运行具体的Pod,当某个Node宕机时,其工作负载会被Master自动转移到其他Node节点上。 默认情况下kubelet会向Master注册自己。一旦Node被纳入集群管理,kubelet进程就会定时向Master节点汇报自身的 情况,比如操作系统等信息,这样Master就可以获取每个Node节点的资源使 用情况合理的进行调度。如果Node节点在 指定时间不上报,那么Master就会认为它“失联”,标记成“Not Ready”状态。 Node节点上运行一组关键进程: kubelet:主节点代理,负责Pod对应的容器的创建启停等任务,同时与Master节点密切协作,实现集群管理的基本功 能。 kube-proxy:它负责节点的网络,在主机上维护网络规则并执行连接转发。它还负责对正在服务的pods进行负载平衡。0 码力 | 49 页 | 4.11 MB | 1 年前3K8S安装部署开放服务
集群需要至少 4 台主机/虚拟机,下面是参考配置: 1 台作为 k8s master CPU:2 核, 内存:8GB, 系统盘:40GB, docker 数据盘:80GB 3 台作为 k8s node CPU:2 核, 内存:16GB, 系统盘:40GB, docker 数据盘:40GB, ceph 数据盘:1TB *下面是 vSphere 上创建虚拟机的步骤: A1. 创建 k8s-master /dev/mapper/centos-docker df –Th A2. 创建 k8s-node1, k8s-node2, k8s-node3 内存:16GB, 系统盘:40GB,docker 数据盘:40GB,ceph 数据盘:200GB 【注】所有节点(k8s-master, k8s-node1, k8s-node2, k8s-node3)均需做以下 B~D: B. 升级&配置 centos7 hosts vi /etc/hosts 202.114.193.101 k8s-master 202.114.193.102 k8s-node2 202.114.193.103 k8s-node3 202.114.193.104 k8s-node4 Step3. 禁用防火墙 systemctl stop firewalld systemctl disable firewalld0 码力 | 54 页 | 1.23 MB | 1 年前3基于Kubernetes构建容器云平台的实践 - UCloud优刻得实验室负责⼈ 叶理灯
⽤用户:SS ⽤用户:PP NS ServiceAccount:SS NS: PP Think in Cloud . 北北京 IPv6 on KUN ⽅方案 • IPv6(Pod, Node, Service) • 6to4 Tunnel • Bridge 特性 • 核⼼心基础⽹网络⽆无需修改 • underlay • Pod与集群外部互通 其他⽅方案 (SNAT) Service Gateway包括 bgpd 和 kube-proxy两部分。 Node Pod Pod Pod BGPD Kube-proxy masquerade-all=true 管理理⽹网 BGP(IPv4) BGP(IPv4) 接⼊入交换机 接⼊入交换机 Node Pod Pod Pod BGPD Kube-proxy masquerade-all=true proxy-helloworld 10 90 Think in Cloud . 北北京 监控系统 Kube-State-Metrics Kubernetes APIServer cAdvisor Node-Exporter KUN-Agent Grafana Blackbox Exporter Prometheus Monitor Manager 微信/邮件 外部探测 Probe Exporter0 码力 | 30 页 | 3.52 MB | 1 年前3Kubernetes 管理 Docker 容器
Desktop Dashboard(MasOC) minikube start 回启动⼀个 Docker 容器: 打包 Nodejs 应⽤镜像 创建 Nodejs 应⽤程序 创建 hello-node ⽂件夹,添加以下⽂件以及代码: server.js var http = require('http'); var handleRequest = function(request createServer(handleRequest); www.listen(8080); Dockerfile FROM node:10.20.0 EXPOSE 8080 COPY server.js . CMD node server.js 打包 docker build -t hello-node:v1 . ⽣成镜像如下: docker images # REPOSITORY TAG SIZE # hello-node v1 353fc3541cea 2 minutes ago 912MB 创建 Deployment Kubernetes Pod 是⼀个或多个容器组合在⼀起得共享资源,Kubernetes Deployment 是检查 Pod的健康状况。 kubectl create deployment hello-node --image=hello-node:v10 码力 | 5 页 | 675.91 KB | 1 年前3QCon北京2017/智能化运维/Self Hosted Infrastructure:以自动运维 Kubernetes 为例
Config them correctly - Start them Installation kops, kubeup.sh, kube-AWS,... AWS, GCP API node1 node2 node3 Upgrade - SSH - Upgrade container runtime - Upgrade Kubelet Upgrade - master - SSH - Upgrade API node1 node2 node3 Rollback ??? AWS, GCP API node1 node2 node3 Healing AWS, GCP API node2 node3 Healing AWS, GCP API node2 node3 node1’ Create node Healing AWS, GCP API node2 node3 node1’ improvements in managing Kubernetes Simplify Node Bootstrap On-host requirements become: ● Kubelet ● Container Runtime (docker, rkt, …) Any Distro Node Bootstrap ● Install kubelet ○ $pkgmanager install0 码力 | 73 页 | 1.58 MB | 1 年前3在大规模Kubernetes集群上实现高SLO的方法
deleted in a certain period. 5. Nodes Availability A number value indicates the number of unhealthy node in the cluster. Pods scheduled to unhealthy nodes may not be delivered in time, success rate would Terminating Pod 1min pod is removed from etcd Unhealthy Node Taint/Degrade 1min Node has taints or is degraded Processing Base on the failure reason Unhealth node is healed or removed. Reason classification: FailedPostStartHook, Unhealthy… Trace system Increase of SLO Data Collect Audit log Event The unhealthy node Monitoring Isolation Recover Degrade Data Analysis Failures/Machine Failures/Reason Report0 码力 | 11 页 | 4.01 MB | 1 年前3
共 56 条
- 1
- 2
- 3
- 4
- 5
- 6