上一篇我们介绍了通过kubeadm安装k8sMaster节点的过程,需要的小伙伴请移步:k8s系列文章3: kubeadm搭建k8s集群(上),这一篇文章我们继续k8s Node节点的安装。
1 系统要求
对于新节点的添加,系统准备和Kubernetes yum源的配置过程是一致的。
2 安装过程
2.1 安装kubeadm和相关工具
在新的节点(k8s的节点Node可以是物理机也可以是虚拟机)上执行以下命令:
yum install kubelet-1.14.0-0 kubeadm-1.14.0-0 --disableexcludes=kubernetes
运行下面的命令启动Docker和kubelet服务,并将其设置为开机自动启动:
systemctl enable docker && systemctl start docker
systemctl enable kubelet && systemctl start kubelet
2.2 为kubeadm命令生成配置文件。创建文件join-config.yaml,如下:
apiVersion: kubeadm.k8s.io/v1beta1
kind: JoinConfiguration
discovery:
bootstrapToken:
apiServiceEndpoint: 10.5.3.207: 6443
token: ahdajldkjafls.sdjfsldnvd.dasfjdkl
unsafeSkipCAVerification: true
tlsBootstrapToken: ahdajldkjafls.sdjfsldnvd.dasfjdkl
其中,apiServerEndpoint的值来自Master服务器的地址,token和tlsBootstrapToken的值来源于使用kubeadm init安装Master的最后一行信息。参考k8s系列文章3: kubeadm搭建k8s集群(上)。
2.3 执行kubeadm join命令,将本Node加入集群
kubeadm join --config=join-config.yaml
正常安装过程如下:
至此,已经初步搭建了一个Master一个Node的集群。下面开始安装网络插件。
3 安装网络插件
执行kubelet get nodes命令,会发现k8s提示Master为Unready状态,因为还没有安装网络插件。
kubelet get Nodes
根据kubeadm的提示安装CNI插件:
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
4 检查集群是否安装完成
kubectl get pods --all-namespace
至此,一个功能完整的k8s集群就搭建完成了,你,学废了吗,哈哈哈!