創建命名空間
更新時間 2024-01-05 16:04:24
最近更新時間: 2024-01-05 16:04:24
分享文章
本文主要介紹如何創建命名空間。
操作場景
命名空間(Namespace)是對一組資源和對象的抽象整合。在同一個集群內可創建不同的命名空間,不同命名空間中的數據彼此隔離。使得它們既可以共享同一個集群的服務,也能夠互不干擾。
例如可以將開發環境、測試環境的業務分別放在不同的命名空間。
前提條件
至少已創建一個集群。
約束與限制
每個命名空間下,創建的服務數量不能超過6000個。此處的服務對應kubernetes的service資源,即工作負載所添加的服務。
命名空間類別
命名空間按創建類型分為兩大類:集群默認創建的、用戶創建的。
-
集群默認創建的:集群在啟動時會默認創建default、kube-public、kube-system、kube-node-lease命名空間。
- default:所有未指定Namespace的對象都會被分配在default命名空間。
- kube-public:此命名空間下的資源可以被所有人訪問(包括未認證用戶),用來部署公共插件、容器模板等。
- kube-system:所有由Kubernetes系統創建的資源都處于這個命名空間。
- kube-node-lease:每個節點在該命名空間中都有一個關聯的“Lease”對象,該對象由節點定期更新。NodeStatus和NodeLease都被視為來自節點的心跳,在v1.13之前的版本中,節點的心跳只有NodeStatus,NodeLease特性從v1.13開始引入。NodeLease比NodeStatus更輕量級,該特性在集群規模擴展性和性能上有明顯提升。
-
用戶創建的:用戶可以按照需要創建命名空間,例如開發環境、聯調環境和測試環境分別創建對應的命名空間。或者按照不同的業務創建對應的命名空間,例如系統若分為登錄和游戲服務,可以分別創建對應命名空間。
創建命名空間
步驟 1 登錄CCE控制臺,單擊集群名稱進入集群。
步驟 2 在左側導航欄中選擇“命名空間”,在右上角單擊“創建命名空間”。
步驟 3 參照下表設置命名空間參數。
表 命名空間基本信息
| 參數 | 參數說明 |
|---|---|
| 名稱 | 新建命名空間的名稱,命名必須唯一。 |
| 描述 | 輸入對命名空間的描述信息。 |
| 配額管理 | 資源配額可以限制命名空間下的資源使用,進而支持以命名空間為粒度的資源劃分。 須知 建議根據需要在命名空間中設置資源配額,避免因資源過載導致集群或節點異常。 例如: 在集群中每個節點可以創建的實例(Pod)數默認為110個,如果您創建的是50節點規格的集群, 則最多可以創建5500個實例。 因此,您可以在命名空間中自行設置資源配額以確保所有命名空間內的實例總數不超過5500個, 以避免資源過載。請輸入整型數值,不輸入表示不限制該資源的使用。 若您需要限制CPU或內存的配額,則創建工作負載時必須指定CPU或內存請求值。 |
步驟 4 配置完成后,單擊“確定”。
使用kubectl創建Namespace
使用如下方式定義Namespace。
apiVersion: v1
kind: Namespace
metadata:
name: custom-namespace
使用kubectl命令創建。
$ kubectl create -f custom-namespace.yaml
namespace/custom-namespace created
您還可以使用kubectl create namespace命令創建。
$ kubectl create namespace custom-namespace
namespace/custom-namespace created