使用安裝程式介面來部署管理叢集

本主題說明如何使用 Tanzu Kubernetes Grid 安裝程式介面,將管理叢集部署到 vSphere (在未啟用 vSphere with Tanzu 主管的情況下)、Amazon Web Services (AWS) 和 Microsoft Azure。Tanzu Kubernetes Grid 安裝程式介面會引導您完成管理叢集的部署,並提供不同的組態供您選取或重新設定。如果這是您第一次將管理叢集部署到指定的目標平台,建議使用安裝程式介面 (除非您必須從組態檔進行部署)。

必要條件

在部署管理叢集之前,必須確定您的環境符合目標平台的需求。

一般必要條件

基礎結構必要條件

在部署管理叢集時,每個目標平台各有其他的必要條件需要遵循。

vSphere
請確定已符合 準備將管理叢集部署到 vSphere 中列出的所有需求。
附註

在 vSphere 8 中的 vSphere with Tanzu 上,您無需部署管理叢集。請參閱 vSphere with Tanzu 主管是管理叢集

AWS
Azure


啟動安裝程式介面

依預設,Tanzu Kubernetes Grid 會將所有管理叢集的 kubeconfig 儲存在 ~/.kube-tkg/config 檔案中。如果您要將管理叢集的 kubeconfig 檔案儲存到其他位置,請在執行 tanzu mc create 之前先設定 KUBECONFIG 環境變數。

  1. 在您下載並安裝 Tanzu CLI 的機器上,執行設有 --ui 選項的 tanzu mc create 命令:

    tanzu management-cluster create --ui
    

    如果符合必要條件,安裝程式介面會在瀏覽器中啟動,並引導您完成設定管理叢集的步驟。

    注意

    tanzu mc create 命令需要一段時間來完成。當 tanzu mc create 正在執行時,請勿在同一啟動機器上額外叫用 tanzu mc create 來部署多個管理叢集、變更內容或編輯 ~/.kube-tkg/config

    以下安裝程式介面選項一節說明如何變更安裝程式介面的執行位置,包括在有別於 Tanzu CLI 的機器上執行。

  2. 按一下 VMware vSphereAmazon EC2Microsoft Azure部署 (Deploy) 按鈕。

    Tanzu Kubernetes Grid 安裝程式介面的歡迎頁面,含有 [部署到 vSphere (Deploy to vSphere)] 按鈕

安裝程式介面選項

依預設,tanzu mc create --ui 會在預設瀏覽器中的 http://127.0.0.1:8080,於本機開啟安裝程式介面。您可以使用 --browser--bind 選項,來控制安裝程式介面的執行位置:

  • --browser 指定要在其中開啟介面的本機瀏覽器。
    • 支援的值包括 chromefirefoxsafariieedgenone
    • none--bind 搭配使用時,會在不同的機器上執行該介面,如下所述。
  • --bind 指定 IP 位址和連接埠,以從該處提供介面。

    注意

    若從非預設 IP 位址和連接埠提供安裝程式介面,可能會使 Tanzu CLI 在介面執行時面臨潛在的安全風險。VMware 建議將安全網路上的 IP 和連接埠傳遞給 –bind 選項。

--browser--bind 的使用案例包括:

  • 如果已有另一項程序正在使用 http://127.0.0.1:8080,請使用 --bind,從其他本機連接埠來提供介面。
  • 如果您是經由 SSH 通道進入啟動機器或經由 X11 轉送其顯示畫面,若要使安裝程式介面出現在本機,您可能需要使用 --browser none
  • 若要執行 Tanzu CLI,並在遠端機器上建立管理叢集,以及在本機或其他位置執行安裝程式介面,請執行下列動作:

    1. 在遠端啟動機器上,執行設有以下選項和值的 tanzu mc create --ui

      • --bind:遠端機器的 IP 位址和連接埠
      • --browsernone
      tanzu mc create --ui --bind 192.168.1.87:5555 --browser none
      
    2. 在本機 UI 機器上,瀏覽至遠端機器的 IP 位址,以存取安裝程式介面。

設定目標平台

用來設定目標平台的選項,取決於您使用的提供者。

