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
- spec.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
- spec.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
- object
The additional tags to attach to the instances created (in addition to those specified in the cloud provider configuration).
Example:
additionalTags: project: cms-production severity: critical
- spec.capacityDeprecatedobject
Deprecated: the parameter is no longer used. Deckhouse is using parameters from the cloud for passed instance type.
Instance capacity for non-standard instance types (the
flavorName
parameter).Cluster-autoscaler uses the parameter for scheduling only when there are no nodes in NodeGroup yet (if
minPerZone
equal to 0). If there are already nodes in the NodeGroup, then cluster-autoscaler uses the actual node capacity (CPU, memory) when planning, and does not use thecapacity
parameter.The parameter must be specified only for non-standard instance types. Info about the capacity of standard instance types (
m1.medium
,m1.large
, etc.) is embedded in Deckhouse.- spec.capacity.cpuinteger or string
Required value
Node vCPU resources.
Pattern:
^[0-9]+m?$
Example:
cpu: 1000m
- spec.capacity.memoryinteger or string
Required value
Node memory resources.
Pattern:
^[0-9]+(\.[0-9]+)?(E|P|T|G|M|k|Ei|Pi|Ti|Gi|Mi|Ki)?$
Example:
memory: 1500Mi
- spec.capacity.cpuinteger or string
- spec.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
- spec.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
,Ubuntu 22.04
,Centos 7
,Centos 8
,Centos 9
,Debian 9
,Debian 10
,Debian 11
are supported and tested to work.By default: either
OpenStackCloudDiscoveryData
value orinstances.imageName
is used.Example:
imageName: ubuntu-18-04-cloud-amd64
- spec.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
- spec.rootDiskSizeinteger
Not required value.
The size of a root disk (in gigabytes). This parameter also has influence on type of volume that will be used for root disk; the “How to use rootDiskSize and when it is preferred” section describes how to use it.
Example:
rootDiskSize: 20
- spec.additionalNetworksarray of strings
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
- spec.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
- spec.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
- object
The additional tags to attach to the instances created (in addition to those specified in the cloud provider configuration).
Example:
additionalTags: project: cms-production severity: critical
- spec.capacityDeprecatedobject
Deprecated: the parameter is no longer used. Deckhouse is using parameters from the cloud for passed instance type.
Instance capacity for non-standard instance types (the
flavorName
parameter).Cluster-autoscaler uses the parameter for scheduling only when there are no nodes in NodeGroup yet (if
minPerZone
equal to 0). If there are already nodes in the NodeGroup, then cluster-autoscaler uses the actual node capacity (CPU, memory) when planning, and does not use thecapacity
parameter.The parameter must be specified only for non-standard instance types. Info about the capacity of standard instance types (
m1.medium
,m1.large
, etc.) is embedded in Deckhouse.- spec.capacity.cpuinteger or string
Required value
Node vCPU resources.
Pattern:
^[0-9]+m?$
Example:
cpu: 1000m
- spec.capacity.memoryinteger or string
Required value
Node memory resources.
Pattern:
^[0-9]+(\.[0-9]+)?(E|P|T|G|M|k|Ei|Pi|Ti|Gi|Mi|Ki)?$
Example:
memory: 1500Mi
- spec.capacity.cpuinteger or string
- spec.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
- spec.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
,Ubuntu 22.04
,Centos 7
,Centos 8
,Centos 9
,Debian 9
,Debian 10
,Debian 11
are supported and tested to work.By default: either
OpenStackCloudDiscoveryData
value orinstances.imageName
is used.Example:
imageName: ubuntu-18-04-cloud-amd64
- spec.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
- spec.rootDiskSizeinteger
Not required value.
The size of a root disk (in gigabytes). This parameter also has influence on type of volume that will be used for root disk; the “How to use rootDiskSize and when it is preferred” section describes how to use it.
Example:
rootDiskSize: 20
- spec.additionalNetworksarray of strings