Skip to content

Azure Resource Manager (ARM) templates for deploying Azure infrastructure.

Notifications You must be signed in to change notification settings

UmmatiUmmati/Azure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Azure

[Release Status

Azure Resource Manager (ARM) templates for deploying Azure infrastructure.

Common

The common ARM template deploys:

  • Azure Key Vault
  • Azure Container Registry

Application

The application ARM template deploys:

  • Azure Key Vault
  • Azure Application Insights
  • Azure Log Analytics
  • Azure Kubernetes Service

Creating a new Deployment

When deploying to a new cluster, follow these steps:

  1. Run the following command to create a service principal and make note of the client ID and client secret:
az ad sp create-for-rbac --name="ummati-<Environment>" --role="Contributor" --scopes="/subscriptions/<Subscription ID>/resourceGroups/<Resource Group Name>" --years=999
  1. Comment out the following parameters in <Environment>.parameters.json:
kubernetes_servicePrincipalClientId
kubernetes_servicePrincipalClientSecret
  1. Run the ARM template deployment with the client ID and client secret from above.

  2. Run the following command to give Azure Kubernetes Service (AKS) access to Azure Container Registry (ACR):

az acr show --resource-group <Resource Group Name> --name <ACR Name> --query "id" --output tsv
az role assignment create --assignee <Client ID> --scope <ACR Resource ID> --role Reader
  1. Uncomment the following parameters in <Environment>.parameters.json to use Azure Key Vault to retrieve them for future deployments of the same resource.
kubernetes_servicePrincipalClientId
kubernetes_servicePrincipalClientSecret
  1. Deploy the Helm charts.

  2. Connect to Azure Kubernetes Service.

az aks get-credentials --resource-group <Resource Group Name> --name <AKS Name>
  1. Run this command to see what IP address the external services are running on.
kubectl get services --all-namespaces
  1. Update Cloudflare DNS entries to point to the new IP addresses.

Deleting a Deployment

  1. Delete the <Resource Group Name> resource group.
  2. Delete the Kubernetes-<Resource Group Name> resource group.
  3. Delete the Azure Active Directory application registration called ummati-<Environment>.

Upgrading Kubernetes

Get a list of the Kubernetes versions available:

az aks get-upgrades --resource-group <Resource Group Name> --name <Cluster Name> --output table

About

Azure Resource Manager (ARM) templates for deploying Azure infrastructure.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published