Extensão do Kubernetes do Bicep (Versão prévia)
A extensão do 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 (kubectl) do Kubernetes e um arquivo de manifesto do Kubernetes.
Observação
No momento, não há suporte para a extensão do Kubernetes nos clusters privados:
resource AKS 'Microsoft.ContainerService/managedClusters@2024-02-01' = {
...
properties: {
apiServerAccessProfile: {
enablePrivateCluster: true
}
}
}
Habilitar a versão prévia do recurso
Essa versão prévia do recurso pode ser habilitada configurando o bicepconfig.json:
{
"experimentalFeaturesEnabled": {
"extensibility": true
}
}
Importar a extensão do Kubernetes
Para passar segredos com segurança para a implantação do Kubernetes, você deve invocar o código 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 de importação. Depois de importar a extensão, você pode refatorar o arquivo de módulo do Bicep como de costume, por exemplo, 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
import 'kubernetes@1.0.0' with {
namespace: 'default'
kubeConfig: kubeConfig
} as k8s
- namespace: especifique o namespace da extensão.
- KubeConfig: Especifique um valor codificado em base64 das credenciais de administrador de cluster do Kubernetes.
O exemplo a seguir mostra como passar o valor kubeConfig
de um arquivo Bicep pai:
resource aks 'Microsoft.ContainerService/managedClusters@2024-02-01' existing = {
name: 'demoAKSCluster'
}
module kubernetes './kubernetes.bicep' = {
name: 'buildbicep-deploy'
params: {
kubeConfig: aks.listClusterAdminCredential().kubeconfigs[0].value
}
}
O cluster do AKS pode ser um novo recurso ou um recurso existente. O comando Import Kubernetes manifest
do Visual Studio Code pode adicionar automaticamente o trecho de código de importação. Para obter detalhes, consulte Importar comando de manifesto do Kubernetes.
importação Visual Studio Code
Do Visual Studio Code, você pode importar arquivos de manifesto do Kubernetes para criar arquivos de módulo do Bicep. Para obter mais informações, confira Visual Studio Code.