vSphere
設定 vSphere 執行個體的連線。
  1. IaaS 提供者 (IaaS Provider) 區段中,針對您要在其中部署管理叢集的 vCenter Server 執行個體,輸入其 IP 位址或完整網域名稱 (FQDN)。

    Tanzu Kubernetes Grid 中對 IPv6 位址的支援有限;請參閱在 IPv6 上部署叢集 (僅限 vSphere)。如果不是部署到純 IPv6 網路環境,則必須在以下步驟中提供 IPv4 位址。

  2. 針對具有 Tanzu Kubernetes Grid 作業所需權限的使用者帳戶,輸入其 vCenter Single Sign-On 使用者名稱和密碼。

    帳戶名稱必須包含網域,例如 [email protected]

    設定 vSphere 的連線

  3. (選用) 在 SSL 指紋驗證 (SSL Thumbprint Verification) 下,選取停用驗證 (Disable Verification)。如果選取此核取方塊,安裝程式在連線至 vCenter Server 時,會略過憑證指紋驗證。

  4. 按一下連線 (Connect)

  5. 驗證 vCenter Server 憑證的 SSL 指紋,如果有效,請按一下繼續 (Continue)。僅當取消選取停用驗證 (Disable Verification) 核取方塊時,才會顯示此畫面。

    驗證 vCenter Server 憑證指紋

    如需如何取得 vCenter Server 憑證指紋的相關資訊,請參閱取得 vSphere 憑證指紋

  6. 如果要將管理叢集部署到 vSphere 7 或 vSphere 8 執行個體,請確認是否要繼續部署。

    在 vSphere 7 和 vSphere 8 上,vSphere with Tanzu 提供一個內建主管來充當管理叢集,相較於獨立管理叢集,可提供更好的體驗。當主管不存在時,支援將 Tanzu Kubernetes Grid 管理叢集部署到 vSphere 7 或 vSphere 8,但較好的作法是啟用 vSphere with Tanzu 並使用主管 (如有可能)。Azure VMware 解決方案不支援主管叢集,因此需要部署管理叢集。

    如需相關資訊,請參閱《使用 Tanzu CLI 來建立和管理 TKG 2.1 工作負載叢集》中的 vSphere with Tanzu 主管是管理叢集

    為了反映部署到 vSphere 7 和 vSphere 8 時使用 vSphere with Tanzu 的建議,Tanzu Kubernetes Grid 安裝程式會有如下的行為:

    • 如果已啟用 vSphere with Tanzu,安裝程式會通知您無法部署管理叢集,然後結束。
    • 如果未啟用 vSphere with Tanzu,安裝程式會通知您可以部署 Tanzu Kubernetes Grid 管理叢集,但不建議這樣做,且會提供選項供您選擇:
    • 設定 vSphere with Tanzu,會開啟 vSphere Client,以便您可以依照 vSphere 8 說明文件中的設定和管理主管中所述來設定主管。
    • 部署 TKG 管理叢集,可讓您繼續部署管理叢集 (若為 vSphere 7 或 vSphere 8),若為 Azure VMware 解決方案,則需要這樣做。使用 vSphere 8 時,慣用選項是啟用 vSphere with Tanzu 並使用內建主管,而不是部署 Tanzu Kubernetes Grid 管理叢集。

    將管理叢集部署到 vSphere 8

  7. 資料中心 (Datacenter) 下拉式功能表中,選取要在其中部署管理叢集的資料中心。

  8. 新增 SSH 公開金鑰。若要新增 SSH 公開金鑰,請使用瀏覽檔案 (Browse File) 選項,或者手動將金鑰的內容貼到文字方塊中。按下一步 (Next)

    選取資料中心,並提供 SSH 公開金鑰

AWS
設定指向 AWS 帳戶的連線。
  1. IaaS 提供者 (IaaS Provider) 區段中,選取如何為 AWS 帳戶提供認證。您有兩個選項可選:

    • 認證設定檔 (建議) (Credential Profile (recommended)):選取已存在的 AWS 認證設定檔。如果選取設定檔,則會將為設定檔所設定的存取金鑰和工作階段 Token 資訊傳遞給安裝程式,而不會在 UI 中顯示實際值。如需設定認證設定檔的相關資訊,請參閱認證檔和設定檔

      選取認證設定檔

    • 一次性認證 (One-Time Credentials):直接在 AWS 帳戶的存取金鑰識別碼 (Access Key ID)密碼存取金鑰 (Secret Access Key) 欄位中,輸入 AWS 帳戶認證。如果您的 AWS 帳戶設定成需要臨時認證,可以選擇性地在工作階段 Token (Session Token) 中,指定 AWS 工作階段 Token。如需取得工作階段 Token 的詳細資訊,請參閱將臨時認證與 AWS 資源搭配使用

      輸入 AWS 認證

  2. 區域 (Region) 中,選取要在其中部署管理叢集的 AWS 區域。

    如果要部署生產管理叢集,此區域必須至少具有三個可用區域。

  3. 按一下連線 (Connect)。如果連線成功,請按下一步 (Next)
  4. VPC for AWS 區段中,從下拉式功能表中選取 VPC 識別碼 (VPC ID)。選取 VPC 時,將自動填入 VPC CIDR 區塊。如果要在網際網路受限的環境 (例如 Proxy 或氣隙環境) 中部署管理叢集,請選取這不是連結網際網路的 VPC (This is not an internet facing VPC) 核取方塊。

    使用現有的 VPC

Azure
設定 Microsoft Azure 帳戶的連線。
重要

