Partilhar via


Extensão Bicep Kubernetes (Pré-visualização)

A extensão Kubernetes permite que você crie recursos do Kubernetes diretamente com o Bicep. O Bicep pode implantar qualquer coisa que possa ser implantada com o cliente de linha de comando do Kubernetes (kubectl) e um arquivo de manifesto do Kubernetes.

Nota

A extensão Kubernetes não é suportada atualmente para clusters privados:

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

Ativar a funcionalidade de pré-visualização

Este recurso de visualização pode ser ativado configurando o bicepconfig.json:

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

Importar extensão do Kubernetes

Para passar segredos com segurança para a implantação do Kubernetes, você deve invocar o código do Kubernetes com um módulo Bicep e passar o parâmetro como um segredo. Para importar a extensão do Kubernetes, use a instrução extension. Depois de importar a extensão, você pode refatorar o arquivo do módulo Bicep como de costume, como usando variáveis, parâmetros e saída. Por contrato, o manifesto do Kubernetes no YML não inclui nenhum suporte de programação.

O exemplo a seguir importa a extensão do Kubernetes:

@secure()
param kubeConfig string

extension kubernetes with {
  namespace: 'default'
  kubeConfig: kubeConfig
} as k8s

O exemplo a seguir mostra como passar kubeConfig o valor de um arquivo Bicep pai:

resource aks 'Microsoft.ContainerService/managedClusters@2024-08-01' existing = {
  name: 'demoAKSCluster'
}

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

O cluster AKS pode ser um novo recurso ou um recurso existente. O Import Kubernetes manifest comando do Visual Studio Code pode adicionar automaticamente o trecho de importação. Para obter detalhes, consulte Importar comando de manifesto do Kubernetes.

Importação de código do Visual Studio

No Visual Studio Code, você pode importar arquivos de manifesto do Kubernetes para criar arquivos de módulo Bicep. Para obter mais informações, consulte Visual Studio Code.

Próximos passos