This feature is available in Enterprise Edition only.

OpenStackInstanceClass

Scope: Cluster

Parameters of a group of OpenStack servers used by machine-controller-manager (the node-manager module).

The CloudInstanceClass resource of the node-manager module refers to this resource.

  • specobject

    Required value

    • additionalNetworksarray of strings

      Paths to networks that VirtualMachines’ secondary NICs will connect to.

      By default: the value from OpenStackCloudDiscoveryData is used.

      Example:

      additionalNetworks:
      - BGP-network-VLAN-3894
      - External-VLAN-3699
      
    • additionalSecurityGroupsarray of strings

      Security groups that will be applied to VM’s network ports in addition to security groups set in a cloud provider configuration.

      They allow you to set firewall rules for provisioned instances.

      The SecurityGroups may not be supported by the cloud provider.

      Example:

      additionalSecurityGroups:
      - security-group-1
      - security-group-2
      
    • additionalTagsobject

      The additional tags to attach to the instances created (in addition to those specified in the cloud provider configuration).

      Example:

      project: cms-production
      severity: critical
      
    • flavorNamestring

      Required value

      Flavor of OpenStack servers.

      Get a list of all available flavors: openstack flavor list. For all non-master nodes it is advisable to use flavor’s with a local disk. If cloud provider supports local disks they are usually faster and cheaper. The disadvantage of using such flavors is the inability to migrate nodes between hypervisors. Flavor create example: openstack flavor create c4m8d50 --ram 8192 --disk 50 --vcpus 4

      Example:

      flavorName: m1.medium
      
    • imageNamestring

      Not required value.

      Image to use while provisioning OpenStack servers.

      Use this command to get a list of available images: openstack image list.

      Caution! Currently, only Ubuntu 18.04, Ubuntu 20.04, Centos 7 are supported and tested to work.

      By default: either OpenStackCloudDiscoveryData value or instances.imageName is used.

      Example:

      imageName: ubuntu-18-04-cloud-amd64
      
    • mainNetworkstring

      Not required value.

      Path to the network that VirtualMachines’ primary NICs will connect to (default gateway).

      By default: the value from OpenStackCloudDiscoveryData is used.

      Example:

      mainNetwork: k8s-msk-178
      
    • rootDiskSizeinteger

      Not required value.

      The size of a root disk (in gigabytes).

      If the parameter is not set, a local disk with the size specified in flavor is used for the instance. If the parameter is set, the instance will use the Cinder volume provisioned by OpenStack as a root disk (of the standard cluster type and the specified size).

      If there are several types of disks in cloud provider, you can set a default disk type for the image in order to select a specific VM’s disk type; to do this, specify the name of a disk type in the image metadata. Also, you may need to create a custom OpenStack image; the “How do I create an image in OpenStack” section describes how to do it

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

      Example:

      rootDiskSize: 20
      

Parameters of a group of OpenStack servers used by machine-controller-manager (the node-manager module).

The CloudInstanceClass resource of the node-manager module refers to this resource.

  • specobject

    Required value

    • additionalNetworksarray of strings

      Paths to networks that VirtualMachines’ secondary NICs will connect to.

      By default: the value from OpenStackCloudDiscoveryData is used.

      Example:

      additionalNetworks:
      - BGP-network-VLAN-3894
      - External-VLAN-3699
      
    • additionalSecurityGroupsarray of strings

      Security groups that will be applied to VM’s network ports in addition to security groups set in a cloud provider configuration.

      They allow you to set firewall rules for provisioned instances.

      The SecurityGroups may not be supported by the cloud provider.

      Example:

      additionalSecurityGroups:
      - security-group-1
      - security-group-2
      
    • additionalTagsobject

      The additional tags to attach to the instances created (in addition to those specified in the cloud provider configuration).

      Example:

      project: cms-production
      severity: critical
      
    • flavorNamestring

      Required value

      Flavor of OpenStack servers.

      Get a list of all available flavors: openstack flavor list. For all non-master nodes it is advisable to use flavor’s with a local disk. If cloud provider supports local disks they are usually faster and cheaper. The disadvantage of using such flavors is the inability to migrate nodes between hypervisors. Flavor create example: openstack flavor create c4m8d50 --ram 8192 --disk 50 --vcpus 4

      Example:

      flavorName: m1.medium
      
    • imageNamestring

      Not required value.

      Image to use while provisioning OpenStack servers.

      Use this command to get a list of available images: openstack image list.

      Caution! Currently, only Ubuntu 18.04, Ubuntu 20.04, Centos 7 are supported and tested to work.

      By default: either OpenStackCloudDiscoveryData value or instances.imageName is used.

      Example:

      imageName: ubuntu-18-04-cloud-amd64
      
    • mainNetworkstring

      Not required value.

      Path to the network that VirtualMachines’ primary NICs will connect to (default gateway).

      By default: the value from OpenStackCloudDiscoveryData is used.

      Example:

      mainNetwork: k8s-msk-178
      
    • rootDiskSizeinteger

      Not required value.

      The size of a root disk (in gigabytes).

      If the parameter is not set, a local disk with the size specified in flavor is used for the instance. If the parameter is set, the instance will use the Cinder volume provisioned by OpenStack as a root disk (of the standard cluster type and the specified size).

      If there are several types of disks in cloud provider, you can set a default disk type for the image in order to select a specific VM’s disk type; to do this, specify the name of a disk type in the image metadata. Also, you may need to create a custom OpenStack image; the “How do I create an image in OpenStack” section describes how to do it

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

      Example:

      rootDiskSize: 20