GCPInstanceClass

Scope: Cluster

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

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

  • specobject

    Required value

    • additionalLabelsobject

      Additional labels.

      More info…

      Example:

      project: cms-production
      severity: critical
      
    • additionalNetworkTagsarray of strings

      The list of additional tags.

      For example, you can use tags to apply firewall rules to instances. The detailed description of network tags is available in the official documentation.

    • capacityobject

      Instance capacity for non-standard instance types (the machineType 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 the capacity parameter.

      The parameter must be specified only for non-standard instance types. Info about the capacity of standard instance types (a2-highgpu-8g, c2-standard-8, etc.) is embedded in Deckhouse.

      • cpuinteger or string

        Required value

        Node vCPU resources.

        Pattern: ^[0-9]+m?$

        Example:

        cpu: 1000m
        
      • 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
        
    • disableExternalIPboolean

      Defines whether to disable external ip for an instance or not. True means that an instance is created without external ip

    • diskSizeGbinteger

      Instance’s root disk size in gigabytes.

      Default: 50

      Example:

      diskSizeGb: 20
      
    • diskTypestring

      Instance’s disk type.

      Default: "pd-standard"

      Allowed values: pd-standard, pd-ssd

      Example:

      diskType: pd-ssd
      
    • imagestring

      Not required value.

      Image to use while provisioning GCP servers.

      You can find a list of images in the documentation.

      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.

      Example:

      image: https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20190911
      
    • machineTypestring

      Required value

      Machine type of GCP instance.

      Caution! Make sure that this type is present in all zones specified in the zones parameter.

      GCP lets you specify a custom amount of resources (CPU and RAM), e.g., custom-8-40960 or n2-custom-8-40960.

      Example:

      machineType: n1-standard-4
      
    • preemptibleboolean

      Should instances be preemptible.

      Default: false

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

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

  • specobject

    Required value

    • additionalLabelsobject

      Additional labels.

      More info…

      Example:

      project: cms-production
      severity: critical
      
    • additionalNetworkTagsarray of strings

      The list of additional tags.

      For example, you can use tags to apply firewall rules to instances. The detailed description of network tags is available in the official documentation.

    • capacityobject

      Instance capacity for non-standard instance types (the machineType 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 the capacity parameter.

      The parameter must be specified only for non-standard instance types. Info about the capacity of standard instance types (a2-highgpu-8g, c2-standard-8, etc.) is embedded in Deckhouse.

      • cpuinteger or string

        Required value

        Node vCPU resources.

        Pattern: ^[0-9]+m?$

        Example:

        cpu: 1000m
        
      • 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
        
    • disableExternalIPboolean

      Defines whether to disable external ip for an instance or not. True means that an instance is created without external ip

    • diskSizeGbinteger

      Instance’s root disk size in gigabytes.

      Default: 50

      Example:

      diskSizeGb: 20
      
    • diskTypestring

      Instance’s disk type.

      Default: "pd-standard"

      Allowed values: pd-standard, pd-ssd

      Example:

      diskType: pd-ssd
      
    • imagestring

      Not required value.

      Image to use while provisioning GCP servers.

      You can find a list of images in the documentation.

      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.

      Example:

      image: https://www.googleapis.com/compute/v1/projects/ubuntu-os-cloud/global/images/ubuntu-1804-bionic-v20190911
      
    • machineTypestring

      Required value

      Machine type of GCP instance.

      Caution! Make sure that this type is present in all zones specified in the zones parameter.

      GCP lets you specify a custom amount of resources (CPU and RAM), e.g., custom-8-40960 or n2-custom-8-40960.

      Example:

      machineType: n1-standard-4
      
    • preemptibleboolean

      Should instances be preemptible.

      Default: false