Azure Kubernetes Service (AKS) Cluster using the native Azure Provider
Using the native Azure provider to create AKS cluster with python
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set azure-py-akscd pulumi-examples/azure-py-aksThis example deploys an AKS cluster, creates an Azure Active AD application, creates a Service Principal and sets credentials to manage access to the cluster.
Deploying the App#
To deploy your infrastructure, follow the below steps.
Prerequisites#
Steps#
After cloning this repo, from this working directory, run these commands:
-
Create a new stack, which is an isolated deployment target for this example:
Terminal window pulumi stack init -
Set the Azure region location to use:
$ pulumi config set azure-native:location westus2 -
Initiate pulumi to stand up the cluster
Terminal window pulumi upNote: Due to a propagation delay in Azure AD, the Service Principal created for the cluster may not be available the moment the cluster is provisioned. If you get a “Service Principal not found” error, run
pulumi upagain and it should complete successfully. -
After 3-4 minutes, your cluster will be ready, and the kubeconfig YAML you’ll use to connect to the cluster will be available as an output. You can save this kubeconfig to a file like so:
Terminal window pulumi stack output kubeconfig --show-secrets > kubeconfig.yamlOnce you have this file in hand, you can interact with your new cluster as usual via
kubectl:Terminal window KUBECONFIG=./kubeconfig.yaml kubectl get nodes -
From there, feel free to experiment. Simply making edits and running
pulumi upwill incrementally update your stack. -
Once you’ve finished experimenting, tear down your stack’s resources by destroying and removing it:
Terminal window pulumi destroy --yespulumi stack rm --yes