Kubernetes 节点访问限制 电脑版发表于:2022/6/28 15:05  >#Kubernetes 节点访问限制 [TOC] tn2>有时候可能会有这样的需求限制,我们知道通过设置变量`KUBECONFIG`指定访问k8s集群时需要的config文件来访问集群资源。 ```bash export KUBECONFIG=/etc/kubernetes/kubelet.conf kubectl get node ```  tn2>但是通过这样的方式,只要其他工作节点或者子节点同样有conf文件也会对集群中的资源进行操作。举例: ```bash ssh node01 export KUBECONFIG=/etc/kubernetes/kubelet.conf kubectl label node controlplane killercoda/one=123 kubectl label node node01 node-restriction.kubernetes.io/one=123 ```  tn2>所以我们可以修改apiserver的配置来进行限制,添加下面的一行来启动节点限制。 ```bash vim /etc/kubernetes/manifests/kube-apiserver.yaml ``` ```yaml - --enable-admission-plugins=NodeRestriction ```  tn2>然后我们可以启动该命令查看apiserver的重启情况。 ```yaml watch crictl ps # 如果不是用的cri,也可以使用下面的命令 kubectl get pod -n kube-system -w ``` tn2>启动完成之后我们可以再次尝试,我们发现它被受到限制。 ```yaml ssh node01 export KUBECONFIG=/etc/kubernetes/kubelet.conf kubectl label node controlplane killercoda/two=123 # restricted kubectl label node node01 node-restriction.kubernetes.io/two=123 # restricted kubectl label node node01 test/two=123 # works # 但是仍然是可以查看的 k get node ``` 