Estensione Kubernetes Bicep (anteprima)
L'estensione Kubernetes consente di creare risorse Kubernetes direttamente con Bicep. Bicep può distribuire qualsiasi elemento che possa essere distribuito con il client della riga di comando di Kubernetes (kubectl) e un file manifesto Kubernetes.
Nota
L'estensione Kubernetes non è attualmente supportata per i cluster privati:
resource AKS 'Microsoft.ContainerService/managedClusters@2024-02-01' = {
...
properties: {
apiServerAccessProfile: {
enablePrivateCluster: true
}
}
}
Questa funzionalità di anteprima può essere abilitata configurando il bicepconfig.json:
{
"experimentalFeaturesEnabled": {
"extensibility": true
}
}
Per passare in modo sicuro i segreti per la distribuzione di Kubernetes, è necessario richiamare il codice Kubernetes con un modulo Bicep e passare il parametro come segreto. Per importare l'estensione Kubernetes, usare l'istruzione import. Dopo aver importato l'estensione, è possibile effettuare il refactoring del file del modulo Bicep come di consueto, ad esempio usando variabili, parametri e output. Per contratto, il manifesto Kubernetes in YML non include alcun supporto per la programmabilità.
L'esempio seguente importa l'estensione Kubernetes:
@secure()
param kubeConfig string
import 'kubernetes@1.0.0' with {
namespace: 'default'
kubeConfig: kubeConfig
} as k8s
- namespace: specificare lo spazio dei nomi dell'estensione.
- KubeConfig: specificare un valore con codifica Base64 delle credenziali di amministratore del cluster Kubernetes.
L'esempio seguente illustra come passare un valore kubeConfig
da un file Bicep padre:
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
}
}
Il cluster del servizio Azure Kubernetes può essere una nuova risorsa o una risorsa esistente. Il comando Import Kubernetes manifest
da Visual Studio Code può aggiungere automaticamente il frammento di codice di importazione. Per informazioni dettagliate, vedere Importare il comando manifesto kubernetes.
Da Visual Studio Code è possibile importare file manifesto Kubernetes per creare file di modulo Bicep. Per altre informazioni, vedere Visual Studio Code.