6.2 KiB
zuul
Azure Compute Driver
Selecting the azure driver adds the following options to the providers
section of the
configuration.
providers.[azure]
An Azure provider's resources are partitioned into groups called pool, and within a pool, the node types which are to be made available are listed
Note
For documentation purposes the option names are prefixed
providers.[azure]
to disambiguate from other drivers, but
[azure]
is not required in the configuration (e.g. below
providers.[azure].pools
refers to the pools
key in the providers
section when the azure
driver is selected).
Example:
providers:
- name: azure-central-us
driver: azure
resource-group-location: centralus
location: centralus
resource-group: nodepool
auth-path: /Users/grhayes/.azure/nodepoolCreds.json
subnet-id: /subscriptions/<subscription-id>/resourceGroups/nodepool/providers/Microsoft.Network/virtualNetworks/NodePool/subnets/default
cloud-images:
- name: bionic
username: zuul
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAA...
image-reference:
sku: 18.04-LTS
publisher: Canonical
version: latest
offer: UbuntuServer
pools:
- name: main
max-servers: 10
labels:
- name: bionic
cloud-image: bionic
hardware-profile:
vm-size: Standard_D1_v2
tags:
department: R&D
purpose: CI/CD
name
A unique name for this provider configuration.
location
Name of the Azure region to interact with.
resource-group
Name of the Resource Group in which to place the Nodepool nodes.
resource-group-location
Name of the Azure region where the home Resource Group is or should be created.
auth-path
Path to the JSON file containing the service principal credentials.
Create with the Azure
CLI and the --sdk-auth
flag
subnet-id
Subnet to create VMs on
cloud-images
Each entry in this section must refer to an entry in the labels
section.
cloud-images:
- name: bionic
username: zuul
image-reference:
sku: 18.04-LTS
publisher: Canonical
version: latest
offer: UbuntuServer
- name: windows-server-2016
username: zuul
image-reference:
sku: 2016-Datacenter
publisher: MicrosoftWindowsServer
version: latest
offer: WindowsServer
Each entry is a dictionary with the following keys
name
Identifier to refer this cloud-image from labels
section. Since this
name appears elsewhere in the nodepool configuration file, you may want
to use your own descriptive name here.
username
The username that a consumer should use when connecting to the node.
key
The SSH public key that should be installed on the node.
image-reference
sku
Image SKU
publisher
Image Publisher
offer
Image offers
version
Image version
pools
A pool defines a group of resources from an Azure provider. Each pool has a maximum number of nodes which can be launched from it, along with a number of cloud-related attributes used when launching nodes.
name
A unique name within the provider for this pool of resources.
labels
Each entry in a pool's labels section indicates that the corresponding label is available for use in this pool. When creating nodes for a label, the flavor-related attributes in that label's section will be used.
labels:
- name: bionic
cloud-image: bionic
hardware-profile:
vm-size: Standard_D1_v2
Each entry is a dictionary with the following keys
name
Identifier to refer this label.
cloud-image
Refers to the name of an externally managed image in the cloud that already exists on the provider. The value of
cloud-image
should match thename
of a previously configured entry from thecloud-images
section of the provider.hardware-profile
vm-size
VM Size of the VMs to use in Azure. See the VM size list on azure.microsoft.com for the list of sizes availabile in each region.