目錄
二、在kubeconfig下新增加乙個lvzhenjiang這個使用者
三、把user這個使用者通過rolebinding繫結到clusterrole上,授予許可權,許可權只是在lvzhenjiang這個命名空間有效
1.1 生成乙個私鑰
$ cd /etc/kubernetes/pki/
$ (umask 077; openssl genrsa -out lvzhenjiang.key 2048)
1.2 生成乙個證書請求$ openssl req -new -key lvzhenjiang.key -out lvzhenjiang.csr -subj "/cn=lvzhenjiang"
1.3 生成乙個證書$ openssl x509 -req -in lvzhenjiang.csr -ca ca.crt -cakey ca.key -cacreateserial -out lvzhenjiang.crt -days 3650
2.1 把lvzhenjiang這個使用者新增到kubernetes集群中,可以用來認證apiserver的連線$ kubectl config set-credentials lvzhenjiang --client-certificate=./lvzhenjiang.crt --client-key=./lvzhenjiang.key --embed-certs=true
2.2 在kubeconfig下新增加乙個lvzhenjiang這個賬號$ kubectl config set-context lvzhenjiang@kubernetes --cluster=kubernetes --user=lvzhenjiang
2.3 切換賬號到lvzhenjiang,預設沒有任何許可權$ kubectl config use-context lvzhenjiang@kubernetes
$ kubectl config use-context kubernetes-admin@kubernetes
# 注意:這個使用者是k8s管理員使用者
3.1 把lvzhenjiang這個使用者通過rolebinding繫結到clusterrole上$ kubectl create rolebinding lvzhenjiang -n lvzhenjiang --clusterrole=cluster-admin --user=lvzhenjiang
3.2 切換到lvzhenjiang這個使用者$ kubectl config use-context lvzhenjiang@kubernetes
3.3 測試是否有許可權$ kubectl get pods -n lvzhenjiang
# 有許可權操作這個命名空間
$ kubectl get pods
# 沒有許可權操作這個命名空間
3.4 新增乙個lvzhenjiang的普通使用者$ useradd lvzhenjiang
$ cp -ar /root/.kube/ /home/lvzhenjiang/
$ chown -r lvzhenjiang.lvzhenjiang /home/lvzhenjiang/
$ su - lvzhenjiang
$ kubectl get pods -n lvzhenjiang
# 通過上面可以發現lvzhenjiang這個使用者只能操作lvzhenjiang命名空間
k8s資源限制
注 以下只是在yaml檔案中進行資源限制的乙個片段,並不是完整的yaml檔案,僅是自己的乙個隨筆。root master limit vim cgroup pod.yaml spec containers name image ports protocol tcp containerport 80 ...
k8s的資源限制及資源請求
容器的資源需求及限制 需求 requests 定義容器執行時至少需要資源 限制 limits 定義容器執行時最多能分配的資源 requests pod.spec.containers.resources.requests limits pod.spec.containers.resources.li...
k8s測試十八資源限制
kubernetes對資源的限制實際上是通過cgroup來控制的,cgroup是容器的一組用來控制核心如何執行程序的相關屬性集合。針對記憶體 cpu和各種裝置都有對應的cgroup。預設情況下,pod執行沒有cpu和記憶體的限制。這一位這系統中的任何pod將能夠像執行該pod所在的節點一樣,消耗足夠...