1. 程式人生 > 其它 >k8s名稱空間

k8s名稱空間

Kubernetes 支援多個虛擬叢集,它們底層依賴於同一個物理叢集。 這些虛擬叢集被稱為名稱空間。 名稱空間 namespace 是 k8s 叢集級別的資源,可以給不同的使用者、租戶、環境或專案建立對應的名稱空間,例如,可以為 test、devlopment、production 環境分別建立各自的名稱空間。   名稱空間適用於存在很多跨多個團隊或專案的使用者的場景。對於只有幾到幾十個使用者的叢集,根本不需要建立或考慮名稱空間。 1、檢視名稱空間及其資源物件 k8s 叢集預設提供了幾個名稱空間用於特定目的,例如,kube-system 主要用於執行系統級資源,存放 k8s 一些元件的。而 default 則為那些未指定名稱空間的資源操作提供一個預設值。 使用 kubectl get namespace 可以檢視 namespace 資源,使用 kubectl describe namespace $NAME 可以檢視特定的名稱空間的詳細資訊。   2、管理 namespace 資源 namespace 資源屬性較少,通常只需要指定名稱即可建立,如“kubectl create namespace qa”。namespace 資源的名稱僅能由字母、數字、下劃線、連線線等字元組成。刪除 namespace 資源會級聯刪除其包含的所有其他資源物件。   #建立一個 test 名稱空間 [root@master1 ~]# kubectl create ns test

 

 #切換名稱空間

[root@master1 ~]# kubectl config set-context --current --namespace=kube-system

 

 #檢視哪些資源屬於空間級的

kubectl api-resources --namespaced=true

 

 

#namespace資源限制額度

建立一個test的名稱空間

每個容器必須設定記憶體請求(memory request),記憶體限額(memory limit),cpu 請求(cpurequest)和 cpu 限額(cpu limit)。 所有容器的記憶體請求總額不得超過 2GiB。 所有容器的記憶體限額總額不得超過 4 GiB。 所有容器的 CPU 請求總額不得超過 2 CPU。 所有容器的 CPU 限額總額不得超過 4CPU。

#檢視test名稱空間下的pod

kubectl get pods -n test