如果您是第一次使用新版本的 Tanzu Kubernetes Grid (例如 v2.1.1) 來將管理叢集部署到 Azure,請確定您已接受該版本的基礎映像授權。如需相關資訊,請參閱準備將管理叢集部署到 Microsoft Azure 中的接受基礎映像授權

  1. IaaS 提供者 (IaaS Provider) 區段中,輸入 Azure 帳戶的承租人識別碼 (Tenant ID)用戶端識別碼 (Client ID)用戶端密碼 (Client Secret)訂閱識別碼 (Subscription ID) 值。當您登錄 Azure 應用程式,並使用 Azure 入口網站為其建立密碼時,已記錄了這些值。

    設定 Azure 的連線

  2. 選取 Azure 環境 (Azure Environment)公有雲 (Public Cloud)美國政府雲端 (US Government Cloud)。您可以從組態檔部署並設定 AZURE_ENVIRONMENT,來指定其他環境。
  3. 按一下連線 (Connect)。安裝程式會驗證連線,並將按鈕標籤變更為已連線 (Connected)
  4. 選取您要在其中部署管理叢集的 Azure 區域。
  5. 將 SSH 公開金鑰的內容 (如 .ssh/id_rsa.pub) 貼到文字方塊中。

  6. 資源群組 (Resource Group) 下,按一下選取現有資源群組 (Select an existing resource group)建立新資源群組 (Create a new resource group) 選項按鈕。

    • 如果選取了選取現有資源群組 (Select an existing resource group),請使用下拉式功能表來選取群組,然後按下一步 (Next)

      選取現有資源群組

    • 如果選取了建立新資源群組 (Create a new resource group),請輸入新資源群組的名稱,然後按下一步 (Next)

      建立新資源群組

  7. VNet for Azure 區段中,選取在 Azure 上建立新的 VNet (Create a new VNet on Azure)選取現有的 VNet (Select an existing VNet) 選項按鈕。

    • 如果選取了在 Azure 上建立新的 VNet (Create a new VNet on Azure),請使用下拉式功能表,選取您要在其中建立 VNet 的資源群組,並提供以下內容:

      • VNet 的名稱和 CIDR 區塊。預設值為 10.0.0.0/16
      • 控制平面子網路的名稱和 CIDR 區塊。預設值為 10.0.0.0/24
      • 工作節點子網路的名稱和 CIDR 區塊。預設值為 10.0.1.0/24

      在 Azure 上建立新的 VNet

      設定這些欄位後,按下一步 (Next)

    • 如果選取了選取現有的 VNet (Select an existing VNet),請使用下拉式功能表,選取 VNet 所在的資源群組、VNet 名稱、控制平面和工作節點子網路,然後按下一步 (Next)

      選取現有 VNet

    • 若要使管理叢集成為私人叢集,如 Azure 私人叢集中所述,請啟用私人 Azure 叢集 (Private Azure Cluster) 核取方塊。


設定管理叢集設定

某些用來設定管理叢集的選項,取決於您使用的提供者。

  1. 管理叢集設定 (Management Cluster Settings) 區段中,選取開發 (Development)生產 (Production) 動態磚。

    • 如果選取開發 (Development),安裝程式會部署一個管理叢集,其中含有單一控制平面節點和單一工作節點。
    • 如果選取生產 (Production),安裝程式會部署高可用性管理叢集,其中含有三個控制平面節點和三個工作節點。
  2. 開發 (Development)生產 (Production) 動態磚中,使用執行個體類型 (Instance type) 下拉式功能表,為一或多個控制平面節點虛擬機器,選取不同的 CPU、RAM 和儲存區組合。

    請根據控制平面節點虛擬機器所要執行的預期工作負載,來選擇其組態。例如,某些工作負載可能需要較大的計算容量,但所需的儲存區相對較小,而其他工作負載可能需要大量的儲存區和較少的計算容量。如果您在生產 (Production) 動態磚中選取執行個體類型,對於工作節點執行個體類型 (Worker Node Instance Type),會自動選取您所選的執行個體類型。必要時,可變更此設定。

    如果您打算向 Tanzu Mission Control 登錄管理叢集,請確定您的工作負載叢集符合 Tanzu Mission Control 說明文件中的向 Tanzu Mission Control 登錄 Tanzu Kubernetes 叢集時的需求中所列出的需求。

    vSphere
    從預先定義的 CPU、記憶體和儲存區組態中,選取一個大小。最低組態為 2 個 CPU 和 4 GB 記憶體。
    AWS
    選取執行個體大小。下拉式功能表會依字母順序列出選項,而不是依大小列出。最低組態為 2 個 CPU 和 8 GB 記憶體。相容的執行個體類型清單會因區域而異。如需各種不同大小的執行個體的組態資訊,請參閱 Amazon EC2 執行個體類型
    Azure
    選取執行個體大小。最低組態為 2 個 CPU 和 8 GB 記憶體。相容的執行個體類型清單會因區域而異。如需 Azure 各種不同大小的節點執行個體的組態資訊,請參閱 Azure 中虛擬機器的大小

    選取控制平面節點組態

  3. 選擇性地輸入您的管理叢集名稱。

    如果未指定名稱,Tanzu Kubernetes Grid 將自動產生一個唯一名稱。若有指定名稱,該名稱必須以字母 (而不是數字字元) 結尾,且其 DNS 主機名稱必須符合 RFC 952 所述的需求和 RFC 1123 中已修訂的需求。

  4. (選用) 如果您要啟用 MachineHealthCheck,請選取機器健全狀況檢查 (Machine Health Checks) 核取方塊。部署後,您可以使用 CLI,在叢集上啟用或停用 MachineHealthCheck。如需相關指示,請參閱為工作負載叢集設定機器健全狀況檢查

  5. (選用) 選取啟用稽核記錄 (Enable Audit Logging) 核取方塊,以記錄對 Kubernetes API 伺服器發出的要求。如需詳細資訊,請參閱稽核記錄

  6. 設定您的目標平台特定的其他設定。

    vSphere
    設定 vSphere 特定的設定。
    1. 工作節點執行個體類型 (Worker Node Instance Type) 下,選取工作節點虛擬機器的組態。
    2. 控制平面端點提供者 (Control Plane Endpoint Provider) 下,選取 Kube-VipNSX Advanced Load Balancer,以選擇要用於控制平面 API 伺服器的元件。

      若要使用 NSX Advanced Load Balancer,必須先將其部署到 vSphere 環境中。如需相關資訊,請參閱安裝 NSX Advanced Load Balancer。如需有關使用 NSX Advanced Load Balancer 作為控制平面端點提供者優點的詳細資訊,請參閱設定 NSX Advanced Load Balancer

    3. 控制平面端點 (Control Plane Endpoint) 下,輸入傳送到管理叢集的 API 要求的靜態虛擬 IP 位址或 FQDN。如果使用 Kube-Vip,則需要此設定。

      請確定此 IP 位址不在 DHCP 範圍內,但與 DHCP 範圍位於同一個子網路。如果已將 FQDN 對應至 VIP 位址,則可以指定 FQDN 而非 VIP 位址。如需詳細資訊,請參閱 vSphere 的靜態 VIP 和負載平衡器

      如果使用 NSX Advanced Load Balancer 作為控制平面端點提供者,則會自動從 NSX Advanced Load Balancer 靜態 IP 集區來指派 VIP。

      設定 vSphere 控制平面端點

    AWS
    設定 AWS 特定的設定。
    1. EC2 金鑰配對 (EC2 Key Pair) 中,指定已使用您的 AWS 帳戶登錄且位於管理叢集部署所在區域中的 AWS 金鑰配對名稱。您可能已在設定 AWS 帳戶認證和 SSH 金鑰中設定此項。

    2. (選用) 如果管理叢集部署所在的可用區域中已存在 Bastion 主機,請停用 Bastion 主機 (Bastion Host) 核取方塊。

      如果維持啟用此選項,Tanzu Kubernetes Grid 會為您建立 Bastion 主機。

    3. 如果您是第一次將管理叢集部署到此 AWS 帳戶,請選取自動建立 AWS CloudFormation 堆疊 (Automate creation of AWS CloudFormation Stack) 核取方塊。

      此 CloudFormation 堆疊會建立 Tanzu Kubernetes Grid 在 AWS 上部署及執行叢集時所需的身分識別和存取管理 (IAM) 資源。如需詳細資訊,請參閱準備將管理叢集部署到 AWS 中的Tanzu Kubernetes Grid 所設定的權限

    4. 設定可用區域:

      1. 可用區域 1 (Availability Zone 1) 下拉式功能表中,選取管理叢集的可用區域。如果選取了開發 (Development) 動態磚,則只能選取一個可用區域。請參閱下圖。

        設定叢集

      2. AZ1 工作節點執行個體類型 (AZ1 Worker Node Instance Type) 下拉式功能表中,從這個可用區域中的可用執行個體清單中,選取工作節點虛擬機器的組態。

      3. 如果選取了上面的生產 (Production) 動態磚,請使用可用區域 2 (Availability Zone 2)可用區域 3 (Availability Zone 3)AZ 工作節點執行個體類型 (AZ Worker Node Instance Type) 下拉式功能表,為管理叢集選取三個唯一的可用區域。

        當 Tanzu Kubernetes Grid 部署管理叢集 (其中包含三個控制平面節點和三個工作節點) 時,它會將控制平面節點和工作節點分配在這些可用區域之間。

      4. 使用 VPC 公用子網路 (VPC public subnet)VPC 私人子網路 (VPC private subnet) 下拉式功能表,以選取 VPC 上的子網路。

        如果要部署生產管理叢集,請為這三個可用區域選取子網路。如果選取了上一節中的這不是連結網際網路的 VPC (This is not an internet facing VPC),則公用子網路無法使用。下圖顯示開發 (Development) 動態磚。

      設定 VPC 子網路

    Azure
    工作節點執行個體類型 (Worker Node Instance Type) 下,選取工作節點虛擬機器的組態。
  7. 下一步 (Next)

