Данный раздел описывает схему размещения кластера в инфраструктуре Azure и связанные с ней параметры.
Standard
Standard — поддерживаемая схема размещения:
- Для кластера создаётся отдельная ресурсная группа (resource group).
- Каждому инстансу по умолчанию выделяется внешний IP-адрес (используется только для выхода в интернет).
- Для SNAT используется до 64 000 портов на один IP-адрес.
- Поддерживается NAT Gateway с возможностью тарификации — позволяет использовать статические публичные IP-адреса для SNAT.
- Публичные IP могут быть назначены как на master-узлы, так и на узлы, созданные через Terraform.
- При отсутствии внешнего IP у master-узла требуется bastion-хост и VNet-пиринг между кластерами.
- Поддерживается пиринг между VNet кластера и другими VNet.
Пример конфигурации размещения:
apiVersion: deckhouse.io/v1
kind: AzureClusterConfiguration
layout: Standard
sshPublicKey: "<SSH_PUBLIC_KEY>" # Обязательный параметр.
vNetCIDR: 10.50.0.0/16 # Обязательный параметр.
subnetCIDR: 10.50.0.0/24 # Обязательный параметр.
standard:
natGatewayPublicIpCount: 1 # Необязательный параметр (по умолчанию 0).
masterNodeGroup:
replicas: 1
zones: ["1"] # Необязательный параметр (по умолчанию ["1"]).
instanceClass:
machineSize: Standard_F4 # Обязательный параметр.
diskSizeGb: 32
urn: Canonical:UbuntuServer:18.04-LTS:18.04.202010140 # Обязательный параметр.
enableExternalIP: false # Необязательный параметр (по умолчанию true).
provider:
subscriptionId: "<SUBSCRIPTION_ID>" # Обязательный параметр.
clientId: "<CLIENT_ID>" # Обязательный параметр.
clientSecret: "<CLIENT_SECRET>" # Обязательный параметр.
tenantId: "<TENANT_ID>" # Обязательный параметр.
location: "westeurope" # Обязательный параметр.
peeredVNets: # Необязательный параметр.
- resourceGroupName: kube-bastion # Обязательный параметр.
vnetName: kube-bastion-vnet # Обязательный параметр.