將 Azure Stack HCI 的 Azure Kubernetes Service 連接到 Microsoft Azure Arc 以對應 Kubernetes

已完成

隨著技術環境的變化,Contoso CIO 正在尋找將其營運模型現代化的機會。 目前是缺乏一致性,強迫 IT 人員處理多個不同的管理和監視產品。 這種分散的方法會變得更有問題,因為 Contoso 正在準備將部分工作負載遷移至 Azure 並容器化許多其他工作負載。 您決定要使用 Azure Arc 來評估這些挑戰的範圍。

什麼是 Azure Arc?

Azure Arc 是使用一套技術所建構,可讓您用來將複雜、分散式、混合式環境的管理工作進行簡化。 其提供可調整且一致的集中式多雲端及內部部署治理、管理與監視平台。

從架構的觀點來看,Azure Arc 是以雲端為基礎的解決方案,依賴客戶,例如: Contoso ,所部署至其內部部署伺服器的代理程式。 具有本機安裝代理程式的每個內部部署資源都會以 Azure 資源的形式呈現。

代理程式和以 Azure 為基礎的資源組合,可讓您集中監視和管理。 雲端資源的狀態會反映內部部署伺服器的狀態,以允許以 Azure 為基礎的監視。 若要管理在內部部署伺服器上執行的工作負載,您可以使用 Microsoft Azure 原則和 Azure VM 擴充功能等技術。

Azure Arc 已啟用 Kubernetes 和 Azure Stack HCI 上的 AKS 的優點為何?

Azure Arc 可整合非 Azure 資源與 Azure,協助 Contoso 之類的公司在內部部署和雲端資源之間提供一致的系統管理模型。 同時,藉由將您的資源保留在內部部署環境,您可以在轉換到新的操作模型時,繼續使用現有的管理方法。

許多 Azure Arc 優點是與資源類型無關的,因為這些優點是透過 Azure Resource Manager 的功能加以彰顯。 這些優點包括:

  • 能夠使用 Azure 管理群組、訂用帳戶、資源群組和標記來組織所有組織資源。
  • 多個雲端與內部部署之間的單一且完整組織資產詳細目錄。
  • 使用 Azure 入口網站、Microsoft Azure CLI、Azure PowerShell 和 Azure REST API,合併顯示 Azure 和啟用 Azure Arc 的資源。
  • 與 Microsoft Azure 監視器整合,以進行橫跨內部部署資料中心、Azure 和其他協力廠商雲端的全方位雲端式監視。

Azure Arc 啟用的 Kubernetes 和 Azure Stack HCI 上的 AKS 也有特定的優點,例如:

  • 使用 Azure 原則來強制執行執行時間原則,以 Kubernetes 和集中報告原則合規性,這可讓您在 Kubernetes 叢集中強制執行 HTTPS 輸入,並確保 pod 只在安全的埠上接聽。

畫面顯示在 Azure 入口網站中顯示 Kubernetes - Azure Arc 資源的原則分頁。

  • 針支援使用 GitOps 來自動更新叢集設定。 GitOps 是自動部署 Git 存放庫中程式碼的做法。 在本案例中,該程式碼會描述 Kubernetes 設定所需的YAML為基礎的預期狀態。 您可選擇使用 Azure 原則來實施特定的 GitOps 為基礎的設定,這也會提供對應原則合規性的集中式報告。

畫面顯示會在 Azure 入口網站中顯示 Kubernetes - Azure Arc 的分頁。

將 Azure Stack HCI 上的 AKS 叢集連接到 Azure Arc 對應 Kubernetes

在 Azure Stack HCI 叢集內, Azure Arc 代理程式已經包含為叢集節點作業系統的一部分。 若要啟用該代理程式,您可向 Azure Arc 註冊 Azure Stack HCI 叢集,如此會自動啟用 Azure 監視、支援及計費。

針對在 Azure Stack HCI 上的 AKS 所裝載的 Kubernetes 叢集,連接至 Azure 需要將容器化代理程式部署到指定的叢集命名空間 (Azure-arc)。 代理程式會負責維護與 Azure 的連線、收集 Azure Arc 記錄與計量,以及處理設定要求。

注意

若要讓上線成功,Azure Stack HCI 叢集上的 AKS 必須至少包含一個在 Linux 工作節點集區內可運作的背景工作節點。

畫面描述 Windows Admin Center 中 [創建 Kubernetes 叢集精靈] 的新增節點集區窗格步驟。

若要簡化上架程式,請使用 Windows Admin Center。 如果您遵循本課程模組先前單元中所述的叢集建立程式,則會自動進行這類上線。 或者,您可以使用 Azure CLI 或 PowerShell 來編寫此程式的腳本。

如果您選擇將 Azure Stack HCI 叢集上的 Kubernetes 叢集連線到 Azure Arc 的腳本方法,請從內部部署電腦執行下列步驟順序,該電腦具有與 Azure Stack HCI 叢集和 Azure 的連線能力:

  1. 使用已啟用 Azure Arc 的 Kubernetes CLI 擴充功能和 Azure Stack HCI PowerShell 模組上的 AKS,安裝目前版本的 Azure CLI 版本。
  2. 使用 Azure CLI 登入 Microsoft Entra ID 來存取您至少已擁有「參與者」角色,且您想要在其中註冊 Kubernetes 叢集的 Azure 訂用帳戶。
  3. 使用 Azure CLI 來註冊 Kubernetes 和 KubernetesConfiguration Azure Resource Manager 資源提供者。 您必須執行此步驟,才能執行已啟用 Azure Arc 的 Kubernetes。 使用 Azure CLI 只是指定訂用帳戶的一次性設定。
  4. 使用 Azure CLI 來建立資源群組,以在支援 Azure Arc 已啟用的 Kubernetes 的 Azure 區域中裝載已連線的叢集資源。
  5. 使用 Azure CLI,在您於上一個步驟中建立的資源群組中建立具有參與者角色的服務主體,並記錄其認證。
  6. 使用 Azure Stack HCI PowerShell 模組上的 AKS,將 Kubernetes 叢集連線到目標訂用帳戶中的 Azure Arc,並使用服務主體認證進行驗證。 此步驟會將用於 Kubernetes 的 Azure Arc 代理程式部署到 Azure Arc 命名空間。

知識檢查

1.

若要在 Contoso 中提升卓越的營運能力,您決定將 Azure Stack HCI 上的 Kubernetes 叢集連接至 Kubernetes 的 Azure Arc,以編寫程式碼。 您已建立新的訂用帳戶,並想要確保上線將會順利完成。 當您成功驗證並存取目標訂用帳戶之後,該怎麼辦?