設定 VMware NSX Advanced Load Balancer

設定 NSX Advanced Load Balancer 僅適用於 vSphere 部署。

vSphere
VMware NSX Advanced Load Balancer (ALB) 可為 vSphere 提供 L4+L7 負載平衡解決方案。NSX ALB 包含一個整合了 Kubernetes API 整合的 Kubernetes Operator,以管理工作負載的負載平衡和輸入資源的生命週期。若要使用 NSX ALB,必須先將它部署在 vSphere 環境中。如需相關資訊,請參閱 安裝 NSX Advanced Load Balancer
重要

在 vSphere 8 上,若要將 NSX Advanced Load Balancer 與 TKG 獨立管理叢集及其工作負載叢集結合使用,您需要 NSX ALB v22.1.2 或更新版本以及 TKG v2.1.1 或更新版本。

在選用的 VMware NSX Advanced Load Balancer 區段中,您可以設定 Tanzu Kubernetes Grid,以使用 NSX Advanced Load Balancer。依預設,所有工作負載叢集都將使用負載平衡器。

  1. 對於控制器主機 (Controller Host),輸入控制器虛擬機器的 IP 位址或 FQDN。
  2. 輸入您在部署控制器主機時,設定給該控制器主機的使用者名稱和密碼。
  3. 將用來產生控制器憑證的憑證授權機構內容貼到控制器憑證授權機構 (Controller Certificate Authority) 文字方塊中,然後按一下驗證認證 (Verify Credentials)

    憑證內容會以 -----BEGIN CERTIFICATE----- 開頭。

    如果您具有自我簽署控制器憑證,則必須使用 SSL/TLS 憑證,此憑證設定於 Avi 控制器 UI (Avi Controller UI) > 管理 (Administration) > 設定 (Settings) > 存取設定 (Access Settings) 索引標籤的系統存取設定 (System Access Settings) > SSL 憑證 (SSL Certificate) 下。您可以擷取憑證內容,如 Avi 控制器設定:自訂憑證中所述。

    [Avi 管理 (Avi Admin)] > [系統存取設定 (System Access Settings)] > [SSL 憑證 (SSL Certificate)]:System-Default-Portal-Cert、System-Default-Portal-Cert-EC256

  4. 使用雲端名稱 (Cloud Name) 下拉式功能表,選取您建立在 NSX Advanced Load Balancer 部署中的雲端。

    例如,Default-Cloud

  5. 工作負載叢集 (Workload Cluster) 管理叢集 (Management Cluster) 區段中,使用服務引擎群組名稱 (Service Engine Group Name) 下拉式功能表,選取一個服務引擎群組。

    例如,Default-Group

  6. 工作負載叢集 - 數據平面 VIP 網路名稱 (Workload Cluster - Data Plane VIP Network Name) 下拉式功能表中,選取負載平衡器浮動 IP 集區所在的網路名稱。

    會自動選取相同的網路,以供工作負載叢集和管理叢集的數據平面和控制平面使用。必要時,您可以變更這些設定。

    NSX ALB 的 VIP 網路必須存在於 Tanzu Kubernetes Grid 所用 Kubernetes 網路的相同 vCenter Server 執行個體中。這可讓 NSX Advanced Load Balancer 在 vCenter Server 中探索 Kubernetes 網路,並部署及設定服務引擎。

    您可以在 NSX Advanced Load Balancer 介面的基礎結構 (Infrastructure) > 網路 (Networks) 視圖中,查看該網路。

  7. 工作負載叢集 - 數據平面 VIP 網路 CIDR (Workload Cluster - Data Plane VIP Network CIDR)工作負載叢集 - 控制平面 VIP 網路 CIDR (Workload Cluster - Control Plane VIP Network CIDR) 下拉式功能表中,選取或輸入要用於負載平衡器 VIP 的子網路 CIDR,以供工作負載叢集和管理叢集的數據平面和控制平面使用。

    這來自於 VIP 網路的其中一個已設定子網路。您可以在 NSX Advanced Load Balancer 介面的基礎結構 (Infrastructure) > 網路 (Networks) 視圖中,查看特定網路的子網路 CIDR。會自動將相同的 CIDR 套用至對應的管理叢集設定中。必要時,您可以變更這些設定。

    NSX ALB 工作負載和管理叢集設定

  8. (選用) 輸入一或多個叢集標籤以識別叢集,以便選擇性在其中啟用 NSX ALB,或者為不同的叢集群組自訂 NSX ALB 設定。

    依預設,會在隨此管理叢集部署的所有工作負載叢集上,啟用 NSX Advanced Load Balancer,且這些叢集會共用相同的 VMware NSX Advanced Load Balancer 控制器、雲端、服務引擎群組和 VIP 網路。這在之後就無法變更。

    您可以選擇性地僅在一部分的叢集上啟用 NSX ALB,或是保留日後能為不同的叢集群組自訂 NSX ALB 設定的功能。這在下列案例中非常有用:

    • 您想要將不同的工作負載叢集集合設定到不同的服務引擎群組,以實作隔離或支援更多服務類型的負載平衡器,而不是只支援一個服務引擎群組的容量。
    • 您想要將不同的工作負載叢集集合設定到不同的雲端,因為它們部署在不同的站台中。

    若要選擇性地 (而不是全域) 啟用 NSX ALB,請新增 key: value 格式的標籤。會使用您在此處定義的標籤,來建立標籤選取器。唯有具有相符標籤的工作負載叢集的 Cluster 物件才會啟用負載平衡器。因此,您得負責確保工作負載叢集的 Cluster 物件具有對應的標籤。

    例如,如果您使用 team: tkg 在工作負載叢集上啟用負載平衡器:

    1. kubectl 設定為管理叢集的內容。

      kubectl config use-context management-cluster@admin
      
    2. 使用所定義的標籤,來標記對應工作負載叢集的 Cluster 物件。如果您定義多個索引鍵-值,則需要全部套用。

      kubectl label cluster <cluster-name> team=tkg
      

    NSX ALB 標籤

  9. 下一步 (Next),設定中繼資料。

