1.CNI:容器网络的API接口
常见插件 calico、flannel、Terway、Weave Net、Cilium。插件分三种:overlay、路由、underlay
2.K8s暴漏服务三种方式
LoadBalancer service/nodeport service、ingress(端口转发)
Ingress:路由机制,代理 根据配置转发请求到指定服务(如:nginx、lstio、TReafik、Haproxy)
3.K8s 污点管理
污点:节点黑名单(可以不让pod在该节点创建、或将该节点从原pod驱逐)
污点策略:
NoSchedlue:不会被调度,不影响节点原有pod,新创建pod不会调度该节点
PreferSchedlue:尽量不调度,不影响节点原有pod。但没有节点可调度,仍可调度到该节点
NoExecute:驱逐,新创建的pod不会调度该节点,同时节点原Pod会被驱逐
污点策略设置与取消
Master节点操作
kubectl taint node 节点主机名 key=value: NoSchedlue //设置
kubectl taint node 节点主机名 key- //取消
例子:
kubectl taint node node-01 for=test: NoSchedlue //设置污点
kubectl taint node node-01 for- //取消污点设置
4.容忍
白名单,为了能将pod调度有污点节点上,需要设置pod容忍
Kubectl describe nodes node-01 |grep -I taints //查看污点设置
Tolerations 不指定key,表示容忍所有污点key,指定key如:-keys:”key” ,当不指定effect值时,表示容忍所有污点策略