管理員可以使已啟用 Tanzu 的 vSphere 整合上的主管命名空間可供使用者使用,以便使用者可以透過雲端範本將這些命名空間新增到 Kubernetes 部署,或從 Service Broker 目錄請求這些命名空間。

此工作說明如何使用 Cloud Assembly 新增 Tanzu 主管叢集以便在部署中使用,以及如何建立或新增用於定義哪些 Cloud Assembly 專案和使用者可以存取特定 Kubernetes 資源的命名空間。此功能依賴適當的 vSphere 雲端帳戶,而不是 VMware Tanzu Kubernetes Grid Integrated Edition (TKGI) 或 Openshift 等整合。主管叢集是與 vSphere 相關聯的自訂 Kubernetes 叢集。它們會向終端使用者公開 Kubernetes API,並將 ESXi 用作 worker 節點 (而非 Linux) 的平台。主管命名空間有利於對 Kubernetes 資源進行存取控制,因為將原則套用到命名空間通常比套用到個別虛擬機器更容易。可以為每個主管叢集建立多個命名空間。

已啟用 Tanzu 的部署還可以使用 vSphere 產生的客體叢集。客體叢集是指在主管叢集上的虛擬機器中執行的 Kubernetes 叢集。客體叢集完全符合上游的 Kubernetes 標準,因此保證能夠與所有 Kubernetes 應用程式搭配使用。vSphere 中的客體叢集使用開放原始碼叢集 API 專案對 Kubernetes 叢集進行生命週期管理,而 Kubernetes 叢集又使用 VM Operator 管理構成客體的虛擬機器。

與已啟用 Tanzu 的 vSphere 執行個體搭配使用時,Kubernetes 區域將會定義哪些主管叢集可用於佈建主管命名空間。主管命名空間特定於已啟用 Tanzu 的 vSphere 執行個體。無法將一般 Kubernetes 資源佈建到已啟用 Tanzu 的 vSphere 執行個體。

指定為專案檢視者的 Cloud Assembly 使用者只能檢視命名空間,而專案成員可對其進行編輯。

如有需要,您可以設定與命名空間相關聯的主管叢集。

必要條件

  • 若要將主管叢集和命名空間與 Cloud Assembly 搭配使用,則必須設定 vSphere 7.x 端點。在 vRealize Automation 中,vSphere 將作為 vCenter 雲端帳戶的一部分進行安裝。請參閱在 vRealize Automation 中建立 vCenter 雲端帳戶
  • Tanzu 必須在 vSphere 雲端帳戶上啟用,且必須包含適當的主管命名空間。
  • vCenter 和 vRealize Automation 部署應針對要同步的使用者使用相同的 Active Directory。雖然未滿足此條件時佈建仍會起作用,但 vRealize Automation 使用者將無法取得命名空間的自動存取權。

程序

  1. Cloud Assembly 中,選取基礎結構 > 設定 > Kubernetes 區域
    此頁面會顯示可供使用的受管理叢集,並且可讓您新增額外叢集。您可以按一下任何叢集以檢視其詳細資料。
  2. 選取新增 Kubernetes 區域
  3. 指定目標 vSphere 雲端帳戶的帳戶詳細資料。
  4. 按一下文字方塊中的 [搜尋] 圖示,即可檢視所有 vSphere 帳戶或依名稱搜尋帳戶。
  5. 輸入新區域的名稱說明
  6. 新增功能標籤 (如果適用)。如需詳細資訊,請參閱在 Cloud Assembly 中使用功能標籤
  7. 按一下 [佈建] 索引標籤,選取將與命名空間相關聯的主管叢集。
  8. 按一下新增計算資源,以檢視並選取可用的主管叢集。
  9. 按一下新增
  10. 選取基礎結構 > 管理 > 專案,然後選取要與 Kubernetes 區域相關聯的專案。
  11. 在 [專案] 頁面上,按一下 [Kubernetes 佈建] 索引標籤。
  12. 按一下新增 Kubernetes 區域,然後新增您剛建立的區域。如果適用,您也可以有多個區域,還可以對區域設定優先順序。
  13. 按一下儲存

下一步

設定命名空間後,Cloud Assembly 中適用使用者的基礎結構 > 資源 > Kubernetes頁面會顯示此命名空間。使用者可以按一下 [摘要] 索引標籤上的 [位址] 連結,以開啟 vSphere Kubernetes CLI 工具來管理命名空間。使用者必須是雲端管理員或是指定專案之命名空間的成員,才能存取主管命名空間詳細資料的連結。此外,使用者還可以下載自訂 Kubectl 以使用主管命名空間。使用者可以登入主管命名空間,並像使用任何其他命名空間一樣使用此命名空間,然後建立雲端範本並部署應用程式。

若要將命名空間新增至雲端範本,請選取設計 > 雲端範本,然後選取現有雲端範本或建立新雲端範本。然後,您可以在左側功能表中選取主管命名空間項目,並將其拖曳至畫布。

可以使用標籤將儲存區原則指派給主管命名空間。您可以新增標籤,例如 location:local,以指定要用於部署的 kubernetes 區域,也可以在儲存區設定檔上新增其他標籤,例如 speed:fastspeed:slow

formatVersion: 1
resources:
  Cloud_SV_Namespace_1:
  type: Cloud.SV.Namespace
  properties:
    name: 'a'
    storage:
      -profile:
         constraints:
           - tag: 'speed:fast'
      -profile:
        liimitMB:1000
        constraints:
           -tag: 'speed:slow'

此雲端範本會請求一個無限制的主管命名空間,並對其指定兩個儲存區設定檔。

部署包含主管命名空間的雲端範本後,使用者也可以從 Service Broker 目錄請求主管命名空間。此外,您可以按一下 Cloud Assembly 中的 [部署] 頁面,以檢視有關部署的資訊,並存取包含對 vSphere 上的命名空間執行 kubectl 之命令的連結。

可以使用 vmclasses 內容 (用於指定類別名稱) 為雲端範本中的主管命名空間指定虛擬機器類別。請參閱以下雲端範本範例。
resources:
  Cloud_SV_Namespace_1:
    type: Cloud.SV.Namespace
    properties:
      name: demo-vmclass1
      vmclasses:
        - name: vmclass1