AWS
部署管理叢集時,AWS 上的 Tanzu Kubernetes Grid 會自動建立負載平衡器。
Azure
部署管理叢集時,Azure 上的 Tanzu Kubernetes Grid 會自動建立負載平衡器。


設定中繼資料

本節適用於所有目標平台。

在選用的中繼資料 (Metadata) 區段中,選擇性地提供有關此管理叢集的說明性資訊。

您在此處指定的任何中繼資料,會套用至管理叢集及其管理的工作負載叢集,且可以使用您選擇的叢集管理工具來存取。

  • 位置 (Location):叢集執行所在的地理位置。
  • 說明 (Description):此管理叢集的說明。這項說明的長度上限為 63 個字元,且開頭和結尾都必須是字母。只能包含小寫字母、數字和連字號,且不能包含空格。
  • 標籤 (Labels):有助於使用者識別叢集的索引鍵/值配對,例如,release : betaenvironment : stagingenvironment : production。如需詳細資訊,請參閱 Kubernetes 說明文件中的標籤和選取器
    您可以按一下新增 (Add),將多個標籤套用至叢集。

新增叢集中繼資料

如果要部署到 vSphere,請按下一步 (Next),移至設定資源。如果要部署到 AWS 或 Azure,請按下一步 (Next),移至設定 Kubernetes 網路和 Proxy

設定 vSphere 資源

本節僅適用於 vSphere 部署。

