When creating a resource group, you need to provide a location for that resource group. You may be wondering, "Why does a resource group need a location? And, if the resources can have different locations than the resource group, why does the resource group location matter at all?" The resource group stores metadata about the resources. Therefore, when you specify a location for the resource group, you are specifying where that metadata is stored. For compliance reasons, you may need to ensure that your data is stored in a particular region. https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-overview
Resource groups
section until a popup appears and click on the + Create
button.Review + create
.Create
.Storage accounts
section and click on the + Create
button in the popup once it appears:Review + create
:Create
:Go to resource
to open up your newly created storage account:Access keys
:Show keys
, and once the keys are visible, note down the storage account name and the value of the Key field of either key1 or key2. We're going to use them for the <STORAGE_ACCOUNT_NAME>
and <STORAGE_ACCOUNT_KEY>
placeholders later.Containers
in the Data storage section of the storage account:+ Container
button on the top to create a new container:<BLOB_STORAGE_CONTAINER_NAME>
placeholder. Then create the container by clicking the Create
button.+ Create a resource
.Azure Database for MySQL
and once found click on Create
.Make sure you select Flexible server
and then continue by clicking the Create
button.<MYSQL_USERNAME>
and <MYSQL_PASSWORD>
placeholders. Then click on Next: Networking
.Add 0.0.0.0 - 255.255.255.255
to allow access from all public IPs. This is necessary so the machines running our GitHub Actions can access this database. It will still require username, password as well as a SSL certificate to authenticate.Continue
and click on Review + create
.Create
button. Now we'll have to wait until the deployment is finished (this might take ~15 minutes).Go to resource
.<MYSQL_SERVER_NAME>
placeholder.Networking
in the left menu. Click on Download SSL Certificate
on the top. Make sure to note down the path to the certificate file which we'll use for the <PATH_TO_SSL_CERTIFICATE>
placeholder in a later step.Containers
> Kubernetes Service
.Region
for the AKS cluster, and leave the default value selected for Kubernetes version.Review + Create
.kubectl
client and register the orchestrator:<REGION>
, <RESOURCE_GROUP>
and <MYSQL_PASSWORD>
right at the beginning before executing the rest. If you're on Windows, also adjust the certificate path accordingly.