购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.9 Node节点配置

前面已经把所有Master节点组件安装完成,并且配置了Bootstrapping自动为Node节点签发证书,所以Node节点的Kubelet证书(kubelet.kubeconfig)不需要再手动配置,可以采用Bootstrap自动生成。但是有一些证书还是需要手动发送到Node节点,比如请求kubelet.kubeconfig证书的bootstrap.kubeconfig证书等。

Master01节点将Node节点所用的证书复制到各个Node节点(本次示例Master节点也会部署kubelet和kube-proxy):

2.9.1 Kubelet配置

所有节点创建相关目录:

所有节点配置Kubelet Service:

     # vim  /usr/lib/systemd/system/kubelet.service
     [Unit]
     Description=Kubernetes Kubelet
     Documentation=https://github.com/kubernetes/kubernetes
     After=docker.service
     Requires=docker.service
     
     [Service]
     ExecStart=/usr/local/bin/kubelet
     
     Restart=always
     StartLimitInterval=0
     RestartSec=10
     
     [Install]
     WantedBy=multi-user.target

所有节点配置Kubelet Service的配置文件(也可以写到kubelet.service):

如果读者的Runtime为Docker,请使用如下Kubelet的配置:

所有节点创建Kubelet的配置文件(注意修改的地方,完整文件见本书下载资源):

     # vim /etc/kubernetes/kubelet-conf.yml
     apiVersion: kubelet.config.k8s.io/v1beta1
     ...
     clusterDNS:
     - 192.168.0.10 # 更改该IP为读者Service网段的第10个IP
     ...
     clusterDomain: cluster.local

启动所有节点Kubelet:

     # systemctl daemon-reload
     # systemctl enable --now kubelet

此时系统日志/var/log/messages显示只有如下信息为正常,因为还没有安装CNI插件:

     Unable to update cni config: no networks found in /etc/cni/net.d
注意

如果有很多报错日志,不只是CNI的报错,或者有大量看不懂的报错,说明Kubelet的配置有误,需要检查Kubelet的配置。

查看集群状态:

     # kubectl get node

2.9.2 kube-proxy配置

以同样的方式生成kube-proxy的证书。以下操作只在Master01执行:

注意

修改--server=https://10.0.0.236:16443为读者自己的VIP地址和端口,如果不是高可用集群,改为Master节点IP:6443即可。

将kubeconfig发送至其他节点:

所有节点添加kube-proxy的配置和Service文件:

所有节点创建kube-proxy的配置文件,如果更改了集群Pod的网段,就需要更改kube-proxy.yaml的clusterCIDR为自己的Pod网段(完整文件见本书下载资源):

     # vim /etc/kubernetes/kube-proxy.yaml
     
     apiVersion: kubeproxy.config.k8s.io/v1alpha1
     bindAddress: 0.0.0.0
     ...
     clusterCIDR: 172.16.0.0/12  # 此处改为读者自己的Pod网段
     ...
     udpIdleTimeout: 250ms

所有节点启动kube-proxy: cDbpV5SESgkltHKvoVbhdDfxsyF4yVUS56GukSl6Qx7ErstfR8iggKq0XRiZaDEB

     # systemctl daemon-reload
     # systemctl enable --now kube-proxy
点击中间区域
呼出菜单
上一章
目录
下一章
×

打开