vSphere
資源 (Resources) 區段中,選取 vSphere 資源以供管理叢集使用。
  1. 選取要放置管理叢集虛擬機器的虛擬機器資料夾。
  2. 選取管理叢集要使用的 vSphere 資料存放區。僅當您從組態檔來部署管理叢集時,才能指定虛擬機器的儲存區原則。
  3. 選取要放置管理叢集的叢集、主機或資源集區。

    附註:如果 vSphere 中尚不存在適當的資源,則無需結束 Tanzu Kubernetes Grid 安裝程式,請移至 vSphere 來建立它們。然後,按一下 [重新整理 (Refresh)] 按鈕,即可選取新資源。

    選取 vSphere 資源

  4. 下一步 (Next),設定 Kubernetes 網路和 Proxy。

AWS
本節不適用於 AWS 部署。
Azure
本節不適用於 Azure 部署。


設定 Kubernetes 網路和 Proxy

本節適用於所有目標平台,儘管您提供的某些資訊,將取決於您使用的提供者。

  1. Kubernetes 網路 (Kubernetes Network) 區段中,為 Kubernetes 服務設定網路,然後按下一步 (Next)

    • (僅限 vSphere)網路名稱 (Network Name) 下,選取一個 vSphere 網路,以作為 Kubernetes 服務網路。
    • 檢閱叢集服務 CIDR (Cluster Service CIDR)叢集網繭 CIDR (Cluster Pod CIDR) 範圍。如果建議的 CIDR 範圍 100.64.0.0/13100.96.0.0/11 無法使用,請更新叢集服務 CIDR (Cluster Service CIDR)叢集網繭 CIDR (Cluster Pod CIDR) 下的值。

    設定 Kubernetes 服務網路

  2. (選用) 若要將傳出 HTTP(S) 流量從管理叢集傳送至 Proxy (例如在網際網路受限的環境中),請切換啟用Proxy 設定 (Enable Proxy Settings),並按照以下指示,輸入您的 Proxy 資訊。Tanzu Kubernetes Grid 會將這些設定套用至 kubelet、containerd 和控制平面。

    您可以選擇將一個 Proxy 用於 HTTP 流量,將另一個 Proxy 用於 HTTPS 流量,或者將相同的 Proxy 同時用於 HTTP 和 HTTPS 流量。

    重要事項:部署叢集後,就無法變更 Proxy。

    1. 若要新增 HTTP Proxy 資訊,請執行下列動作:

      1. HTTP Proxy URL 下,輸入會處理 HTTP 要求的 Proxy 的 URL。URL 必須以 http:// 開頭。例如,http://myproxy.com:1234
      2. 如果 Proxy 需要驗證,請在 HTTP Proxy 使用者名稱 (HTTP Proxy Username)HTTP Proxy 密碼 (HTTP Proxy Password) 下,輸入用來連線至 HTTP Proxy 的使用者名稱和密碼。

        附註

        使用安裝程式介面來部署管理叢集時,不能在密碼中使用非英數字元。

    2. 若要新增 HTTPS Proxy 資訊,請執行下列動作:

      • 如果您要將相同的 URL 用於 HTTP 和 HTTPS 流量,請選擇將相同的組態用於 HTTPS Proxy (Use the same configuration for https proxy)
      • 如果您要對 HTTPS 流量使用不同的 URL,請執行下列操作:

        1. HTTPS Proxy URL 下,輸入會處理 HTTPS 要求的 Proxy 的 URL。URL 必須以 http:// 開頭。例如,http://myproxy.com:1234
        2. 如果 Proxy 需要驗證,請在 HTTPS Proxy 使用者名稱 (HTTPS Proxy Username)HTTPS Proxy 密碼 (HTTPS Proxy Password) 下,輸入用來連線至 HTTPS Proxy 的使用者名稱和密碼。

          附註

          使用安裝程式介面來部署管理叢集時,不能在密碼中使用非英數字元。

    3. 無 Proxy (No proxy) 下,輸入必須略過 HTTP(S) Proxy 的網路 CIDR 或主機名稱清單 (以逗號分隔)。如果管理叢集與您的基礎結構在相同的網路中執行,且位於同一 Proxy 後面,請將此項設定為基礎結構 CIDR 或 FQDN,以便管理叢集直接與基礎結構通訊。

      例如,noproxy.yourdomain.com,192.168.0.0/24

      vSphere
      無 Proxy (No proxy) 清單中必須包含:
      • vCenter 的 IP 位址或主機名稱。無法代理流向 vCenter 的流量。
      • 您在網路名稱 (Network Name) 下所選取的 vSphere 網路的 CIDR。vSphere 網路 CIDR 會包含控制平面端點的 IP 位址。如果您在控制平面端點 (Control Plane Endpoint) 下輸入 FQDN,請同時將 FQDN 和 vSphere 網路 CIDR 新增到無 Proxy (No proxy)。在內部,Tanzu Kubernetes Grid 會將 localhost127.0.0.1叢集網繭 CIDR (Cluster Pod CIDR)叢集服務 CIDR (Cluster Service CIDR) 的值、.svc.svc.cluster.local 附加到您在此欄位所輸入的清單中。
      AWS
      在內部,Tanzu Kubernetes Grid 會將 localhost127.0.0.1、您的 VPC CIDR、 叢集網繭 CIDR (Cluster Pod CIDR)叢集服務 CIDR (Cluster Service CIDR).svc.svc.cluster.local169.254.0.0/16 附加到您在此欄位所輸入的清單中。
      Azure
      在內部,Tanzu Kubernetes Grid 會將 localhost127.0.0.1、您的 VNet CIDR、 叢集網繭 CIDR (Cluster Pod CIDR)叢集服務 CIDR (Cluster Service CIDR).svc.svc.cluster.local169.254.0.0/16168.63.129.16 附加到您在此欄位所輸入的清單中。
      重要

      如果管理叢集虛擬機器需要與 Tanzu Kubernetes Grid 環境中的外部服務和基礎結構端點通訊,請確定您在上面所設定的 Proxy 可以連線到這些端點,否則,請將它們新增到無 Proxy (No proxy)。根據您的環境組態,這可能包括但不限於 OIDC 或 LDAP 伺服器、Harbor,以及在 vSphere 情況下的 VMware NSX 和 NSX Advanced Load Balancer。


