![云原生Kubernetes全栈架构师实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/167/47217167/b_47217167.jpg)
上QQ阅读APP看书,第一时间看更新
1.12 注意事项
1.配置方面
和二进制安装方式不同的是,使用Kubeadm安装的Kubernetes集群,大部分组件都是以容器的方式运行的,比如kube-apiserver、kube-proxy等,可以通过kubectl get po -n kube-system查看系统的Pod。
Master节点的组件kube-apiserver、kube-scheduler、kube-controller-manager、etcd的配置和启动文件默认都放置在/etc/kubernetes/manifests,以静态Pod的方式启动。比如apiserver的kube-apiserver.yaml,该YAML文件更改后,kubelet会自动刷新配置,也就是会重启Pod,无须其他的操作。
另外需要注意的是,kube-proxy是以DaemonSet(守护进程集,会在所有符合条件的节点上部署一个Pod)的方式安装的,其配置文件使用Kubernetes的ConfigMap进行管理,并非宿主机上的某个文件,如果需要修改kube-proxy的配置,需要更改该ConfigMap之后,再对kube-proxy进行滚动更新才会生效。
比如将kube-proxy代理模式改为ipvs模式,可以通过kubectl命令编辑kube-proxy配置文件的ConfigMap。以下操作在Master01上执行。
# kubectl edit cm kube-proxy -n kube-system mode: ipvs # mode更改为ipvs
更新Kube-Proxy的Pod:
![](https://epubservercos.yuewen.com/27A31B/26581513401334806/epubprivate/OEBPS/Images/Figure-P45_132793.jpg?sign=1739283123-CLl8czepcfpaMcrhMe10Yh9WnxoAdr0T-0-33a0a795d17e3a2b97716569a05abc95)
验证Kube-Proxy模式:
# curl 127.0.0.1:10249/proxyMode ipvs
2.污点方面
Kubeadm安装后,会自动添加NoSchedule的污点,所以Master节点默认不允许部署非系统Pod,可以通过删除污点的方式允许部署。首先查看污点:
![](https://epubservercos.yuewen.com/27A31B/26581513401334806/epubprivate/OEBPS/Images/Figure-P45_132795.jpg?sign=1739283123-N6EoSB09n5vBIOvFuZQkeeuxjWtBzJSA-0-3c1cb40ab56b8c65301b2774db6e01af)
然后删除污点(生产环境最好不要在Master节点部署其他Pod):
![](https://epubservercos.yuewen.com/27A31B/26581513401334806/epubprivate/OEBPS/Images/Figure-P45_132796.jpg?sign=1739283123-xbKHU8TCRxf6JrefjVu5XzaRMgA8vhqV-0-533ed719e0733ecf49d0f09a1d20ce8a)