k8s——kubeadm部署k8s(新添node节点)
2021/11/8 22:09:38
本文主要是介绍k8s——kubeadm部署k8s(新添node节点),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录- 一、node节点环境准备
- 二、新添的从节点安装docker
- 三、新添的从节点安装kubeadm,kubelet和kubectl
- 四、在新添的node节点操作
- 五、新添操作
- 5.1 主节点:重新生成新的token
- 5.2 主节点:查看是否存在有效的token值
- 5.3 主节点:获取CA证书sha256编码hash值
- 5.4 新添的node节点:执行加入操作
- 5.5 部署网络插件flannel
- 六、其他各个node节点重新加入k8s集群(新令牌+新证书)
- 七、master端验证是否正常
一、node节点环境准备
1.所有节点,关闭防火墙规则,关闭selinux,关闭swap交换 systemctl stop firewalld systemctl disable firewalld setenforce 0 iptables -F && iptables -t nat -F && iptables -t mangle -F && iptables -X swapoff -a #交换分区必须要关闭 sed -ri 's/.*swap.*/#&/' /etc/fstab #永久关闭swap分区,&符号在sed命令中代表上次匹配的结果 2.加载 ip_vs 模块 for i in $(ls /usr/lib/modules/$(uname -r)/kernel/net/netfilter/ipvs|grep -o "^[^.]*");do echo $i; /sbin/modinfo -F filename $i >/dev/null 2>&1 && /sbin/modprobe $i;done 3.修改主机名 hostnamectl set-hostname node03 4.所有节点修改hosts文件 vim /etc/hosts 192.168.80.11 master01 192.168.80.12 node01 192.168.80.13 node02 192.168.80.16 node03 5.调整内核参数 cat > /etc/sysctl.d/kubernetes.conf << EOF net.bridge.bridge-nf-call-ip6tables=1 #开启网桥模式,可将网桥的流量传递给iptables链 net.bridge.bridge-nf-call-iptables=1 net.ipv6.conf.all.disable_ipv6=1 #关闭ipv6协议 net.ipv4.ip_forward=1 EOF //生效参数 sysctl --system
二、新添的从节点安装docker
yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum install -y docker-ce docker-ce-cli containerd.io mkdir /etc/docker cat > /etc/docker/daemon.json <<EOF { "registry-mirrors": ["https://6ijb8ubo.mirror.aliyuncs.com"], "exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "log-opts": { "max-size": "100m" } } EOF #使用Systemd管理的Cgroup来进行资源控制与管理,因为相对Cgroupfs而言,Systemd限制CPU、内存等资源更加简单和成熟稳定。 #日志使用json-file格式类型存储,大小为100M,保存在/var/log/containers目录下,方便ELK等日志系统收集和管理日志。 systemctl daemon-reload systemctl restart docker.service systemctl enable docker.service docker info | grep "Cgroup Driver" Cgroup Driver: systemd
三、新添的从节点安装kubeadm,kubelet和kubectl
1.定义kubernetes源 cat > /etc/yum.repos.d/kubernetes.repo << EOF [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF yum install -y kubelet-1.15.1 kubeadm-1.15.1 kubectl-1.15.1 2.开机自启kubelet systemctl enable kubelet.service #K8S通过kubeadm安装出来以后都是以Pod方式存在,即底层是以容器方式运行,所以kubelet必须设置开机自启
四、在新添的node节点操作
cd /opt tar zxvf kubeadm-basic.images.tar.gz for i in $(ls /opt/kubeadm-basic.images/*.tar); do docker load -i $i; done #加载镜像
五、新添操作
5.1 主节点:重新生成新的token
kubeadm token create
5.2 主节点:查看是否存在有效的token值
kubeadm token list
5.3 主节点:获取CA证书sha256编码hash值
openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'
5.4 新添的node节点:执行加入操作
kubeadm join 192.168.80.11:6443 --token tvx82l.e3lb3o4wgiaictra --discovery-token-ca-cert-hash sha256:889fda7d6fc935d0010c62a1972882edbb129b598bc2f670f0c1c4c4e2cd1ae3 #上述新生成的的token令牌与ca证书
5.5 部署网络插件flannel
1.在新添的node节点:上传flannel镜像flannel.tar到/opt目录,master节点上传kube-flannel.yml 文件 cd /opt docker load -i flannel.tar 2.在master节点创建flannel资源 kubectl apply -f kube-flannel.yml
六、其他各个node节点重新加入k8s集群(新令牌+新证书)
与新添的node节点执行加入的命令一致 1.kubeadm reset #重设kubuadm设置 2.kubeadm join 192.168.80.11:6443 --token tvx82l.e3lb3o4wgiaictra --discovery-token-ca-cert-hash sha256:889fda7d6fc935d0010c62a1972882edbb129b598bc2f670f0c1c4c4e2cd1ae3 #上述新生成的的token令牌与ca证书
七、master端验证是否正常
kubectl get nodes
这篇关于k8s——kubeadm部署k8s(新添node节点)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15在Kubernetes (k8s) 中搭建三台 Nginx 服务器怎么实现?-icode9专业技术文章分享
- 2024-11-05基于Kubernetes的自定义AWS云平台搭建指南
- 2024-11-05基于Kubernetes Gateway API的现代流量管理方案
- 2024-11-05在Kubernetes上部署你的第一个应用:Nginx服务器
- 2024-11-05利用拓扑感知路由控制Kubernetes中的流量
- 2024-11-05Kubernetes中的层次命名空间:更灵活的资源管理方案
- 2024-11-055分钟上手 Kubernetes:精简实用的 Kubectl 命令速查宝典!
- 2024-10-30K8s 容器的定向调度与亲和性
- 2024-10-28云原生周刊:K8s未来三大发展方向 丨2024.10.28
- 2024-10-25亚马逊弹性Kubernetes服务(EKS)实战:轻松搭建Kubernetes平台