設定身分識別管理

本節適用於所有目標平台。如需 Tanzu Kubernetes Grid 如何實作身分識別管理的相關資訊,請參閱關於身分識別和存取管理

  1. 身分識別管理 (Identity Management) 區段中,選擇性地選取啟用身分識別管理設定 (Activate Identity Management Settings)

    設定外部身分識別提供者

    您可以針對概念驗證部署停用身分識別管理,但強烈建議您在生產部署中實作身分識別管理。如果停用身分識別管理,之後可以再次啟用。如需如何重新啟用身分識別管理的指示,請參閱設定身分識別管理中的在現有部署中啟用和設定身分識別管理

  2. 如果啟用身分識別管理,請選取 OIDCLDAPS

    選取下方的 OIDC 或 LDAPS 索引標籤,以查看組態資訊。

    OIDC
    提供 OIDC 提供者帳戶的詳細資料,例如 Okta。
    • 簽發者 URL (Issuer URL):OIDC 伺服器的 IP 或 DNS 位址。
    • 用戶端識別碼 (Client ID):您從 OIDC 提供者取得的 client_id 值。例如,如果您的提供者是 Okta,請登入 Okta,建立一個 Web 應用程式,然後選取用戶端認證 (Client Credentials) 選項,以取得 client_idsecret
    • 用戶端密碼 (Client Secret):您從 OIDC 提供者取得的 secret 值。
    • 範圍 (Scopes):Token 回應中所要求的其他範圍清單 (以逗號分隔)。例如,openid,groups,email
    • 使用者名稱宣告 (Username Claim):使用者名稱宣告的名稱。這用來在 JSON Web Token (JWT) 宣告中設定使用者的使用者名稱。視您的提供者而定,輸入宣告,例如 user_nameemailcode
    • 群組宣告 (Groups Claim):群組宣告的名稱。這用來在 JWT 宣告中設定使用者的群組。例如,groups

    設定外部身分識別提供者

    LDAPS
    提供您公司的 LDAPS 伺服器的詳細資料。 LDAPS 端點 (LDAPS Endpoint) 以外的所有設定都是選用的。
    • LDAPS 端點 (LDAPS Endpoint):LDAPS 伺服器的 IP 或 DNS 位址。提供 LDAP 伺服器的位址和連接埠,格式為 host:port
    • 繫結 DN (Bind DN):應用程式服務帳戶的 DN。連接器會使用這些認證來搜尋使用者和群組。如果 LDAP 伺服器會提供匿名驗證的存取權,則不需要設定此項。
    • 繫結密碼 (Bind Password):應用程式服務帳戶的密碼 (如果設定了繫結 DN (Bind DN))。

    提供使用者搜尋屬性。

    • 基本 DN (Base DN):LDAP 搜尋的起始點。例如,OU=Users,OU=domain,DC=io
    • 篩選器 (Filter):供 LDAP 搜尋使用的選用篩選器。
    • 使用者名稱 (Username):包含使用者識別碼的 LDAP 屬性。例如,uid, sAMAccountName

    提供群組搜尋屬性。

    • 基本 DN (Base DN):LDAP 搜尋的起始點。例如,OU=Groups,OU=domain,DC=io
    • 篩選器 (Filter):供 LDAP 搜尋使用的選用篩選器。
    • 名稱屬性 (Name Attribute):保存群組名稱的 LDAP 屬性。例如,cn
    • 使用者屬性 (User Attribute):使用者記錄的屬性,以作為群組記錄的成員資格屬性值。例如,distinguishedName, dn
    • 群組屬性 (Group Attribute):保存使用者/成員資訊的群組記錄的屬性。例如,member

    將 LDAPS 伺服器 CA 憑證的內容貼到根 CA (Root CA) 文字方塊中。

    設定外部身分識別提供者

    (選用) 驗證 LDAP 設定。

    1. 按一下驗證 LDAP 組態 (Verify LDAP Configuration) 選項
    2. 輸入使用者名稱和群組名稱。

      附註

      在 Tanzu Kubernetes Grid v1.4.x 及更新版本中,會忽略這些欄位,對於使用者名稱,會還原為 cn,對於群組名稱,會還原為 ou。如需此已知問題的更新,請參閱 VMware Tanzu Kubernetes Grid 1.5 版本說明

    3. 按一下啟動 (Start)

      完成驗證後,若有看到任何失敗,您必須在後續步驟中仔細檢查這些失敗。

      附註

      LDAP 主機 (而不是管理叢集節點) 會執行這項檢查。因此,即使這項驗證失敗,LDAP 組態仍可能正常工作。

  3. 下一步 (Next),移至選取基礎作業系統映像

選取基礎作業系統映像

作業系統映像 (OS Image) 區段中,使用下拉式功能表,選取要用來部署 Tanzu Kubernetes Grid 虛擬機器的作業系統和 Kubernetes 版本映像範本,然後按下一步 (Next)

如何產生基礎作業系統映像選項

