In dieser Übung werden wir einen Managed Kubernetes Cluster (AKS) in Azure deployen. Ziel der Übung ist es, dass wir einen funktionsfähigen AKS Cluster haben, auf den wir in den nächsten Übungen Workloads deployen können.
- Ein neues Pulumi Azure-Native Typescript Projekt mit Namen
lab7
erstellen. Bei Auswahl der Azure-RegionWestEurope
verwenden. - Einen neuen Stack
dev
hinzufügen.
- Definiert eine Resourcengruppe, deren Name aus Stack- und Projektname gebildet wird.
- Definiert einen AKS Cluster, siehe nachfolgenden Code.
- Macht die
agentPoolProfiles.count
undkubernetesVersion
konfigurierbar. - Verwendet die Funktion
listManagedClusterUserCredentials
, um die kubeConfig des erstellten Clusters abzurufen und exportiert diese als ein Secret.
const managedCluster = new ManagedCluster("managedCluster", {
agentPoolProfiles: [{
count: ???, // 1, aus config holen
name: "nodepool",
osType: OSType.Linux,
type: AgentPoolType.VirtualMachineScaleSets,
vmSize: VirtualMachineSizeTypes.Standard_D2s_v3,
mode: AgentPoolMode.System,
}],
kubernetesVersion: "???", // 1.22.15, aus config holen
dnsPrefix: stackName,
resourceGroupName: resourceGroup.name,
resourceName: "akscluster",
identity: {
type: ResourceIdentityType.SystemAssigned
}
});