在已啟用 Azure Arc 的 Kubernetes 叢集上,部署和管理來自 Azure Marketplace 的應用程式
Azure Marketplace 是一家線上商店,其中包含由領先業界的技術公司所建置的數千個 IT 軟體應用程式和服務。 在 Azure Marketplace 中,您可以尋找、試用、購買及部署建置新解決方案及管理雲端基礎結構所需的軟體和服務。 產品目錄包括適用於不同產業和技術領域的解決方案、免費試用,以及來自 Microsoft 合作夥伴的諮詢服務。
這些解決方案包括 Kubernetes 應用程式型容器供應項目。 這些供應項目包含可在已啟用 Azure Arc 的 Kubernetes 叢集上執行的應用程式,以叢集延伸模組表示。 從 Azure Marketplace 部署供應項目,會在已啟用 Arc 的 Kubernetes 叢集上建立新的延伸模組執行個體。
本文章說明如何:
- 探索支援已啟用 Azure Arc 的 Kubernetes 叢集的應用程式。
- 購買應用程式。
- 在您的叢集上部署應用程式。
- 監視使用量和計費資訊。
您可以使用 Azure CLI 或 Azure 入口網站來執行這些工作。
必要條件
若要部署應用程式,您必須具有已啟用 Azure Arc 的現有 Kubernetes 連線叢集,其中至少有一個由作業系統和架構類型 linux/amd64
組成的節點。 如果您尚未連線叢集,請使用我們的快速入門。 開始之前,請務必將您的代理程式升級至最新版本。
- 具有已啟用 Azure Arc 的現有 Kubernetes 連線叢集,其中至少有一個由作業系統和架構類型
linux/amd64
組成的節點。 如果部署 Flux (GitOps),您可以使用沒有 linux/amd64
節點的 ARM64 型叢集。
- 如果使用 Azure CLI 來檢閱、部署和管理 Azure Marketplace 應用程式:
- 最新版本的 Azure CLI。
- 最新版本的
k8s-extension
Azure CLI 延伸模組。 執行 az extension add --name k8s-extension
來安裝延伸模組。 如果已安裝 k8s-extension
延伸模組,請務必執行 az extension update --name k8s-extension
,將其更新至最新版本。
注意
此功能目前僅支援在下列區域中使用:
- 美國東部、美國東部 2、EastUS2 EUAP、美國西部、美國西部 2、美國中部、美國中西部、美國中南部、西歐、北歐、加拿大中部、東南亞、澳大利亞東部、印度中部、日本東部、南韓中部、英國南部、英國西部、德國中西部、法國中部、東亞、美國西部 3、挪威東部、南非北部、美國中北部、澳大利亞東南部、瑞士北部、日本西部、印度南部
探索支援已啟用 Azure Arc 的叢集的 Kubernetes 應用程式
若要從 Azure 入口網站內探索 Azure Marketplace 中的 Kubernetes 應用程式:
在 Azure 入口網站中,搜尋 [Marketplace]。 在結果的 [服務] 底下,選取 [Marketplace]。
從 [Marketplace] 中,您可以直接依名稱搜尋供應項目或發行者,也可以瀏覽所有供應項目。 若要尋找 Kubernetes 應用程式供應項目,請從左側功能表中的 [類別] 區段中選取 [容器]。
重要
[容器] 類別包括 Kubernetes 應用程式和獨立容器映像。 遵循這些步驟時,請務必只選取 Kubernetes 應用程式供應項目。 容器映像有不同的部署流程,而且通常無法在已啟用 Arc 的 Kubernetes 叢集上部署。
您將看到頁面上顯示的數個 Kubernetes 應用程式供應項目。 若要檢視所有 Kubernetes 應用程式供應項目,請選取 [查看更多]。
或者,您可以搜尋特定 publisherId
,以在 Azure Marketplace 中檢視該發行者的 Kubernetes 應用程式。 如需如何尋找發行者識別碼的詳細資料,請參閱本文的 Azure CLI 索引標籤。
一旦您找到想要部署的應用程式,請移至下一節。
您可以使用 Azure CLI 來取得延伸模組的清單,包括可在已啟用 Azure Arc 的連線叢集上部署的 Azure Marketplace 應用程式。 若要這樣做,請執行此命令,提供連線叢集的名稱和叢集所在的資源群組。
az k8s-extension extension-types list-by-cluster --cluster-type connectedClusters --cluster-name <clusterName> --resource-group <resourceGroupName>
此命令將會傳回一份清單,列出可在連線叢集上部署的延伸模組,類似於這裡所示的範例。
"id": "/subscriptions/{sub}/resourceGroups/{rg} /providers/Microsoft.Kubernetes/connectedClusters/{clustername} /providers/Microsoft.KubernetesConfiguration/extensiontypes/contoso",
"name": "contoso",
"type": "Microsoft.KubernetesConfiguration/extensionTypes",
"properties": {
"extensionType": "contoso",
"description": "Contoso extension",
"isSystemExtension": false,
"publisher": "contoso",
"isManagedIdentityRequired": false,
"supportedClusterTypes": [
"managedclusters",
"connectedclusters"
],
"supportedScopes": {
"defaultScope": "namespace",
"clusterScopeSettings": {
"allowMultipleInstances": false,
"defaultReleaseNamespace": null
}
},
"planInfo": {
"offerId": "contosoOffer",
"planId": "contosoPlan",
"publisherId": "contoso"
}
}
當您找到想要部署的應用程式時,請注意所收到回應的下列值:planId
、publisherId
offerID
和 extensionType
。 您需要這些值來接受應用程式的條款並部署應用程式。
部署 Kubernetes 應用程式
一旦識別出您想要部署的供應項目,請遵循下列步驟:
在 [方案 + 定價] 索引標籤中,檢閱選項。 如果有多個方案可用,請找出符合您需求的方案。 檢閱頁面上的條款以確定其是可接受的,然後選取 [建立]。
選取資源群組和您要部署應用程式的已啟用 Arc 的叢集。
完成部署精靈的所有頁面,以指定應用程式所需的所有設定選項。
完成時,請選取 [檢閱 + 建立],然後選取 [建立] 以部署供應項目。
接受條款與合約
部署 Kubernetes 應用程式之前,您必須先接受其條款與合約。 請務必仔細閱讀這些條款,以便您了解成本和任何其他需求。
若要檢視條款的詳細資料,請執行下列命令,提供 offerID
、planID
和 publisherID
的值:
az vm image terms show --offer <offerID> --plan <planId> --publisher <publisherId>
若要接受條款,請執行下列命令,針對 offerID
、planID
和 publisherID
使用相同的值。
az vm image terms accept --offer <offerID> --plan <planId> --publisher <publisherId>
部署應用程式
若要透過 Azure CLI 部署應用程式 (延伸模組),請遵循部署和管理已啟用 Azure Arc 的 Kubernetes 叢集延伸模組中概述的步驟。 範例命令看起來可能像是這樣:
az k8s-extension create --name <offerID> --extension-type <extensionType> --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters --plan-name <planId> --plan-product <offerID> --plan-publisher <publisherId>
檢查部署
從 Azure Marketplace 部署供應項目,會在已啟用 Arc 的 Kubernetes 叢集上建立新的延伸模組執行個體。 您可以確認延伸模組是否成功執行,來驗證部署是否成功。
透過使用下列命令,列出叢集上已執行或正在部署的延伸模組來驗證部署:
az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters
如果部署成功,provisioningState
為 Succeeded
。 如果 provisioningState
為 Creating
,部署仍在進行中。 請等候幾分鐘後再檢查一次。
如果部署失敗,請參閱針對 Kubernetes 應用程式供應項目部署失敗進行疑難排解。
若要從叢集檢視延伸模組執行個體,請執行下列命令:
az k8s-extension show --name <extension-name> --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters
您可以在 Azure 入口網站中監視所部署延伸模組的計費和使用量資訊。
在 Azure 入口網站中,瀏覽至您叢集的資源群組。
選取 [成本管理] > [成本分析]。 在 [產品] 底下,您可以看到所選方案的成本明細。
移除應用程式
您可以刪除叢集上的延伸模組執行個體,來刪除 Kubernetes 供應項目的已購買方案。
若要刪除 Azure 入口網站中的延伸模組執行個體,請選取叢集內的 [延伸模組]。 選取您要移除的應用程式,然後選取 [解除安裝]。
下列命令會從叢集刪除延伸模組:
az k8s-extension delete --name <extension-name> --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters
疑難排解
如需協助解決問題,請參閱針對 Kubernetes 應用程式供應項目部署失敗進行疑難排解。
下一步