Managing labels
You can add, delete, or update resource labels in the management console, Yandex Cloud CLI, and Terraform.
Labels are supported in certain services. Label management in some services, such as Object Storage, may be different.
Adding a label
The example below shows how to add a label to a Compute Cloud VM instance. You can add a label to another resource in the same way.
- In the management console
, select the folder where the VM is located. - In the list of services, select Compute Cloud.
- In the left-hand panel, select
Virtual machines. - Select the VM you need from the list.
- Click
and select Edit. - In the Labels field, click Add label.
- Specify the key and value and press Enter.
If you do not 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.
To add or update an existing service resource label, run this command:
yc <service_name> <resource_type> add-labels <resource_name_or_ID> \
--labels <label_name>=<label_value>
Example
Adding a label to a VM:
yc compute instance add-labels cl123g4dridnn5cn****-**** --labels project=test
Result:
done (5s) id: fhm1pr2bu3p4******** folder_id: b1g23ga45mev******** created_at: "2020-08-07T11:29:18Z" name: cl123g4dridnn5cn****-**** labels: project: test zone_id: ru-central1-a ...
If you don't have Terraform, install it and configure the Yandex Cloud provider.
-
In the configuration file, add the following fragment to the resource:
labels = { <label_key> = "<label_value>" }
-
Apply the changes:
-
In the terminal, change to the folder where you edited the configuration file.
-
Make sure the configuration file is correct using the command:
terraform validate
If the configuration is correct, the following message is returned:
Success! The configuration is valid.
-
Run the command:
terraform plan
The terminal will display a list of resources with parameters. No changes are made at this step. If the configuration contains errors, Terraform will point them out.
-
Apply the configuration changes:
terraform apply
-
Confirm the changes: type
yes
in the terminal and press Enter.
-
That will add the label to the resource. You can check the new label using the management console
yc <service_name> <resource_type> get <resource_name_or_ID>
Example
Defining a label for a Yandex Lockbox secret:
resource "yandex_lockbox_secret" "my_secret" { name = lockbox-test-secret labels = { label-test-key = "label-test-value" } }
You can create a label with multiple values. For example, create a label named my-cloud
with the following values:
my-vm
: For your VM instance.my-disk
: For your disk.
Editing a label
You can only edit resource labels using the Yandex Cloud CLI and Terraform.
If you do not 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.
Warning
The existing set of labels
is completely overwritten by the one transmitted in the request.
To edit a label of a service resource, use this command:
yc <service_name> <resource_type> update < resource_name_or_ID> \
--labels <label_name>=<label_value>
Example
Editing labels for Kubernetes cluster:
yc managed-kubernetes cluster update k8s-gpu --labels new_lable=test_label
Result:
done (1m36s) id: cat1hknor234******** folder_id: b1g23ga45mev******** created_at: "2020-08-07T11:15:59Z" name: cluster labels: new_lable: test_label status: RUNNING ...
If you don't have Terraform, install it and configure the Yandex Cloud provider.
-
In the configuration file, find the following fragment:
labels = { <label_key> = "<label_value>" }
-
Update both the key and the value.
-
Apply the changes:
-
In the terminal, change to the folder where you edited the configuration file.
-
Make sure the configuration file is correct using the command:
terraform validate
If the configuration is correct, the following message is returned:
Success! The configuration is valid.
-
Run the command:
terraform plan
The terminal will display a list of resources with parameters. No changes are made at this step. If the configuration contains errors, Terraform will point them out.
-
Apply the configuration changes:
terraform apply
-
Confirm the changes: type
yes
in the terminal and press Enter.
-
After that, the label for the resource will be updated. You can check the label update using the management console
yc <service_name> <resource_type> get <resource_name_or_ID>
Deleting a label
The example below shows how to delete a label from a Compute Cloud VM. You can delete a label from another resource in the same way.
- In the management console
, select the folder where the VM is located. - In the list of services, select Compute Cloud.
- In the left-hand panel, select
Virtual machines. - Select the VM you need from the list.
- Click
and select Edit. - In the Labels field, select the label in question and click
next to its name.
If you do not 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.
Delete a service resource label:
yc <service_name> <resource_type> remove-labels <resource_name_or_ID> \
--labels <label_name>
Example
Removing a label from a Managed Service for MySQL cluster:
yc managed-mysql cluster remove-labels mysql123 --labels my_lable
Result:
id: c1qmjaatlurm******** folder_id: b1g23ga45mev******** created_at: "2020-08-20T11:53:20.015543Z" name: mysql123 environment: PRODUCTION ...
If you don't have Terraform, install it and configure the Yandex Cloud provider.
-
In the configuration file, find the following fragment:
labels = { <label_key> = "<label_value>" }
-
Delete the fragment.
-
Apply the changes:
-
In the terminal, change to the folder where you edited the configuration file.
-
Make sure the configuration file is correct using the command:
terraform validate
If the configuration is correct, the following message is returned:
Success! The configuration is valid.
-
Run the command:
terraform plan
The terminal will display a list of resources with parameters. No changes are made at this step. If the configuration contains errors, Terraform will point them out.
-
Apply the configuration changes:
terraform apply
-
Confirm the changes: type
yes
in the terminal and press Enter.
-
After that, the label will be removed from the resource. You can check the deletion of the label using the management console
yc <service_name> <resource_type> get <resource_name_or_ID>