Эти возможности доступны только в Enterprise Edition.

OpenStackInstanceClass

Scope: Cluster

Параметры группы OpenStack servers, которые будeт использовать machine-controller-manager (модуль node-manager).

На этот ресурс ссылается ресурс CloudInstanceClass модуля node-manager.

  • specобъект

    Обязательный параметр

    • additionalNetworksмассив строк

      Список сетей, которые будут подключены к инстансу.

      По умолчанию: значение из OpenStackCloudDiscoveryData.

      Пример:

      additionalNetworks:
      - BGP-network-VLAN-3894
      - External-VLAN-3699
      
    • additionalSecurityGroupsмассив строк

      Дополнительный список security groups, которые будут добавлены на заказанные инстансы соответствующего OpenStackInstanceClass в дополнение к указанным в конфигурации cloud провайдера. Используется для задания правил firewall по отношению к заказываемым инстансам.

      SecurityGroups могут не поддерживаться облачным провайдером.

      Пример:

      additionalSecurityGroups:
      - security-group-1
      - security-group-2
      
    • additionalTagsобъект

      Дополнительные теги, которые будут присвоены созданным инстансам в дополнение к указанным в конфигурации cloud-провайдера.

      Пример:

      project: cms-production
      severity: critical
      
    • flavorNameстрока

      Обязательный параметр

      Тип заказываемых виртуальных машин.

      Получить список всех доступных flavor: openstack flavor list. Для всех не-мастер нод желательно использовать flavor’ы с локальным диском. Если в облаке поддерживаются локальные диски, то они обычно быстрее и дешевле. Недостатком использования таких flavor’ов является невозможность миграции нод между гипервизорами. Пример создания flavor: openstack flavor create c4m8d50 --ram 8192 --disk 50 --vcpus 4

      Пример:

      flavorName: m1.medium
      
    • imageNameстрока

      Необязательный параметр.

      Имя образа виртуальной машины, который будет использоваться для инстанса.

      Получить список всех доступных образов: openstack image list.

      Внимание! Сейчас поддерживается и тестируется только Ubuntu 18.04, Ubuntu 20.04, Centos 7.

      По умолчанию: значение либо из OpenStackCloudDiscoveryData, либо из настроек instances.imageName.

      Пример:

      imageName: ubuntu-18-04-cloud-amd64
      
    • mainNetworkстрока

      Необязательный параметр.

      Путь до сети, которая будет подключена к виртуальной машине, как основная (шлюз по умолчанию).

      По умолчанию: значение из OpenStackCloudDiscoveryData.

      Пример:

      mainNetwork: k8s-msk-178
      
    • rootDiskSizeцелочисленный

      Необязательный параметр.

      Размер root-диска. Значение указывается в гигабайтах.

      Если параметр не указан, то для инстанса используется локальный диск с размером указанным в flavor. Если параметр присутствует, то инстанс будет использовать заказанный OpenStack Cinder volume (с указанным размером и стандартным для кластера типом) как root-диск.

      Если в cloud-провайдере существует несколько типов дисков, то для выбора конкретного типа диска виртуальной машины у используемого образа можно установить тип диска по умолчанию. Для этого необходимо в метаданных образа указать имя определённого типа диска. Может понадобиться создать свой собственный image в OpenStack, как это сделать описано в разделе “Загрузка image в OpenStack”

      openstack volume type list
      openstack image set ubuntu-18-04-cloud-amd64 --property cinder_img_volume_type=VOLUME_NAME
      

      Пример:

      rootDiskSize: 20
      

Параметры группы OpenStack servers, которые будeт использовать machine-controller-manager (модуль node-manager).

На этот ресурс ссылается ресурс CloudInstanceClass модуля node-manager.

  • specобъект

    Обязательный параметр

    • additionalNetworksмассив строк

      Список сетей, которые будут подключены к инстансу.

      По умолчанию: значение из OpenStackCloudDiscoveryData.

      Пример:

      additionalNetworks:
      - BGP-network-VLAN-3894
      - External-VLAN-3699
      
    • additionalSecurityGroupsмассив строк

      Дополнительный список security groups, которые будут добавлены на заказанные инстансы соответствующего OpenStackInstanceClass в дополнение к указанным в конфигурации cloud провайдера. Используется для задания правил firewall по отношению к заказываемым инстансам.

      SecurityGroups могут не поддерживаться облачным провайдером.

      Пример:

      additionalSecurityGroups:
      - security-group-1
      - security-group-2
      
    • additionalTagsобъект

      Дополнительные теги, которые будут присвоены созданным инстансам в дополнение к указанным в конфигурации cloud-провайдера.

      Пример:

      project: cms-production
      severity: critical
      
    • flavorNameстрока

      Обязательный параметр

      Тип заказываемых виртуальных машин.

      Получить список всех доступных flavor: openstack flavor list. Для всех не-мастер нод желательно использовать flavor’ы с локальным диском. Если в облаке поддерживаются локальные диски, то они обычно быстрее и дешевле. Недостатком использования таких flavor’ов является невозможность миграции нод между гипервизорами. Пример создания flavor: openstack flavor create c4m8d50 --ram 8192 --disk 50 --vcpus 4

      Пример:

      flavorName: m1.medium
      
    • imageNameстрока

      Необязательный параметр.

      Имя образа виртуальной машины, который будет использоваться для инстанса.

      Получить список всех доступных образов: openstack image list.

      Внимание! Сейчас поддерживается и тестируется только Ubuntu 18.04, Ubuntu 20.04, Centos 7.

      По умолчанию: значение либо из OpenStackCloudDiscoveryData, либо из настроек instances.imageName.

      Пример:

      imageName: ubuntu-18-04-cloud-amd64
      
    • mainNetworkстрока

      Необязательный параметр.

      Путь до сети, которая будет подключена к виртуальной машине, как основная (шлюз по умолчанию).

      По умолчанию: значение из OpenStackCloudDiscoveryData.

      Пример:

      mainNetwork: k8s-msk-178
      
    • rootDiskSizeцелочисленный

      Необязательный параметр.

      Размер root-диска. Значение указывается в гигабайтах.

      Если параметр не указан, то для инстанса используется локальный диск с размером указанным в flavor. Если параметр присутствует, то инстанс будет использовать заказанный OpenStack Cinder volume (с указанным размером и стандартным для кластера типом) как root-диск.

      Если в cloud-провайдере существует несколько типов дисков, то для выбора конкретного типа диска виртуальной машины у используемого образа можно установить тип диска по умолчанию. Для этого необходимо в метаданных образа указать имя определённого типа диска. Может понадобиться создать свой собственный image в OpenStack, как это сделать описано в разделе “Загрузка image в OpenStack”

      openstack volume type list
      openstack image set ubuntu-18-04-cloud-amd64 --property cinder_img_volume_type=VOLUME_NAME
      

      Пример:

      rootDiskSize: 20