Skip to content

Latest commit

 

History

History
102 lines (63 loc) · 2.51 KB

readme.md

File metadata and controls

102 lines (63 loc) · 2.51 KB

Terraform for å komme i gang med Azure Kubernetes Service

Opprett Service Principal i Azure

1 - Lag Storage Account via Terraform script

cd terraform-backend
az login
tf init
tf apply -input=false -auto-approve

2 - Lag Service Principal

az login --tenant <tenant_id>

az ad sp create-for-rbac --name aks_startup_sp

# This will produce an output similar to this:
# {
#   "appId": "6cd93b1e-14d2-417a-abae-6b7c23173b92",
#   "displayName": "aks_startup_app_services",
#   "name": "6cd93b1e-14d2-417a-abae-6b7c23173b92",
#   "password": "myverysecretsecret",
#   "tenant": "94ce5a37-6c1e-4cce-aaeb-3f20b96ab1af"
# }

3 - Lagre variabler i bash

ARM_CLIENT_ID=6cd93b1e-14d2-417a-abae-6b7c23173b92
ARM_CLIENT_SECRET=myverysecretsecret
ARM_SUBSCRIPTION_ID=22481158-8cb8-4597-be0c-4913204b4544
ARM_TENANT_ID=94ce5a37-6c1e-4cce-aaeb-3f20b96ab1af

4 - Legg til rolle for ressursen

az role assignment create --assignee $ARM_CLIENT_ID --role Owner

Kan også settes kun til Resource Group.

5 - Legg til rolle for Storage Account

az role assignment create \
    --role "Storage Blob Data Contributor" \
    --assignee $ARM_CLIENT_ID \
    --scope "/subscriptions/$ARM_SUBSCRIPTION_ID/resourceGroups/aks-startup-rg/providers/Microsoft.Storage/storageAccounts/aksstartupsttfstate"

Start utviklingsmiljø i container

  • Gå inn i aks-workspace og kjør vscode-remote-workspace-1.bat

Konfigurer ENV på lokal maskin

1 - Kjør scriptet: .env.create-config.bat Dette lager en katalog på utsiden av roten til dette repoet med navn aks-startup-config 2 - Oppdater verdiene i aks-startup-config.env med verdiene fra tidligere 3. Start aks-workspace med "aks-workspace/docker-compose.up.bat"

docker-compose.yml som starter utviklingsmiljøet bruker disse environment variablene til å koble Terraform til Azure tenanten

Kjør terraform mot Azure tenant

  1. Kjør Terraform kommandoer i container

Terraform er delt opp seperate kataloger slik at det er mulig å kjøre terraform direkte i hver sin katalog.

F.eks. i katalogen terraform-backend

az login --tenant <tenant_id>
tf init
terraform plan -input=false
tf apply -input=false -auto-approve

Start Azure Kubernetes Service (AKS)

Start AKS

Tips og triks

[https://kubernetes.io/docs/reference/kubectl/cheatsheet/]