Bicep 擴充性 Kubernetes 提供者 (預覽)

Kubernetes 提供者可讓您直接使用 Bicep 建立 Kubernetes 資源。 Bicep 可以部署可使用 Kubernetes 命令列用戶端 (kubectl)Kubernetes 資訊清單檔部署的任何專案。

注意

私人叢集目前不支援 Kubernetes 提供者:

resource AKS 'Microsoft.ContainerService/managedClusters@2023-01-02-preview' = {
 ...
 properties: {
  apiServerAccessProfile: {
    enablePrivateCluster: true
  }
 }
}

啟用預覽功能

您可以藉由設定 bicepconfig.json來啟用此預覽功能:

{
  "experimentalFeaturesEnabled": {
    "extensibility": true
  }
}

匯入 Kubernetes 提供者

若要安全地傳遞 Kubernetes 部署的秘密,您必須使用 Bicep 模組叫用 Kubernetes 程式碼,並將參數作為秘密傳遞。 若要匯入 Kubernetes 提供者,請使用匯入陳述式。 匯入提供者之後,您可以像往常一樣重構 Bicep 模組檔案,例如使用變數、參數和輸出。 依合約,YML 中的 Kubernetes 資訊清單不包含任何可程式性支援。

下列範例會匯入 Kubernetes 提供者:

@secure()
param kubeConfig string

import 'kubernetes@1.0.0' with {
  namespace: 'default'
  kubeConfig: kubeConfig
} as k8s

下列範例示範如何從父代 Bicep 檔案傳遞 kubeConfig 值:

resource aks 'Microsoft.ContainerService/managedClusters@2022-05-02-preview' existing = {
  name: 'demoAKSCluster'
}

module kubernetes './kubernetes.bicep' = {
  name: 'buildbicep-deploy'
  params: {
    kubeConfig: aks.listClusterAdminCredential().kubeconfigs[0].value
  }
}

AKS 叢集可以是新資源或現有資源。 Visual Studio Code 的 Import Kubernetes manifest 命令可以自動新增匯入程式碼片段。 如需詳細資訊,請參閱匯入 Kubernetes 資訊清單命令

Visual Studio Code 匯入

您可以從 Visual Studio Code 匯入 Kubernetes 資訊清單檔,以建立 Bicep 模組檔案。 如需詳細資訊,請參閱 Visual Studio Code

下一步