Sequentially restarting instances in a group
You can sequentially restart group instances based on the parameters specified in the deployment policy.
For example, if the deployment policy specifies a maximum of 1
unavailable instance per group, then only one instance will be down at any given time when sequentially restarting instances.
Warning
With the instance stopping strategy, Instance Groups will restart or recreate a VM instance if at least one of the following conditions is met:
- The user stops the instance in Compute Cloud.
- The application or user stops the instance internally.
- The instance fails the application health check.
To sequentially restart instances in a group:
If you do not have the Yandex Cloud CLI 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
parameters.
-
See the description of the CLI command for restarting an instance group:
yc compute instance-group rolling-restart --help
-
Get a list of folders in the default cloud:
yc resource-manager folder list
Result:
+----------------------+--------------------+------------------+--------+ | ID | NAME | LABELS | STATUS | +----------------------+--------------------+------------------+--------+ | b1gd129pp9ha******** | my-folder | | ACTIVE | | b1g66mft1vop******** | default | | ACTIVE | +----------------------+--------------------+------------------+--------+
-
Get a list of instance groups in the selected folder by specifying its name:
yc compute instance-group list \ --folder-name <folder_name>
Result:
+----------------------+-----------------------+--------+------+ | ID | NAME | STATUS | SIZE | +----------------------+-----------------------+--------+------+ | amc65sbgfqeq******** | first-instance-group | ACTIVE | 4 | +----------------------+-----------------------+--------+------+
-
Restart VM instances in the instance group:
yc compute instance-group rolling-restart --all \ --name <instance_group_name> \ --folder-name <folder_name>
Where:
--name
: Instance group name.--folder-name
: Name of the folder the instance group belongs to.
Instance Groups will begin restarting all instances in the group one by one. The restarted instances will change their status to
Running
.Result:
done (2m43s) id: amc65sbgfqeq******** ... status: ACTIVE application_load_balancer_state: {}
To restart individual instances in a group, get a list of instances in that group:
yc compute instance-group list-instances \ --name <instance_group_name> \ --folder-name <folder_name>
Where:
--name
: Instance group name.--folder-name
: Name of the folder the instance group belongs to.
Result:
+----------------------+---------------------------+----------------+--------------+------------------------+----------------+ | INSTANCE ID | NAME | EXTERNAL IP | INTERNAL IP | STATUS | STATUS MESSAGE | +----------------------+---------------------------+----------------+--------------+------------------------+----------------+ | epdl7gdvb69f******** | cl17k72ehu54********-amyk | 130.193.**.*** | 192.168.0.33 | RUNNING_ACTUAL [8m] | | | epdjtb04efcf******** | cl17k72ehu54********-oper | 84.201.***.*** | 192.168.0.17 | RUNNING_ACTUAL [6m] | | | epd3anghn4vb******** | cl17k72ehu54********-axec | 84.201.***.*** | 192.168.0.14 | RUNNING_ACTUAL [1m50s] | | | epdbt0c7o6d3******** | cl17k72ehu54********-ihez | 51.250.***.*** | 192.168.0.29 | RUNNING_ACTUAL [1m0s] | | +----------------------+---------------------------+----------------+--------------+------------------------+----------------+
Restart the VM instances in question:
yc compute instance-group rolling-restart \ --instance-ids <VM_instance_IDs> \ --name <instance_group_name> \ --folder-name <folder_name>
Where:
--instance-ids
: Comma-separated IDs of instances to restart. For example, to restart the first and third instances from those listed, specify--instance-ids epdl7gdvb69f********,epd3anghn4vb********
.--name
: Instance group name.--folder-name
: Name of the folder the instance group belongs to.
Instance Groups will begin restarting the specified instances in the group one by one. The restarted instances will change their status to
Running
.
For more information about the yc compute instance-group rolling-restart
command parameters, see the CLI reference.
Use the rollingRestart REST API method for the InstanceGroup resource or the InstanceGroupService/rollingRestart gRPC API call.