YandexClusterConfiguration

Version: deckhouse.io/v1

  • apiVersionstring

    Required value

    Allowed values: deckhouse.io/v1, deckhouse.io/v1alpha1

  • dhcpOptionsobject

    A list of DHCP parameters to use for all subnets.

    Note that setting dhcpOptions may lead to problems.

    • domainNamestring

      The name of the search domain.

    • domainNameServersarray of strings

      A list of recursive DNS addresses.

      Pattern: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$

  • existingNetworkIDstring

    The ID of the existing VPC Network.

  • existingZoneToSubnetIDMapobject

    One or more pre-existing subnets mapped to respective zone.

    ru-central1-a: e2lu8r1tbbtryhdpa9ro
    ru-central1-b: e2lu8r1tbbtryhdpa9ro
    ru-central1-c: e2lu8r1tbbtryhdpa9ro
    

    Pattern: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}$

  • kindstring

    Required value

    Allowed values: YandexClusterConfiguration

  • labelsobject

    Labels to attach to resources created in the Yandex.Cloud.

    Note that you have to re-create all the machines to add new labels if labels were modified in the running cluster.

  • layoutstring

    Required value

    The way resources are located in the cloud.

    Read more about possible provider layouts.

    Allowed values: Standard, WithoutNAT, WithNATInstance

  • masterNodeGroupobject

    Required value

    The definition of the master’s NodeGroup.

    • instanceClassobject

      Required value

      Partial contents of the fields of the YandexInstanceClass.

      • additionalLabelsobject

        Additional labels.

        Example:

        project: cms-production
        severity: critical
        
      • coreFractioninteger

        Percent of reserved CPU capacity on a Yandex Compute Instance. Details…

        Default: 100

        Allowed values: 0, 5, 20, 50, 100

        Example:

        coreFraction: 20
        
      • coresinteger

        Required value

        Amount of CPU cores to provision on a Yandex Compute Instance.

      • diskSizeGBinteger

        Yandex Compute Instance disk size in gigabytes.

        Default: 50

        Example:

        diskSizeGB: 20
        
      • externalIPAddressesarray of strings

        A list of external addresses. The number of array elements must correspond to the number of replicas.

        If externalSubnetID is not set, you have to use either reserved public IP addresses or the Auto constant.

        If externalSubnetID is set, you must select specific unallocated IP addresses from the specified subnet.

        Pattern: ^([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})|(Auto)$

      • externalSubnetIDstring

        If specified, an additional network interface will be added to the node (the latter will use it as a default route).

      • externalSubnetIDsarray of strings

        If specified, an additional network interface will be added to the node (the latter will use it as a default route).

        Also, a route for the node’s internal interface will be added (it will cover the entire nodeNetworkCIDR subnet).

        The number of array elements must correspond to the number of replicas.

      • imageIDstring

        Required value

        Image ID to use while provisioning Yandex Compute Instances.

        Example:

        imageID: fd8nb7ecsbvj76dfaa8b
        
      • memoryinteger

        Required value

        Amount of primary memory in MB provision on a Yandex Compute Instance.

        Example:

        memory: 8192
        
      • networkTypestring

        Network type.

        Default: "Standard"

        Allowed values: Standard, SoftwareAccelerated

      • platformstring

        The type of virtual machine to create.

    • replicasinteger

      Required value

      The number of master nodes to create.

      Allowed values: 1 <= X

    • zonesarray

      Not required value.

      A limited set of zones in which nodes can be created.

      Allowed values of the array: ru-central1-a, ru-central1-b, ru-central1-c

  • nodeGroupsarray of objects

    An array of additional NodeGroups for creating static nodes (e.g., for dedicated front nodes or gateways).

    • instanceClassobject

      Required value

      Partial contents of the fields of the YandexInstanceClass.

      • additionalLabelsobject

        Additional labels.

        Example:

        project: cms-production
        severity: critical
        
      • coreFractioninteger

        Percent of reserved CPU capacity on a Yandex Compute Instance. Details…

        Default: 100

        Allowed values: 0, 5, 20, 50, 100

        Example:

        coreFraction: 20
        
      • coresinteger

        Required value

        Amount of CPU cores to provision on a Yandex Compute Instance.

      • diskSizeGBinteger

        Yandex Compute Instance disk size in gigabytes.

        Default: 50

        Example:

        diskSizeGB: 20
        
      • externalIPAddressesarray of strings

        A list of external addresses. The number of array elements must correspond to the number of replicas.

        If externalSubnetID is not set, you have to use either reserved public IP addresses or the Auto constant.

        If externalSubnetID is set, you must select specific unallocated IP addresses from the specified subnet.

        Pattern: ^([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})|(Auto)$

      • externalSubnetIDstring

        If specified, an additional network interface will be added to the node (the latter will use it as a default route).

      • externalSubnetIDsarray of strings

        If specified, an additional network interface will be added to the node (the latter will use it as a default route).

        Also, a route for the node’s internal interface will be added (it will cover the entire nodeNetworkCIDR subnet).

        The number of array elements must correspond to the number of replicas.

      • imageIDstring

        Required value

        Image ID to use while provisioning Yandex Compute Instances.

        Example:

        imageID: fd8nb7ecsbvj76dfaa8b
        
      • memoryinteger

        Required value

        Amount of primary memory in MB provision on a Yandex Compute Instance.

        Example:

        memory: 8192
        
      • networkTypestring

        Network type.

        Default: "Standard"

        Allowed values: Standard, SoftwareAccelerated

      • platformstring

        The type of virtual machine to create.

    • namestring

      Required value

      The name of the NodeGroup to use for generating node names.

    • nodeTemplate

      Parameters of Node objects in Kubernetes to add after registering the node.

      • annotationsobject

        The same as the metadata.annotations standard field.

        Example:

        annotations:
          ai.fleet.com/discombobulate: "true"
        
      • labelsobject

        A list of labels to attach to cluster resources.

        The same as the metadata.labels standard field.

        Note that you have to re-create all the machines to add new tags if tags were modified in the running cluster.

        Example:

        labels:
          environment: production
          app: warp-drive-ai
        
      • taintsarray of objects

        The same as the .spec.taints field of the Node object.

        Caution! Only the effect, key, values fields are available.

        Example:

        taints:
        - effect: NoExecute
          key: ship-class
          value: frigate
        
        • effectstring

          Allowed values: NoSchedule, PreferNoSchedule, NoExecute

        • keystring
        • valuestring
    • replicasinteger

      Required value

      The number of nodes to create.

    • zonesarray

      A limited set of zones in which nodes can be created.

      Allowed values of the array: ru-central1-a, ru-central1-b, ru-central1-c

  • nodeNetworkCIDRstring

    Required value

    This subnet will be split into three equal parts.

    They will serve as a basis for subnets in three Yandex.Cloud zones.

  • providerobject

    Required value

    Contains settings to connect to the Yandex.Cloud API.

    • cloudIDstring

      Required value

      The cloud ID.

    • folderIDstring

      Required value

      ID of the directory.

    • serviceAccountJSONstring

      Required value

      A JSON key generated by yc iam key create (formatted as a single line).

  • sshPublicKeystring

    Required value

    A public key for accessing nodes.

  • withNATInstanceobject

    Settings for the WithNATInstance layout.

    • externalSubnetIDstring

      If specified, an additional network interface will be added to the node (the node will use it as a default route).

    • internalSubnetIDstring

      ID of a subnet for the internal interface.

    • natInstanceExternalAddressstring

      A reserved external IP address (or externalSubnetID address if specified).

      Pattern: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$

    • natInstanceInternalAddressstring

      Consider using automatically generated address instead.

      Pattern: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$

  • zonesarray

    The globally restricted set of zones that this Cloud Provider works with.

    Allowed values of the array: ru-central1-a, ru-central1-b, ru-central1-c