Yandex.Cloud
  • Services
  • Why Yandex.Cloud
  • Pricing
  • Documentation
  • Contact us
Get started
Yandex Managed Service for Kubernetes
  • Getting started
  • Step-by-step instructions
    • All instructions
    • Connecting to a node over SSH
    • Creating a configuration file
    • Configuring a Kubernetes cluster network
      • Granting access to an app running in a Kubernetes cluster
      • Using Kubernetes cluster network policies
    • Encrypting secrets
    • Using persistent volumes
      • Dynamically preparing volumes
      • Statically preparing volumes
      • Managing storage classes
      • Expanding a volume
      • Mounting a volume in Block mode
    • Managing a Kubernetes cluster
      • Adding Kubernetes cluster credentials to the kubectl configuration file
      • Getting information about a Kubernetes cluster
      • Creating a Kubernetes cluster
      • Editing a Kubernetes cluster
      • Deleting a Kubernetes cluster
    • Managing a node group
      • Getting information about a node group
      • Creating a node group
      • Editing a node group
      • Deleting a node group
  • Solutions
    • Integration with Container Registry
    • Running workloads with GPUs
    • Making backups to Object Storage
  • Concepts
    • Relationship between service resources
    • Release channels and updates
    • Using Kubernetes API objects
      • Volume
      • Service
    • Node group
      • Autoscaling node groups
      • Evicting pods from a node
      • Dynamic resource allocation for a node
      • Node groups with GPUs
    • Kubernetes cluster network policies
    • Quotas and limits
  • Access management
  • Pricing policy
  • API reference
    • Authentication in the API
    • gRPC
      • Overview
      • ClusterService
      • NodeGroupService
      • VersionService
      • OperationService
    • REST
      • Overview
      • Cluster
        • Overview
        • create
        • delete
        • get
        • list
        • listNodeGroups
        • listNodes
        • listOperations
        • start
        • stop
        • update
      • NodeGroup
        • Overview
        • create
        • delete
        • get
        • list
        • listNodes
        • listOperations
        • update
      • Version
        • Overview
        • list
  • Questions and answers
  1. Step-by-step instructions
  2. Managing a node group
  3. Creating a node group

Creating a node group

  • Create a node group

To create a node group, create a Kubernetes cluster first.

Create a node group

Management console
CLI
API

To create a node group:

  1. In management console, select the folder where you want to create your Kubernetes cluster.
  2. In the list of services, select Managed Service for Kubernetes.
  3. Select the Kubernetes cluster to create a node group for.
  4. On the Kubernetes cluster page, go to the Node groups tab.
  5. Click Create node group.
  6. Enter a name and description for the node group.
  7. Specify the Kubernetes version for the nodes.
  8. Specify the number of nodes in the node group.
  9. Under Scalability:
    • Select the scaling policy type.
    • Specify the number of nodes in the node group.
  10. Under Allow when creating and updating, specify the maximum number of instances that you can exceed and reduce the size of the group by.
  11. Under Computing resources:
    • Choose a platform.
    • Specify the required number of vCPUs, guaranteed vCPU performance, and RAM.
    • (optional) Specify that the VM must be preemptible.
  12. Under Storage:
    • Specify the Disk type:
      • HDD: Standard network drive. Network block storage on an HDD.
      • SSD: Fast network drive. Network block storage on an SSD.
    • Specify the disk size.
  13. Under Network settings:
    • In the Public IP field, choose a method for assigning an IP address:
      • Auto: Assign a random IP address from the Yandex.Cloud IP pool.
      • No address: Don't assign a public IP address.
    • Specify how nodes should be distributed across availability zones and networks.
    • (optional) Click Add location and specify an additional availability zone and network to create nodes in different zones.
  14. Under Access, specify the information required to access the node:
    • Enter the username in the Login field.
    • In the SSH key field, paste the contents of the public key file.
  15. Under Maintenance window settings:
    • In the Maintenance frequency / Disable field, choose the maintenance window:
      • Disabled: Automatic updates are disabled.
      • Anytime: Maintenance is allowed at any time.
      • Daily: Maintenance is performed during the interval specified in the Time (UTC) and duration field.
      • On selected days: Maintenance is performed during the interval specified in the Schedule by day field.
  16. Click Create node group.

If you don't have the Yandex.Cloud command line interface yet, install and initialize it.

The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name or --folder-id parameter.

Create a node group:

$ yc managed-kubernetes node-group create \
 --name my-node-group \
 --cluster-name test-k8s \
 --platform-id standard-v2 \
 --location subnet-name=yc-auto-subnet-0,zone=ru-central1-a \
 --public-ip \
 --cores 2 \
 --memory 4 \
 --core-fraction 50 \
 --disk-type network-ssd \
 --disk-size 96 \
 --fixed-size 2 \
 --version 1.13 \
 --daily-maintenance-window start=22:00,duration=10h

done (1m17s)
id: catpl8c44kiibp20u4f3
cluster_id: catcsqidoos7tq0513us
created_at: "2020-01-22T10:34:43Z"
name: my-node-group
status: RUNNING
node_template:
platform_id: standard-v2
resources_spec:
  memory: "4294967296"
  cores: "2"
  core_fraction: "50"
boot_disk_spec:
  disk_type_id: network-ssd
  disk_size: "103079215104"
v4_address_spec:
  one_to_one_nat_spec:
    ip_version: IPV4
scheduling_policy: {}
scale_policy:
fixed_scale:
  size: "2"
allocation_policy:
locations:
- zone_id: ru-central1-a
  subnet_id: e9bifq12g0u8gnr4lv5q
instance_group_id: cl17ebkucdsdila0idmg
node_version: "1.14"
version_info:
current_version: "1.14"
maintenance_policy:
auto_upgrade: true
auto_repair: true
maintenance_window:
  daily_maintenance_window:
    start_time:
      hours: 22
    duration: 36000s

Where:

  • --name: Name of the node group.
  • --cluster-name: Name of the Kubernetes cluster where the node group is created.
  • --platform-id: The platform to host the nodes.
  • --public-ip: Flag specified if the node group needs a public IP address.
  • --memory: Amount of memory allocated for the nodes.
  • --cores: Number of vCPUs for the nodes.
  • --core-fraction: Guaranteed vCPU share for the nodes.
  • --preemptible: Flag specified if the VM instances should be preemptible.
  • --disk-type: Type of the disk on the node.
  • --disk-size: Size of the disk on the node.
  • --fixed-size: Number of nodes in the node group.
  • --location: Availability zone, network, and subnet to host the nodes on. You can specify several options.
  • --version: Kubernetes version on the nodes.
  • --daily-maintenance-window: Maintenance window settings.

To create a node group, use the create method for the NodeGroup resource.

Language
Careers
Privacy policy
Terms of use
© 2021 Yandex.Cloud LLC