作業系統映像 (OS Image) 下拉式功能表包含符合以下所有準則的作業系統映像:

  • 此映像在您的 IaaS 中是可用的。
    • 在 vSphere 上,必須依照將基礎映像範本匯入到 vSphere 中所述,來匯入映像。您可以立即匯入映像,而無需結束安裝程式介面。匯入後,使用 [重新整理 (Refresh)] 按鈕,使其出現在下拉式功能表中。
    • 在 Azure 上,您必須接受授權,如準備將管理叢集部署到 Microsoft Azure 中的接受基礎映像授權所述。
  • 作業系統映像會列在管理叢集執行所在 Kubernetes 版本的 Tanzu Kubernetes 版本 (TKr) 的用料表清單 (BoM) 檔案中。
    • Tanzu Kubernetes Grid v2.1.1 管理叢集是在 Kubernetes v1.24.10 上執行。
    • 若要使用自訂映像,請修改 TKr 的 BoM 檔案,以列出該映像,如建置機器映像中所述。
    • vSphere、AWS 和 Azure 映像分別列在 BoM 的 ovaamiazure 區塊中。
  • IaaS 中的映像名稱與其在 TKr BoM 中的識別碼相符:
    • vSphere、AWS 和 Azure 映像分別以其 versionidsku 欄位值作為識別。

完成部署

本節適用於所有目標平台。

  1. CEIP 參與 (CEIP Participation) 區段中,可以選擇性地取消選取核取方塊,以退出 VMware 客戶經驗改進計劃,然後按下一步 (Next)

    您也可以在部署管理叢集後,加入或退出該計劃。如需 CEIP 的相關資訊,請參閱管理 CEIP 參與https://www.vmware.com/solutions/trustvmware/ceip.html

  2. 按一下檢閱組態 (Review Configuration),查看已設定的管理叢集的詳細資料。如果要回到安裝程式精靈以修改組態,請按一下編輯組態 (Edit Configuration)

    按一下檢閱組態 (Review Configuration) 時,安裝程式會在叢集組態檔中填入您在介面中指定的設定,這個檔案位於 ~/.config/tanzu/tkg/clusterconfigs 子目錄。您可以選擇性地按一下匯出設定 (Export Configuration),匯出此組態檔的複本。

  3. 按一下部署管理叢集 (Deploy Management Cluster)

    部署管理叢集可能需要幾分鐘。第一次執行 tanzu mc create 所需的時間久於後續的執行,因為它必須將所需的 Docker 映像提取到啟動機器上的映像存放區。後續的執行不需要此步驟,因此速度更快。您可以在安裝程式介面或執行 tanzu mc create --ui 的終端機中,追蹤管理叢集的部署進度。如果在本機作業完成之前,執行 tanzu mc create 的機器關機或重新啟動,則部署將失敗。在部署完成之前,如果您無意中關閉了正在執行部署的瀏覽器或瀏覽器索引標籤,部署會在終端機中繼續進行。

    監控管理叢集部署

  4. (選用) 在同等 CLI 命令 (CLI Command Equivalent) 下,按一下複製 (Copy) 按鈕,複製 CLI 命令來用於您指定的組態。此 CLI 命令包含安裝程式所填入的組態檔的路徑。

  5. (僅限 vSphere) 將管理叢集部署到 vSphere 後,您必須將其控制平面節點的 IP 位址設定為靜態位址,如 為控制平面設定 DHCP 保留 (僅限 vSphere)中所述。

後續步驟

  • 儲存組態檔:安裝程式會將管理叢集的組態儲存到 ~/.config/tanzu/tkg/clusterconfigs,並產生格式為 UNIQUE-ID.yaml 的檔案名稱。此組態檔具有一個平面結構,其中設定了大寫帶底線的變數,例如 CLUSTER_NAME。部署完成後,您可以選擇性地將組態檔重新命名為易記的名稱,並儲存在其他位置以供日後使用。安裝程式還會針對管理叢集的 Cluster 物件產生 Kubernetes 樣式且以類別為基礎的物件規格,該規格會儲存在與管理叢集同名的檔案中。這個以類別為基礎的物件規格僅供參考。尚不支援從以類別為基礎的物件規格來部署管理叢集。如需 TKG 2.x 中的叢集類型的詳細資訊。,請參閱《關於 Tanzu Kubernetes Grid》中的工作負載叢集
  • 設定身分識別管理:如果已針對管理叢集啟用 OIDC 或 LDAP 身分識別管理,則必須執行完成身分識別管理組態中所述的部署後步驟,來啟用存取權。
  • 向 Tanzu Mission Control 登錄管理叢集:如果要向 Tanzu Mission Control 登錄管理叢集,請參閱向 Tanzu Mission Control 登錄管理叢集
  • 部署工作負載叢集:建立管理叢集後,您可以部署工作負載叢集,如〈使用 Tanzu CLI 來建立和管理 TKG 2.1 工作負載叢集〉中的建立工作負載叢集中所述。
  • 部署另一個管理叢集:若要在任何或所有的 vSphere、Azure 和 AWS 上部署多個管理叢集,請參閱管理您的管理叢集。本主題還會提供資訊,說明如何將現有管理叢集新增到 CLI 執行個體、取得認證、調整及刪除管理叢集、新增命名空間,以及如何加入或退出 CEIP。

如需部署管理叢集期間所發生的情況,以及如何將 kubectl 連線至管理叢集等相關資訊,請參閱檢查並登錄新部署的獨立管理叢集

check-circle-line exclamation-circle-line close-line
Scroll to top icon