Skip to content

Commit

Permalink
Add Azure template docs
Browse files Browse the repository at this point in the history
  • Loading branch information
a13x5 committed Sep 2, 2024
1 parent 27f4da0 commit 10a3c4f
Show file tree
Hide file tree
Showing 3 changed files with 97 additions and 0 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ Optionally, the following CLIs may be helpful:

Follow the instruction to configure providers. Currently supported providers:
* [AWS](docs/aws/main.md#prepare-the-aws-infra-provider)
* [Azure](docs/azure/main.md)

### Installation

Expand Down
61 changes: 61 additions & 0 deletions docs/azure/machine-parameters.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Azure machine parameters

## SSH

SSH public key can be passed to `.spec.config.sshPublicKey` (in case of hosted CP)
parameter or `.spec.config.controlPlane.sshPublicKey` and
`.spec.config.worker.sshPublicKey` parameters (in case of standalone CP)
of the `Deployment` object.

It should be encoded in **base64** format.

## VM size

Azure supports various VM sizes which can be retrieved with the following
command:

```bash
az vm list-sizes --location "<location>" -o table
```

Then desired VM size could be passed to the:

- `.spec.config.vmSize` - for hosted CP deployment.
- `.spec.config.controlPlane.vmSize` - for control plane nodes in the standalone
deployment.
- `.spec.config.worker.vmSize` - for worker nodes in the standalone deployment.

*Example: Standard_A4_v2*

## Root Volume size

Root volume size of the VM (in GB) can be changed through the following
parameters:

- `.spec.config.rootVolumeSize` - for hosted CP deployment.
- `.spec.config.controlPlane.rootVolumeSize` - for control plane nodes in the
standalone deployment.
- `.spec.config.worker.rootVolumeSize` - for worker nodes in the standalone
deployment.

*Default value: 30*

Please note that this value can't be less than size of the root volume which
defined in your image.

## VM Image

You can define the image which will be used for you machine using the following
parameters:

- `.spec.config.image` - for hosted CP deployment.
- `.spec.config.controlPlane.image` - for control plane nodes in the standalone
deployment.
- `.spec.config.worker.image` - for worker nodes in the standalone deployment.

There are multiple self-excluding ways to define the image source (e.g. Azure
Compute Gallery, Azure Marketplace, etc.).

Detailed information regarding image can be found in [CAPZ documentation](https://capz.sigs.k8s.io/self-managed/custom-images)

By default, the latest official CAPZ Ubuntu based image is used.
35 changes: 35 additions & 0 deletions docs/azure/main.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Azure provider

## Prerequisites

1. `kubectl` CLI installed locally.
2. `az` CLI utility installed (part of `azure-cli`).
3. Azure account with the required resource providers registered.

## Resource providers registration

The following resource providers should be registered in your Azure account:

- `Microsoft.Compute`
- `Microsoft.Network`
- `Microsoft.ContainerService`
- `Microsoft.ManagedIdentity`
- `Microsoft.Authorization`

You can follow the [official documentation guide](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-providers-and-types)
to register the providers.

## Azure cluster parameters

Follow the [Azure cluster parameters](cluster-parameters.md) guide to setup
mandatory parameters for Azure clusters.

## Azure machine parameters

Follow the [Azure machine parameters](machine-parameters.md) guide if you want to
setup/modify the default machine parameters.

## Azure hosted control plane

Follow the [Hosted control plane](hosted-control-plane.md) guide to deploy
hosted control plane cluster on Azure.

0 comments on commit 10a3c4f

Please sign in to comment.