Kubernetes 防止用户将POD部署到主服务器中
有没有办法不允许调度禁用的主机执行pod调度 如果pod使用此公差,则始终可以安排:Kubernetes 防止用户将POD部署到主服务器中,kubernetes,Kubernetes,有没有办法不允许调度禁用的主机执行pod调度 如果pod使用此公差,则始终可以安排: tolerations: - operator: Exists 主节点有以下缺陷: Taints: node-role.kubernetes.io/master:NoSchedule node.kubernetes.io/unschedulable:NoSchedule Unschedulable: true $kubectl获得吊舱
tolerations:
- operator: Exists
主节点有以下缺陷:
Taints: node-role.kubernetes.io/master:NoSchedule
node.kubernetes.io/unschedulable:NoSchedule
Unschedulable: true
$kubectl获得吊舱-o宽
名称就绪状态重新启动老化IP节点指定节点就绪门
部署-b976f9795-rc2t5 1/1运行0 5m51s 192.168.0.15 master01
$kubectl获取节点-o宽
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
master01就绪,计划禁用master 38h v1.15.3 10.12.0.51 Ubuntu 18.04.3 LTS 4.15.0-62-genericdocker://18.9.9
node01就绪节点38h v1.15.3 10.12.0.62 Ubuntu 18.04.3 LTS 4.15.0-62-genericdocker://18.9.9
正如您所提到的,您正在使用Taints:node role.kubernetes.io/master:NoSchedule
不允许将POD分配给此节点。但是,您使用的是一种特殊情况: 运算符存在的空键与所有键、值和效果匹配 也就是说 这将容忍一切 空效果将所有效果与键匹配
我唯一想到的是使用,或者只是使用。你能分享
kubectl get nodes-o wide的输出吗?@prometherion我已经添加了输出
$ kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
deploy-b976f9795-rc2t5 1/1 Running 0 5m51s 192.168.0.15 master01 <none> <none>
$ kubectl get node -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
master01 Ready,SchedulingDisabled master 38h v1.15.3 10.12.0.51 <none> Ubuntu 18.04.3 LTS 4.15.0-62-generic docker://18.9.9
node01 Ready node 38h v1.15.3 10.12.0.62 <none> Ubuntu 18.04.3 LTS 4.15.0-62-generic docker://18.9.9
tolerations:
- operator: "Exists"
tolerations:
- key: "key"
operator: "Exists"