diff --git a/en/_assets/billing/billing-cycle-business-credit.svg b/en/_assets/billing/billing-cycle-business-credit.svg
new file mode 100644
index 00000000000..f9aefad9cdc
--- /dev/null
+++ b/en/_assets/billing/billing-cycle-business-credit.svg
@@ -0,0 +1,94 @@
+
diff --git a/en/_assets/compute/connect-sa.png b/en/_assets/compute/connect-sa.png
deleted file mode 100755
index ba4d94b2c8c..00000000000
Binary files a/en/_assets/compute/connect-sa.png and /dev/null differ
diff --git a/en/_assets/console-icons/chevrons-expand-up-right.svg b/en/_assets/console-icons/chevrons-expand-up-right.svg
new file mode 100644
index 00000000000..585a2a66b80
--- /dev/null
+++ b/en/_assets/console-icons/chevrons-expand-up-right.svg
@@ -0,0 +1,3 @@
+
diff --git a/en/_assets/console-icons/circle-plus-fill.svg b/en/_assets/console-icons/circle-plus-fill.svg
new file mode 100644
index 00000000000..d2d7324003e
--- /dev/null
+++ b/en/_assets/console-icons/circle-plus-fill.svg
@@ -0,0 +1,3 @@
+
diff --git a/en/_assets/console-icons/cubes-3.svg b/en/_assets/console-icons/cubes-3.svg
new file mode 100644
index 00000000000..6e87337149c
--- /dev/null
+++ b/en/_assets/console-icons/cubes-3.svg
@@ -0,0 +1,3 @@
+
diff --git a/en/_assets/console-icons/handset-arrow-in.svg b/en/_assets/console-icons/handset-arrow-in.svg
new file mode 100644
index 00000000000..9b4187111ab
--- /dev/null
+++ b/en/_assets/console-icons/handset-arrow-in.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/en/_assets/console-icons/stop.svg b/en/_assets/console-icons/stop.svg
new file mode 100644
index 00000000000..68bf4502909
--- /dev/null
+++ b/en/_assets/console-icons/stop.svg
@@ -0,0 +1,3 @@
+
diff --git a/en/_assets/console-icons/triangle-right.svg b/en/_assets/console-icons/triangle-right.svg
new file mode 100644
index 00000000000..d0d9f448f24
--- /dev/null
+++ b/en/_assets/console-icons/triangle-right.svg
@@ -0,0 +1,3 @@
+
diff --git a/en/_assets/datalens/concepts/widget.png b/en/_assets/datalens/concepts/widget.png
index 0edf3cc3037..e781724a3cc 100644
Binary files a/en/_assets/datalens/concepts/widget.png and b/en/_assets/datalens/concepts/widget.png differ
diff --git a/en/_assets/datalens/solution-03/01-metrica-list.png b/en/_assets/datalens/solution-03/01-metrica-list.png
index f0825b4e69f..ea6a4a587a2 100644
Binary files a/en/_assets/datalens/solution-03/01-metrica-list.png and b/en/_assets/datalens/solution-03/01-metrica-list.png differ
diff --git a/en/_assets/datalens/solution-03/10-delete-charts1.png b/en/_assets/datalens/solution-03/10-delete-charts1.png
index 2428498fb0e..f5cedeba507 100644
Binary files a/en/_assets/datalens/solution-03/10-delete-charts1.png and b/en/_assets/datalens/solution-03/10-delete-charts1.png differ
diff --git a/en/_assets/datalens/solution-03/11-replace-charts.png b/en/_assets/datalens/solution-03/11-replace-charts.png
index 65d9e1b8100..abbe115cdb7 100644
Binary files a/en/_assets/datalens/solution-03/11-replace-charts.png and b/en/_assets/datalens/solution-03/11-replace-charts.png differ
diff --git a/en/_assets/datalens/solution-03/12-delete-charts2.png b/en/_assets/datalens/solution-03/12-delete-charts2.png
index 9b9fa6b5575..4497dec8687 100644
Binary files a/en/_assets/datalens/solution-03/12-delete-charts2.png and b/en/_assets/datalens/solution-03/12-delete-charts2.png differ
diff --git a/en/_assets/datalens/solution-03/14-edit-chart.png b/en/_assets/datalens/solution-03/14-edit-chart.png
index cacfbdb4e3e..9e9b24a1544 100644
Binary files a/en/_assets/datalens/solution-03/14-edit-chart.png and b/en/_assets/datalens/solution-03/14-edit-chart.png differ
diff --git a/en/_assets/datalens/solution-03/15-choose-pie.png b/en/_assets/datalens/solution-03/15-choose-pie.png
index 22e00c192f1..e5391fd7cb9 100644
Binary files a/en/_assets/datalens/solution-03/15-choose-pie.png and b/en/_assets/datalens/solution-03/15-choose-pie.png differ
diff --git a/en/_assets/datalens/solution-03/16-save-chart.png b/en/_assets/datalens/solution-03/16-save-chart.png
index d4b01133b65..27333dbc6fa 100644
Binary files a/en/_assets/datalens/solution-03/16-save-chart.png and b/en/_assets/datalens/solution-03/16-save-chart.png differ
diff --git a/en/_assets/datalens/solution-03/17-refresh-dashboard.png b/en/_assets/datalens/solution-03/17-refresh-dashboard.png
index 964fcbc21fe..a097ed3b28a 100644
Binary files a/en/_assets/datalens/solution-03/17-refresh-dashboard.png and b/en/_assets/datalens/solution-03/17-refresh-dashboard.png differ
diff --git a/en/_assets/overview/legal-entity-trial-period.svg b/en/_assets/overview/legal-entity-trial-period.svg
new file mode 100644
index 00000000000..0e83ac62e68
--- /dev/null
+++ b/en/_assets/overview/legal-entity-trial-period.svg
@@ -0,0 +1,86 @@
+
diff --git a/en/_assets/storage/bucket.svg b/en/_assets/storage/bucket.svg
new file mode 100644
index 00000000000..bb05f952e17
--- /dev/null
+++ b/en/_assets/storage/bucket.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/en/_assets/storage/link.svg b/en/_assets/storage/link.svg
new file mode 100644
index 00000000000..eed56977ade
--- /dev/null
+++ b/en/_assets/storage/link.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/en/_assets/storage/upload.svg b/en/_assets/storage/upload.svg
new file mode 100644
index 00000000000..ce1ebb1fcf5
--- /dev/null
+++ b/en/_assets/storage/upload.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/en/_cli-ref/cli-ref/managed-services/lockbox/secret/add-version.md b/en/_cli-ref/cli-ref/managed-services/lockbox/secret/add-version.md
index c676c185012..ca00af11111 100644
--- a/en/_cli-ref/cli-ref/managed-services/lockbox/secret/add-version.md
+++ b/en/_cli-ref/cli-ref/managed-services/lockbox/secret/add-version.md
@@ -20,7 +20,7 @@ Syntax:
|`--name`|`string` Secret name.|
|`--async`|Display information about the operation in progress, without waiting for the operation to complete.|
|`--description`|`string` Version description.|
-|`--payload`|`string` YAML or JSON array defining how to change payload from the base version. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/secret_service#PayloadEntryChange For instance, to modify the value of "password" entry from the base version payload: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] the following JSON can be passed: [{"key": "password", "text_value": "another-p@$$w0rd"}] so the resulting payload of the newly added version will be: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "another-p@$$w0rd"}] To remove the entry pass an item containing only the "key" field, e.g.: [..., {"key": "the-key-of-the-entry-to-remove"}, ...] Use - value to pass payload string via stdin.|
+|`--payload`|`string` YAML or JSON array defining how to change payload from the base version. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/Secret/create#yandex.cloud.lockbox.v1.PayloadEntryChange For instance, to modify the value of "password" entry from the base version payload: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] the following JSON can be passed: [{"key": "password", "text_value": "another-p@$$w0rd"}] so the resulting payload of the newly added version will be: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "another-p@$$w0rd"}] To remove the entry pass an item containing only the "key" field, e.g.: [..., {"key": "the-key-of-the-entry-to-remove"}, ...] Use - value to pass payload string via stdin.|
|`--base-version-id`|`string` Base version id. By default, the current one is used.|
#### Global Flags
diff --git a/en/_cli-ref/cli-ref/managed-services/lockbox/secret/create.md b/en/_cli-ref/cli-ref/managed-services/lockbox/secret/create.md
index 604543e9870..4491b67405a 100644
--- a/en/_cli-ref/cli-ref/managed-services/lockbox/secret/create.md
+++ b/en/_cli-ref/cli-ref/managed-services/lockbox/secret/create.md
@@ -21,7 +21,7 @@ Syntax:
|`--labels`|`key=value[,key=value...]` A list of label KEY=VALUE pairs to add. For example, to add two labels named 'foo' and 'bar', both with the value 'baz', use '--labels foo=baz,bar=baz'.|
|`--kms-key-id`|`string` KMS key ID will be used to encrypt the secret payload.|
|`--version-description`|`string` Description of the first version.|
-|`--payload`|`string` YAML or JSON array defining the entries of the secret payload. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/secret_service#PayloadEntryChange For instance, the following payload JSON defines a payload containing two text value entries: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] Use - value to pass payload string via stdin.|
+|`--payload`|`string` YAML or JSON array defining the entries of the secret payload. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/Secret/create#yandex.cloud.lockbox.v1.PayloadEntryChange For instance, the following payload JSON defines a payload containing two text value entries: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] Use - value to pass payload string via stdin.|
|`--deletion-protection`|Enable deletion protection for the secret.|
|`--async`|Display information about the operation in progress, without waiting for the operation to complete.|
diff --git a/en/_includes/application-load-balancer/create-web-server.md b/en/_includes/application-load-balancer/create-web-server.md
index 78048959403..62ffd716ede 100644
--- a/en/_includes/application-load-balancer/create-web-server.md
+++ b/en/_includes/application-load-balancer/create-web-server.md
@@ -18,5 +18,5 @@
1. Make sure the web server returns a list of folders in the `test-server` folder. Open the terminal on your computer and run this command:
```bash
- curl -v :8080
+ curl --verbose :8080
```
\ No newline at end of file
diff --git a/en/_includes/backup/baremetal-note.md b/en/_includes/backup/baremetal-note.md
new file mode 100644
index 00000000000..b26cd84a0a7
--- /dev/null
+++ b/en/_includes/backup/baremetal-note.md
@@ -0,0 +1,7 @@
+{% note info %}
+
+{{ backup-name }} also supports [{{ baremetal-full-name }} server](../../baremetal/concepts/servers.md) backups. For details, see [Connecting a {{ baremetal-name }} server to {{ backup-name }}](../../backup/tutorials/backup-baremetal.md).
+
+_{{ baremetal-name }} will be released at the [Preview stage](../../overview/concepts/launch-stages.md) in Q4 2024._
+
+{% endnote %}
\ No newline at end of file
diff --git a/en/_includes/backup/operations/full-config.md b/en/_includes/backup/operations/full-config.md
index 3a9172af305..a3ce1c85a65 100644
--- a/en/_includes/backup/operations/full-config.md
+++ b/en/_includes/backup/operations/full-config.md
@@ -191,10 +191,10 @@ Attribute sections with multiple nested values.
| `scheduling.backupSets.sinceLastExecTime.delay.type` | Units of time used to set the interval between backups. |
`TYPE_UNSPECIFIED`: Not set.
`SECONDS`: Seconds.
`MINUTES`: Minutes.
`HOURS`: Hours.
`DAYS`: Days.
`WEEKS`: Weeks.
`MONTHS`: Months.
|
| `scheduling.backupSets.sinceLastExecTime.delay.count` | Duration of the interval between backups in time units set by the `delay.type` attribute. | Integer |
| `scheduling.enabled` | Making scheduled backups. |
`true`: Enabled.
`false`: Disabled.
|
- | `scheduling.maxParallelBackups` | Maximum number of parallel backups allowed. Unlimited if no value is specified. | Integer |
+ | `scheduling.maxParallelBackups` | Maximum permissible number of parallel backups. Unlimited if no value is specified. | Integer |
| `scheduling.randMaxDelay.type` | Units of time used to set the maximum delay before running parallel jobs. |
`TYPE_UNSPECIFIED`: Not set.
`SECONDS`: Seconds.
`MINUTES`: Minutes.
`HOURS`: Hours.
`DAYS`: Days.
`WEEKS`: Weeks.
`MONTHS`: Months.
|
| `scheduling.randMaxDelay.count` | Maximum delay before running parallel jobs in time units set by the `randMaxDelay.type` attribute. The delay is determined randomly but it may not exceed the value set here. | Integer |
| `scheduling.scheme` | Backup schedule scheme. |
|
- | `scheduling.weeklyBackupDay` | Day of the week to make weekly backups on. | Integer from 1 to 7 |
+ | `scheduling.weeklyBackupDay` | Day of the week for the weekly backup. | Integer from 1 to 7 |
{% endlist %}
\ No newline at end of file
diff --git a/en/_includes/billing/billing-account-create-individual.md b/en/_includes/billing/billing-account-create-individual.md
index eb6831df4b9..0d77bededcb 100644
--- a/en/_includes/billing/billing-account-create-individual.md
+++ b/en/_includes/billing/billing-account-create-individual.md
@@ -14,7 +14,7 @@ To create a billing account:
1. If you see a list of available payers in the **{{ ui-key.yacloud_billing_account.create-account-wizard.field_person-id }}** section, you can select one of them or add a new one. To add a payer:
- * Select the **{{ ui-key.startrek.ui_components_page-admin_BillingAccountInfo.person-type-invididual }}** payer type and click **{{ ui-key.yacloud_billing_account.cloud-billing-account.label_wizard-next }}**.
+ * Select the **Individual** payer type and click **{{ ui-key.yacloud_billing_account.cloud-billing-account.label_wizard-next }}**.
* Enter your first and last name.
* (Optional) Enter your middle name and mailing address.
* Click **{{ ui-key.yacloud_billing_account.cloud-billing-account.label_wizard-next }}**.
diff --git a/en/_includes/billing/billing-account-create-legal-entities.md b/en/_includes/billing/billing-account-create-legal-entities.md
index 56e1c515733..cb58df3e9f7 100644
--- a/en/_includes/billing/billing-account-create-legal-entities.md
+++ b/en/_includes/billing/billing-account-create-legal-entities.md
@@ -2,7 +2,7 @@ To create a billing account:
1. {% include [move-to-billing-step](../../billing/_includes/move-to-billing-step.md) %}
-1. Log in to your Yandex ID or Yandex 360 account. If you do not have an account yet, [sign up](https://yandex.ru/support/id/authorization/registration.html) and create an [organization](../../organization/quickstart.md) to work in [{{org-full-name}}]({{link-org-main}}). If you use a social network profile to log in to Yandex, [create a username and password](https://passport.yandex.com/passport?mode=postregistration&create_login=1).
+1. Log in to your Yandex ID or Yandex 360 account. If you do not have an account yet, [sign up](https://yandex.ru/support/id/authorization/registration.html) and create an [organization](../../organization/quickstart.md) in [{{ org-full-name }}]({{ link-org-main }}) for you to work in. If using your social network profile to log in to Yandex, [create a username and password](https://passport.yandex.com/passport?mode=postregistration&create_login=1).
1. On the **{{ ui-key.yacloud_billing.billing.title_accounts }}** page, click **Create billing account**. Fill in your information:
@@ -10,27 +10,49 @@ To create a billing account:
* {% include [choose-org-step](../../billing/_includes/choose-org-step.md) %}
* {% include [choose-country-step](../../billing/_includes/choose-country-step.md) %}
- {% include [billing-account-payers](../../billing/_includes/billing-account-payers.md) %}
+ {% include [billing-account-payers](../../billing/_includes/billing-account-payers.md) %}
1. If you see a list of available payers in the **{{ ui-key.yacloud_billing_account.create-account-wizard.field_person-id }}** section, you can select one of them or add a new one.
-1. Select the **{{ ui-key.startrek.ui_components_page-admin_BillingAccountInfo.person-type-company }}** payer type.
+1. Select the **Legal entity or individual entrepreneur** payer type.
-1. Select the **{{ ui-key.yacloud_billing.billing.account.create-new.payment-type_label_invoice }}** payment method.
+1. Select the **{{ ui-key.yacloud_billing.billing.account.create-new.payment-type_label_card }}** or **{{ ui-key.yacloud_billing.billing.account.create-new.payment-type_label_invoice }}** payment method. You can [change the payment method](../../billing/operations/change-payment-method.md) any time after creating a billing account.
1. Click **{{ ui-key.yacloud_billing_account.cloud-billing-account.label_wizard-next }}**.
+1. If you selected **{{ ui-key.yacloud_billing.billing.account.create-new.payment-type_label_card }}** as a payment method:
-1. Enter the legal information of your organization and your contact details.
+ 1. Enter the legal information of your organization and your contact details.
-1. Enter your current email address and phone number. Contact details are required not only to reach you, but also to issue payment invoices and send financial documents. If you have already signed up for {{ yandex-cloud }}, check that your contact details are correct.
+ {% include [contacts-note](contacts-note.md) %}
+ 1. Link your corporate bank card:
+
+ {% include [pin-card-data](pin-card-data.md) %}
+
+ * Confirm that the card is a corporate one and you are authorized to use it.
+
+ * Click **{{ ui-key.yacloud_billing_account.cloud-billing-account.label_wizard-next }}**.
+
+ {% include [payment-card-types](payment-card-types-business.md) %}
+
+ {% include [yandex-account](payment-card-validation.md) %}
+
+ 1. Enter your current email address and phone number. Contact details are required not only to reach you, but also to issue payment invoices and send financial documents. If you have already signed up for {{ yandex-cloud }}, check that your contact details are correct.
+
+1. If you selected **{{ ui-key.yacloud_billing.billing.account.create-new.payment-type_label_invoice }}** as a payment method:
+
+ 1. Enter the legal information of your organization and your contact details.
+
+ 1. Enter your current email address and phone number. Contact details are required not only to reach you, but also to issue payment invoices and send financial documents. If you have already signed up for {{ yandex-cloud }}, check that your contact details are correct.
1. If this is your first {{ yandex-cloud }} billing account, you are eligible for a [trial period](../../billing/concepts/trial-period.md). After it expires, the access to your resources will be suspended. To resume operation, you will need to switch to the [paid version](../../billing/operations/activate-commercial.md).
1. Click **{{ ui-key.yacloud.common.create }}**.
+ If you select the **{{ ui-key.yacloud_billing.billing.account.create-new.payment-type_label_invoice }}** payment method or if the payer is a non-resident of Russia and Kazakhstan, further instructions will be emailed to you at the address specified in your Yandex or Yandex 360 account. It may take up to three business days to activate your billing account.
- Further instructions will be emailed to you at the address specified in your Yandex or Yandex 360 account. It may take up to three business days to activate your billing account.
-
+ Email the following documents to [{{ billing-docs-email }}](mailto:{{ billing-docs-email }}):
+ * Copy of the minutes or resolution on the appointment of the general director
+ * [Billing account](../../billing/concepts/billing-account.md#billing-account-id) ID
diff --git a/en/_includes/billing/card-business-nonresidents.md b/en/_includes/billing/card-business-nonresidents.md
deleted file mode 100644
index 1c51d2c0f7e..00000000000
--- a/en/_includes/billing/card-business-nonresidents.md
+++ /dev/null
@@ -1,5 +0,0 @@
-{% note info %}
-
-Payment by credit/debit card is not available for non-residents of Russia and Kazakhstan.
-
-{% endnote %}
diff --git a/en/_includes/billing/contract.md b/en/_includes/billing/contract.md
index 2be9f4deae1..cbfea898f73 100644
--- a/en/_includes/billing/contract.md
+++ b/en/_includes/billing/contract.md
@@ -1 +1 @@
-In {{ yandex-cloud }}, all services are provided under an agreement you enter into by accepting an [offer]({{ billing-oferta-url }}?lang=en) when creating your [billing account](../../billing/concepts/billing-account.md). The agreement does not need to be signed by both parties.
+In {{ yandex-cloud }}, all services are provided under an agreement you enter into by accepting an offer when creating your [billing account](../../billing/concepts/billing-account.md). The agreement does not need to be signed by both parties.
diff --git a/en/_includes/billing/legal-entity-nonresidents.md b/en/_includes/billing/legal-entity-nonresidents.md
new file mode 100644
index 00000000000..e323e1d951f
--- /dev/null
+++ b/en/_includes/billing/legal-entity-nonresidents.md
@@ -0,0 +1,5 @@
+{% note info %}
+
+If you are a non-resident of Russia or Kazakhstan, specify the bank details of the legal entity you signed the [agreement](../../billing/concepts/contract.md) with when [creating your billing account](../../billing/operations/create-new-account.md).
+
+{% endnote %}
diff --git a/en/_includes/billing/non-residents-functional-access.md b/en/_includes/billing/non-residents-functional-access.md
new file mode 100644
index 00000000000..ba0ed7b229b
--- /dev/null
+++ b/en/_includes/billing/non-residents-functional-access.md
@@ -0,0 +1,5 @@
+{% note info %}
+
+This feature is not available for non-residents of Russia and Kazakhstan.
+
+{% endnote %}
\ No newline at end of file
diff --git a/en/_includes/billing/payment-card-types-business.md b/en/_includes/billing/payment-card-types-business.md
new file mode 100644
index 00000000000..9a989964efc
--- /dev/null
+++ b/en/_includes/billing/payment-card-types-business.md
@@ -0,0 +1,5 @@
+We accept Mir, Visa, and MasterCard.
+
+* Residents of Russia make payments in RUB and can only use bank cards issued by Russian banks. Customers with tax residency in the Republic of Belarus pay for {{ yandex-cloud }} services in RUB with their Belcard cards issued in the Republic of Belarus or Mir cards issued in the Russian Federation.
+* Residents of Kazakhstan make payments in KZT and can only use bank cards issued by non-Russian banks.
+* Non-residents of Russia and Kazakhstan make payments in USD and can only use credit or debit cards issued by non-Russian banks.
diff --git a/en/_includes/billing/payment-card-types.md b/en/_includes/billing/payment-card-types.md
index 895f2ae9149..12326b9500d 100644
--- a/en/_includes/billing/payment-card-types.md
+++ b/en/_includes/billing/payment-card-types.md
@@ -1,4 +1,5 @@
We accept Mir, Visa, and MasterCard.
* Residents of Russia make payments in RUB and can only use bank cards issued by Russian banks.
-* Residents of Kazakhstan make payments in KZT and can only use bank cards issued by non-Russian banks.
\ No newline at end of file
+* Residents of Kazakhstan make payments in KZT and can only use bank cards issued by non-Russian banks.
+* Non-residents of Russia and Kazakhstan make payments in USD and can only use credit or debit cards issued by non-Russian banks.
\ No newline at end of file
diff --git a/en/_includes/cloud-desktop/access-options.md b/en/_includes/cloud-desktop/access-options.md
new file mode 100644
index 00000000000..973cd582105
--- /dev/null
+++ b/en/_includes/cloud-desktop/access-options.md
@@ -0,0 +1 @@
+{{ cloud-desktop-name }} leverages [{{ iam-full-name }} roles](../../cloud-desktop/security/index.md) and [access control lists (ACL)](../../cloud-desktop/concepts/acl.md) to manage access. [This example](../../cloud-desktop/concepts/acl.md#example) shows how access control works in {{ cloud-desktop-name }}.
\ No newline at end of file
diff --git a/en/_includes/cloud-desktop/limits.md b/en/_includes/cloud-desktop/limits.md
index 252509dc0dc..3e6d12a61f7 100644
--- a/en/_includes/cloud-desktop/limits.md
+++ b/en/_includes/cloud-desktop/limits.md
@@ -1,9 +1,9 @@
#### Quotas {#quotas}
-| Type of limit | Value |
+Type of limit | Value
----- | -----
-| Maximum number of desktops per cloud | 5 |
-| Maximum total number of vCPUs per cloud | 10 |
-| Maximum total amount of RAM per cloud | 20 GB |
-| Maximum total HDD storage capacity per cloud | 500 GB |
-| Maximum total SSD storage capacity per cloud | 500 GB |
+Maximum number of desktops per cloud | 5
+Maximum total number of vCPUs per cloud | 10
+Maximum total amount of RAM per cloud | 20 GB
+Maximum total HDD space per cloud | 500 GB
+Maximum total SSD space per cloud | 500 GB
\ No newline at end of file
diff --git a/en/_includes/cns-limits.md b/en/_includes/cns-limits.md
new file mode 100644
index 00000000000..04fba5d51ea
--- /dev/null
+++ b/en/_includes/cns-limits.md
@@ -0,0 +1,27 @@
+#### Quotas {#quotas}
+
+**Type of limit** | **Value**
+----- | -----
+Maximum message size per [push notification](../notifications/concepts/push.md) | 4 KB
+
+#### Limits {#limits}
+
+**Type of limit** | **Value**
+----- | -----
+Maximum number of [push notification channels](../notifications/concepts/push.md#mobile-channel) per cloud | 20
+Maximum number of [SMS notification](../notifications/concepts/sms.md) channels per cloud | 10
+Maximum number of SMS notification channels with a [shared sender ](../notifications/concepts/sms.md) per cloud | 1
+Maximum number of SMS notification channels with an [individual sender](../notifications/concepts/sms.md#individual-sender) per cloud | 10
+Maximum number of [test phone numbers](../notifications/concepts/sms.md#sandbox) per SMS notification channel | 10
+Maximum number of SMS messages per cloud^1^ | 100 per month
+Maximum message size per push notification | 200 KB
+Maximum SMS message length | 1,600 characters (10 segments)
+Maximum name length for a push notification channel | 40 characters
+Maximum length for user data (`CustomUserData`) per mobile endpoint | 256 characters
+Maximum length for a device ID per mobile endpoint | 256 characters
+Maximum rate of requests to create or update notification channel attributes per cloud | 30 requests per second
+Maximum rate of requests to send an SMS message per cloud | 20 requests per second
+Maximum number of SMS messages to verify one test number | 5 per day for one number
+Maximum number of SMS messages to verify test numbers per cloud | 20 per day
+
+^1^ Moving forward, the limit on the maximum number of SMS messages per cloud will become a [quota](#quotas). You will be able to increase it by contacting support.
\ No newline at end of file
diff --git a/en/_includes/code-assistant/auto-manual-modes.md b/en/_includes/code-assistant/auto-manual-modes.md
index 516e19191f5..45a8393c55b 100644
--- a/en/_includes/code-assistant/auto-manual-modes.md
+++ b/en/_includes/code-assistant/auto-manual-modes.md
@@ -1,3 +1,3 @@
{{ ca-name }} analyzes your code context and provides the following types of suggestions:
* Automatic.
-* Upon user request (use **Ctrl** + **Space** or **Ctrl** + **Enter**).
\ No newline at end of file
+* User-triggered (**Ctrl** + **Space**). In Visual Studio Code, you can also use **Ctrl** + **Enter**.
\ No newline at end of file
diff --git a/en/_includes/code-assistant/unable-to-download.md b/en/_includes/code-assistant/unable-to-download.md
new file mode 100644
index 00000000000..cab1edf75bc
--- /dev/null
+++ b/en/_includes/code-assistant/unable-to-download.md
@@ -0,0 +1 @@
+If you cannot download it for any reason, contact your system administrator so that they open network access to {{ yandex-cloud }} resources.
\ No newline at end of file
diff --git a/en/_includes/compute/backup-info.md b/en/_includes/compute/backup-info.md
deleted file mode 100644
index 72771ae2cb7..00000000000
--- a/en/_includes/compute/backup-info.md
+++ /dev/null
@@ -1,3 +0,0 @@
-(Optional) To back up your VMs automatically using [{{ backup-name }}](../../backup/), under **{{ ui-key.yacloud.compute.instances.create.section_additional }}**, select how your VM should connect to the service.
-
-For more information, see [{#T}](../../backup/concepts/vm-connection.md).
diff --git a/en/_includes/compute/create-from-snapshot.md b/en/_includes/compute/create-from-snapshot.md
index c8f3c93ebb7..d1a46c691d2 100644
--- a/en/_includes/compute/create-from-snapshot.md
+++ b/en/_includes/compute/create-from-snapshot.md
@@ -3,109 +3,69 @@
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder to create the virtual machine in.
- 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
- 1. At the top right, click **{{ ui-key.yacloud.compute.instances.button_create }}**.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
-
- * Enter a name and description for the VM. The naming requirements are as follows:
-
- {% include [name-format](../name-format.md) %}
-
- {% include [name-fqdn](../compute/name-fqdn.md) %}
-
- * Select an [availability zone](../../overview/concepts/geo-scope.md) to put your virtual machine in.
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, choose a snapshot:
-
- * Go to the **{{ ui-key.yacloud.compute.instances.create.image_value_custom_new }}** tab and click **{{ ui-key.yacloud.common.select }}**.
- * In the window that opens, go to the **{{ ui-key.yacloud.compute.instances.create-disk.value_source-snapshot }}** tab.
- * Select a disk snapshot from the list and click **{{ ui-key.yacloud.common.apply }}**.
-
-
- 1. {% include [encryption-section-boot](encryption-section-boot.md) %}
-
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, [add a disk](../../compute/operations/vm-create/create-from-disks.md):
-
- * Click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
- * Enter the disk name.
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder) to create your VM in.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
+ 1. In the left-hand panel, select ![image](../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
+ 1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**:
+
+ * Go to the **{{ ui-key.yacloud.compute.instances.create.image_value_custom_new }}** tab.
+ * Click ![image](../../_assets/console-icons/pencil.svg), and, in the window that opens, select **{{ ui-key.yacloud.common.create-new }}**.
+ * In the **{{ ui-key.yacloud.compute.instances.create-disk.field_source }}** field, select `{{ ui-key.yacloud.compute.instances.create-disk.value_source-snapshot }}` and then select the disk snapshot you need from the list below. Use filters if you need to.
+ * Enter a name for the new boot disk.
* Select the [disk type](../../compute/concepts/disk.md#disks_types).
- * Specify the required block size.
- * Specify the required disk size.
-
-
- * {% include [encryption-section-secondary](encryption-section-secondary.md) %}
-
-
- * (Optional) Enable the **{{ ui-key.yacloud.compute.field_disk-autodelete }}** option if you need to automatically delete the disk when deleting the VM it will be attached to.
- * Select `{{ ui-key.yacloud.compute.instances.create-disk.value_source-snapshot }}` as content.
- * Click **{{ ui-key.yacloud.compute.instances.create-disk.button_create }}**.
-
-
- 1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, select the **{{ ui-key.yacloud.compute.nfs.label_filesystems }}** tab and attach the [file storage](../../compute/concepts/filesystem.md):
-
- * Click **{{ ui-key.yacloud.compute.nfs.button_attach-filesystem-to-the-instance }}**.
- * In the window that opens, select the file storage.
- * Enter the device name.
- * Click **{{ ui-key.yacloud.compute.nfs.button_attach-filesystem-to-the-instance }}**.
-
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
-
- * Choose a [platform](../../compute/concepts/vm-platforms.md).
- * Specify the [guaranteed share](../../compute/concepts/performance-levels.md) and the required number of vCPUs, as well as the amount of RAM.
- * If required, make your VM [preemptible](../../compute/concepts/preemptible-vm.md).
- * (Optional) Enable a [software-accelerated network](../../compute/concepts/software-accelerated-network.md).
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
-
- {% include [network-settings](network-settings.md) %}
-
-
- 1. {% include [backup-info](backup-info.md) %}
-
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the instance:
+ * Specify the required disk and block size.
+ * (Optional) Enable the **{{ ui-key.yacloud.compute.field_disk-autodelete }}** option in the **{{ ui-key.yacloud.compute.field_additional }}** field if you need to automatically delete this disk when deleting the VM.
+ * Click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
- * (Optional) Select or create a [service account](../../iam/concepts/users/service-accounts.md). With a service account, you can flexibly configure access rights for your resources.
- * Enter the username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
+ 1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select an [availability zone](../../overview/concepts/geo-scope.md) to place your VM in.
+ 1. Add a secondary [disk](../../compute/concepts/disk.md):
- {% note alert %}
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, click **{{ ui-key.yacloud.compute.instances.create-disk.button_create }}**
+ * In the window that opens, select **{{ ui-key.yacloud.compute.instances.create-disk.value_source-disk }}** → `Create new`.
+ * In the **{{ ui-key.yacloud.compute.instances.create-disk.field_source }}** field, select `{{ ui-key.yacloud.compute.instances.create-disk.value_source-snapshot }}`.
+ * Enter a name for the new disk.
+ * Select the [disk type](../../compute/concepts/disk.md#disks_types).
+ * Specify the required disk and block size.
+ * (Optional) Enable the **{{ ui-key.yacloud.compute.field_disk-autodelete }}** option in the **{{ ui-key.yacloud.compute.field_additional }}** field if you need to automatically delete this disk when deleting the VM.
+ * Click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
- Do not use the `root` username or other names reserved by the operating system. To perform operations that require superuser permissions, use the `sudo` command.
+ 1. {% include [encryption-section-secondary](encryption-section-secondary.md) %}
+ 1. {% include [section-storages-filesystem](create/section-storages-filesystem.md) %}
+ 1. {% include [section-platform](create/section-platform.md) %}
+ 1. {% include [network-settings](create/section-network.md) %}
+ 1. {% include [section-access](create/section-access.md) %}
- {% endnote %}
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name:
- * In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
- * If required, grant access to the [serial console](../../compute/operations/serial-console/index.md).
+ {% include [name-format](../name-format.md) %}
- {% include [vm-connect-linux](../vm-connect-linux.md) %}
+ {% include [name-fqdn](../compute/name-fqdn.md) %}
- 1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_placement }}**, select a VM [placement group](../../compute/concepts/placement-groups.md).
- 1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
+ 1. {% include [section-additional](../../_includes/compute/create/section-additional.md) %}
+ 1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
- The virtual machine will appear in the list. When a VM is created, it is assigned an [IP address](../../vpc/concepts/address.md) and [host name](../../vpc/concepts/address.md#fqdn) (FQDN).
+ You will see the new VM in the list. Every new VM gets an [IP address](../../vpc/concepts/address.md) and [host name](../../vpc/concepts/address.md#fqdn) (FQDN).
- CLI {#cli}
- {% include [cli-install](../cli-install.md) %}
+ {% include [cli-install](../cli-install.md) %}
- {% include [default-catalogue](../default-catalogue.md) %}
+ {% include [default-catalogue](../default-catalogue.md) %}
- 1. View the description of the CLI command for creating a VM:
+ 1. View the description of the CLI command for creating a VM:
```
yc compute instance create --help
```
- 1. Prepare snapshots of the required disks, see [{#T}](../../compute/operations/disk-control/create-snapshot.md).
- 1. Get a list of snapshots in the default folder:
+ 1. Prepare the snapshots of the disks, see [{#T}](../../compute/operations/disk-control/create-snapshot.md).
+ 1. Get a list of snapshots in the default folder:
{% include [compute-snapshot-list](../../compute/_includes_service/compute-snapshot-list.md) %}
- 1. Select the `ID`s or `NAME`s of the snapshots you need.
- 1. Create a VM in the default folder:
+ 1. Select the IDs (`ID`) or names (`NAME`) of the snapshots you need.
+ 1. Create a VM in the default folder:
```
yc compute instance create \
@@ -117,7 +77,7 @@
--ssh-key ~/.ssh/id_ed25519.pub
```
- This command creates a VM named `first-instance` in the `{{ region-id }}-a` availability zone, with a public IP and the disks from the snapshots.
+ This command creates a VM named `first-instance` in the `{{ region-id }}-a` availability zone, with a public IP and disks from the snapshots.
{% include [name-fqdn](name-fqdn.md) %}
@@ -128,6 +88,6 @@
- API {#api}
- Use the [create](../../compute/api-ref/Instance/create.md) REST API method for the [Instance](../../compute/api-ref/Instance/) resource or the [InstanceService/Create](../../compute/api-ref/grpc/Instance/create.md) gRPC API call.
+ Use the [create](../../compute/api-ref/Instance/create.md) REST API method for the [Instance](../../compute/api-ref/Instance/) resource or the [InstanceService/Create](../../compute/api-ref/grpc/Instance/create.md) gRPC API call.
{% endlist %}
diff --git a/en/_includes/compute/create/access-ssh-key.md b/en/_includes/compute/create/access-ssh-key.md
new file mode 100644
index 00000000000..3a4f071ad3b
--- /dev/null
+++ b/en/_includes/compute/create/access-ssh-key.md
@@ -0,0 +1,4 @@
+In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
+
+You need to create a key pair for the SSH connection yourself. To learn how, see [Connecting to a VM via SSH](../../../compute/operations/vm-connect/ssh.md).
+
diff --git a/en/_includes/compute/create/change-custom-disk-settings-image.md b/en/_includes/compute/create/change-custom-disk-settings-image.md
new file mode 100644
index 00000000000..68100fa8c55
--- /dev/null
+++ b/en/_includes/compute/create/change-custom-disk-settings-image.md
@@ -0,0 +1 @@
+To create a VM instance from an existing boot disk, go to the **{{ ui-key.yacloud.compute.instances.create.image_value_custom_new }}** tab and select the boot disk you need. To update its settings, click ![image](../../../_assets/console-icons/pencil.svg) next to the disk name.
\ No newline at end of file
diff --git a/en/_includes/compute/create/change-custom-disk-settings-storages.md b/en/_includes/compute/create/change-custom-disk-settings-storages.md
new file mode 100644
index 00000000000..26c2e2d54fd
--- /dev/null
+++ b/en/_includes/compute/create/change-custom-disk-settings-storages.md
@@ -0,0 +1 @@
+If you are creating a VM instance from an existing boot disk, update the settings of that disk in the **{{ ui-key.yacloud.compute.instances.create.image_value_custom_new }}** tab under **{{ ui-key.yacloud.compute.instances.create.section_image }}** at the top of the form.
\ No newline at end of file
diff --git a/en/_includes/compute/create/create-vm-with-gpu-console.md b/en/_includes/compute/create/create-vm-with-gpu-console.md
index a8e0607d18a..60decc0f0f3 100644
--- a/en/_includes/compute/create/create-vm-with-gpu-console.md
+++ b/en/_includes/compute/create/create-vm-with-gpu-console.md
@@ -1,79 +1,44 @@
-1. In the [management console]({{ link-console-main }}), select the folder to create the virtual machine in.
+1. In the [management console]({{ link-console-main }}), select the folder to create your VM in.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
-1. At the top right, click **{{ ui-key.yacloud.compute.instances.button_create }}**.
-1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
- * Enter a name and description for the VM. The naming requirements are as follows:
-
- {% include [name-format](../../name-format.md) %}
-
- {% include [name-fqdn](../name-fqdn.md) %}
-
- * Select an [availability zone](../../../overview/concepts/geo-scope.md) to place your virtual machine in.
-
-
- {% include [gpu-zones](../gpu-zones.md) %}
-
-
-
+1. In the left-hand panel, select ![image](../../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
+1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
1. Select one of the [GPU-oriented images](/marketplace?search=gpu) and OS version under **{{ ui-key.yacloud.compute.instances.create.section_image }}** in the **{{ ui-key.yacloud.compute.instances.create.image_value_marketplace }}** tab.
- {% include [gpu-os](../gpu-os.md) %}
-
-1. (Optional) Configure the boot disk under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**:
- * Select the [disk type](../../../compute/concepts/disk.md#disks_types).
- * Specify the required disk size.
-
+ {% include [gpu-os](../gpu-os.md) %}
- * {% include [encryption-section-boot](../../../_includes/compute/encryption-section-boot.md) %}
+1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select an [availability zone](../../../overview/concepts/geo-scope.md) to place your VM in.
+1. (Optional) Configure the boot [disk](../../../compute/concepts/disk.md) under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**:
+ * Select the [disk type](../../../compute/concepts/disk.md#disks_types).
+ * Specify the required disk size.
+ * {% include [encryption-section-secondary](../encryption-section-secondary.md) %}
+ If you are creating a VM from an existing boot disk, update the settings of that disk in the **{{ ui-key.yacloud.compute.instances.create.image_value_custom_new }}** tab under **{{ ui-key.yacloud.compute.instances.create.section_image }}** at the top of the form.
-1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, select the **{{ ui-key.yacloud.compute.nfs.label_filesystems }}** tab and attach the [file storage](../../../compute/concepts/filesystem.md):
-
- * Click **{{ ui-key.yacloud.compute.nfs.button_attach-filesystem-to-the-instance }}**.
- * In the window that opens, select the file storage.
- * Enter the device name.
- * Click **{{ ui-key.yacloud.compute.nfs.button_attach-filesystem-to-the-instance }}**.
-
-
+1. {% include [section-storages-secondary-disk](section-storages-secondary-disk.md) %}
+1. {% include [section-storages-filesystem](section-storages-filesystem.md) %}
1. Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../../../compute/concepts/vm-platforms.md#gpu-platforms):
-
-
- * {{ v100-broadwell }}
- * {{ v100-cascade-lake }}
- * {{ a100-epyc }}
- * {{ t4-ice-lake }}
-
-
-
- * Select a VM [configuration](../../../compute/concepts/gpus.md#config) specifying the required number of GPUs.
- * Make your VM [preemptible](../../../compute/concepts/preemptible-vm.md), if required.
-
-
-1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
-
- {% include [network-settings](../../../_includes/compute/network-settings.md) %}
-
-1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data required to access the VM:
- * (Optional) Select or create a [service account](../../../iam/concepts/index.md#sa). With a service account, you can flexibly configure access rights for your resources.
- For VMs with a Linux-based operating system:
- * Enter the username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
+ * Go to the **{{ ui-key.yacloud.component.compute.resources.label_tab-gpu }}** tab.
+ * Choose a [platform](../../../compute/concepts/vm-platforms.md#gpu-platforms):
- {% note alert %}
+ * {{ v100-broadwell }}
+ * {{ v100-cascade-lake }}
+ * {{ a100-epyc }}
+ * {{ t4-ice-lake }}
- Do not use the `root` username or other names reserved by the operating system. To perform operations that require superuser permissions, use the `sudo` command.
+ * Select one of the available configurations with the required GPUs, vCPUs, and amount of RAM.
- {% endnote %}
+1. {% include [network-settings](section-network.md) %}
+1. {% include [section-access](section-access.md) %}
- * In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
+1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name:
- * (Optional) Enable access to the [serial console](../../../compute/operations/index.md#serial-console), if required.
+ {% include [name-format](../../name-format.md) %}
- {% include [vm-connect-linux](../../../_includes/vm-connect-linux.md) %}
+ {% include [name-fqdn](../../compute/name-fqdn.md) %}
-1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_placement }}**, select a VM [placement group](../../../compute/concepts/placement-groups.md).
+1. {% include [section-additional](section-additional.md) %}
1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
-The virtual machine will appear in the list.
+The virtual machine will appear in the list.
\ No newline at end of file
diff --git a/en/_includes/compute/create/section-access.md b/en/_includes/compute/create/section-access.md
new file mode 100644
index 00000000000..ad3f6e46cd7
--- /dev/null
+++ b/en/_includes/compute/create/section-access.md
@@ -0,0 +1,17 @@
+Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data for access to the VM:
+
+* (Optional) [Enable VM access via OS Login](../../../compute/operations/vm-connect/os-login.md). The option is available for Linux images from [{{ marketplace-name }}](/marketplace) with `OS Login` in their names.
+* Enter the username into the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
+
+ {% note alert %}
+
+ Do not use `root` or other usernames reserved by the OS. To perform operations requiring superuser permissions, use the `sudo` command.
+
+ {% endnote %}
+
+* In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file. You need to create a key pair for the SSH connection yourself. To learn how, see [Connecting to a VM via SSH](../../../compute/operations/vm-connect/ssh.md).
+
+If you want to add several users with SSH keys to the VM at the same time, [specify](../../../compute/concepts/vm-metadata.md#how-to-send-metadata) these users' data under **{{ ui-key.yacloud.common.metadata }}**. You can also use metadata to [install additional software](../../../compute/operations/vm-create/create-with-cloud-init-scripts.md) on a VM when creating it.
+
+{% include [vm-connect-linux](../../vm-connect-linux.md) %}
+
diff --git a/en/_includes/compute/create/section-additional.md b/en/_includes/compute/create/section-additional.md
new file mode 100644
index 00000000000..8d7d95fbcfc
--- /dev/null
+++ b/en/_includes/compute/create/section-additional.md
@@ -0,0 +1,9 @@
+Under **{{ ui-key.yacloud.compute.instances.create.section_additional }}**:
+
+* (Optional) Select or create a [service account](../../../iam/concepts/users/service-accounts.md). With a service account, you can flexibly configure access rights for your resources.
+* (Optional) Grant access to the [serial console](../../../compute/operations/serial-console/index.md).
+* (Optional) Under **Backup**, enable **{{ ui-key.yacloud.compute.instances.create.action_activate-backup }}** and select or create a [backup policy](../../../backup/concepts/policy.md) to back up your VMs automatically using [{{ backup-name }}](../../../backup/index.yaml).
+
+ For more information, see [{#T}](../../../backup/concepts/vm-connection.md).
+* (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_monitoring }}**, enable the **{{ ui-key.yacloud.compute.instances.create.unified-agent }}** option to configuire delivery of [metrics](../../../compute/metrics.md) to [{{ monitoring-full-name }}](../../../compute/monitoring/).
+* (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_placement }}**, select a VM [placement group](../../../compute/concepts/placement-groups.md).
\ No newline at end of file
diff --git a/en/_includes/compute/create/section-network.md b/en/_includes/compute/create/section-network.md
new file mode 100644
index 00000000000..4d948baa325
--- /dev/null
+++ b/en/_includes/compute/create/section-network.md
@@ -0,0 +1,33 @@
+Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
+
+* In the **{{ ui-key.yacloud.component.compute.network-select.field_subnetwork }}** field, enter the ID of a subnet in the new VM’s availability zone. Alternatively, you can select a [cloud network](../../../vpc/concepts/network.md#network) from the list.
+
+ * Each network must have at least one [subnet](../../../vpc/concepts/network.md#subnet). If there is no subnet, create one by selecting **{{ ui-key.yacloud.component.vpc.network-select.button_create-subnetwork }}**.
+ * If you do not have a network, click **{{ ui-key.yacloud.component.vpc.network-select.button_create-network }}** to create one:
+
+ * In the window that opens, enter the network name and select the folder to host the network.
+ * (Optional) Select the **{{ ui-key.yacloud.vpc.networks.create.field_is-default }}** option to automatically create subnets in all availability zones.
+ * Click **{{ ui-key.yacloud.vpc.networks.create.button_create }}**.
+
+* In the **{{ ui-key.yacloud.component.compute.network-select.field_external }}** field, choose a method for assigning an IP address:
+
+ * `{{ ui-key.yacloud.component.compute.network-select.switch_auto }}`: Assign a random IP address from the {{ yandex-cloud }} IP address pool. In this case, you can enable [DDoS protection](../../../vpc/ddos-protection/index.md) using the option below.
+ * `{{ ui-key.yacloud.component.compute.network-select.switch_list }}`: Select a public IP address from the list of previously reserved static addresses. For more information, see [{#T}](../../../vpc/operations/set-static-ip.md).
+ * `{{ ui-key.yacloud.component.compute.network-select.switch_none }}`: Do not assign a public IP address.
+
+* Select the [appropriate security groups](../../../vpc/concepts/security-groups.md). If you leave this field empty, the default security group will be assigned to the VM.
+
+* Expand the **{{ ui-key.yacloud.component.compute.network-select.section_additional }}** section and select a method for internal IP address assignment in the **{{ ui-key.yacloud.component.internal-v4-address-field.field_internal-ipv4-address }}** field:
+
+ * `{{ ui-key.yacloud.common.label_auto }}`: Assign a random IP address from the pool of IP addresses available in the selected subnet.
+ * `{{ ui-key.yacloud.common.label_list }}`: Select a private IP address from the list of previously reserved IP addresses. Click **{{ ui-key.yacloud.component.internal-v4-address-field.button_internal-address-reserve }}** to reserve a private IP address in the selected subnet if needed.
+ * Enable the **{{ ui-key.yacloud.common.field_ddos-protection-provider }}** option, if needed. The option is available if you previously selected the automatic IP assignment method in the public address settings.
+
+* (Optional) Create records for the VM in the [DNS zone](../../../dns/concepts/dns-zone.md):
+
+ * Expand the **{{ ui-key.yacloud.dns.label_dns-internal-settings }}** section and click **{{ ui-key.yacloud.dns.button_add-record }}**.
+ * Specify the zone, FQDN, and TTL for the record. When setting the FQDN, you can select `{{ ui-key.yacloud.dns.label_auto-select-zone }}` for the zone.
+ You can add multiple records to [internal DNS zones](../../../dns/concepts/dns-zone.md). For more information, see [Cloud DNS integration with Compute Cloud](../../../dns/concepts/compute-integration.md).
+ * To create another record, click **{{ ui-key.yacloud.dns.button_add-record }}**.
+
+If you want to attach an additional [network interface](../../../compute/concepts/network.md) to your VM, click **{{ ui-key.yacloud.compute.instances.create.label_add-network-interface }}** and repeat the settings from this step for the new interface. You can add up to eight network interfaces to a single VM.
\ No newline at end of file
diff --git a/en/_includes/compute/create/section-platform.md b/en/_includes/compute/create/section-platform.md
new file mode 100644
index 00000000000..b76474f9753
--- /dev/null
+++ b/en/_includes/compute/create/section-platform.md
@@ -0,0 +1,7 @@
+Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**, select a preset configuration or create a new one. To create a configuration:
+
+* Go to the **{{ ui-key.yacloud.component.compute.resources.label_tab-custom }}** tab.
+* Choose a [platform](../../../compute/concepts/vm-platforms.md).
+* Specify the [guaranteed share](../../../compute/concepts/performance-levels.md) and required number of vCPUs, as well as RAM size.
+* Enable a [software-accelerated network](../../../compute/concepts/software-accelerated-network.md) if needed.
+* If required, make your VM [preemptible](../../../compute/concepts/preemptible-vm.md).
\ No newline at end of file
diff --git a/en/_includes/compute/create/section-storages-filesystem.md b/en/_includes/compute/create/section-storages-filesystem.md
new file mode 100644
index 00000000000..f431515b0df
--- /dev/null
+++ b/en/_includes/compute/create/section-storages-filesystem.md
@@ -0,0 +1,9 @@
+(Optional) Connect a [file storage](../../../compute/concepts/filesystem.md):
+
+* Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, click **{{ ui-key.yacloud.compute.instances.create-disk.button_create }}**.
+
+ * In the window that opens, select **File storage** and select the storage you want to connect from the list.
+
+ If you do not have any file storages, click **{{ ui-key.yacloud.compute.nfs.button_create-filesystem }}** to create a new one.
+
+ * Click **Add file storage**.
\ No newline at end of file
diff --git a/en/_includes/compute/create/section-storages-secondary-disk.md b/en/_includes/compute/create/section-storages-secondary-disk.md
new file mode 100644
index 00000000000..b856fec677d
--- /dev/null
+++ b/en/_includes/compute/create/section-storages-secondary-disk.md
@@ -0,0 +1,14 @@
+(Optional) Add a secondary [disk](../../../compute/concepts/disk.md):
+
+* Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, click **{{ ui-key.yacloud.compute.instances.create-disk.button_create }}**
+* In the window that opens, select **{{ ui-key.yacloud.compute.instances.create-disk.value_source-disk }}**. You can select an existing disk or create a new one, either empty or from a snapshot / image.
+
+ For example, to create a new empty disk:
+
+ * Select `Create new`.
+ * In the **{{ ui-key.yacloud.compute.instances.create-disk.field_source }}** field, select `{{ ui-key.yacloud.compute.instances.create-disk.value_source-none }}`.
+ * Specify the disk name.
+ * Select the [disk type](../../../compute/concepts/disk.md#disks_types).
+ * Specify the required disk size and block size.
+ * (Optional) Enable the **{{ ui-key.yacloud.compute.field_additional }}** option in the **{{ ui-key.yacloud.compute.field_disk-autodelete }}** field if you need to automatically delete this disk when deleting the VM.
+ * Click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
\ No newline at end of file
diff --git a/en/_includes/compute/encryption-section-boot.md b/en/_includes/compute/encryption-section-boot.md
deleted file mode 100644
index 59e0eb7d520..00000000000
--- a/en/_includes/compute/encryption-section-boot.md
+++ /dev/null
@@ -1,9 +0,0 @@
-(Optional) To [encrypt](../../compute/concepts/encryption.md) a boot disk, under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, configure encryption parameters for the disk:
-
-* Select the **Encrypted disk** option.
-* In the **{{ kms-short-name }} Key** field, select the [key](../../kms/concepts/key.md) with which you want to encrypt the disk. To [create](../../kms/operations/key.md#create) a new key, click **Create**.
-* In the **Service account** field, select the [service account](../../iam/concepts/users/service-accounts.md) with the `kms.keys.encrypterDecrypter` [role](../../kms/security/index.md#kms-keys-encrypterDecrypter) for the specified key. To [create](../../iam/operations/sa/create.md) a service account, click **Create**.
-
-{% include [encryption-preview-note](encryption-preview-note.md) %}
-
-{% include [encryption-keys-note](encryption-keys-note.md) %}
diff --git a/en/_includes/compute/encryption-section-secondary.md b/en/_includes/compute/encryption-section-secondary.md
index 8ef8a8565e5..be56726843b 100644
--- a/en/_includes/compute/encryption-section-secondary.md
+++ b/en/_includes/compute/encryption-section-secondary.md
@@ -1 +1,9 @@
-(Optional) To encrypt a disk, configure encryption parameters.
+(Optional) To [encrypt](../../compute/concepts/encryption.md) a boot disk or a secondary disk, under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, click ![image](../../_assets/console-icons/pencil.svg) to the right of the disk name and set encryption parameters for the disk:
+
+* Select **{{ ui-key.yacloud.compute.disk-form.label_disk-encryption }}**.
+* In the **{{ ui-key.yacloud.compute.disk-form.label_disk-kms-key }}** field, select the [key](../../kms/concepts/key.md) to encrypt the disk with. To [create](../../kms/operations/key.md#create) a new key, click **{{ ui-key.yacloud.component.symmetric-key-select.button_create-key-new }}**.
+* In the **{{ ui-key.yacloud.compute.disk-form.label_service-account }}** field, select a [service account](../../iam/concepts/users/service-accounts.md) with the `kms.keys.encrypterDecrypter` [role](../../kms/security/index.md#kms-keys-encrypterDecrypter) for the specified key. To [create](../../iam/operations/sa/create.md) a service account, click **{{ ui-key.yacloud.component.service-account-select.button_create-account-new }}**.
+
+{% include [encryption-preview-note](encryption-preview-note.md) %}
+
+{% include [encryption-keys-note](encryption-keys-note.md) %}
diff --git a/en/_includes/compute/gpu-os.md b/en/_includes/compute/gpu-os.md
index 83895e8ce21..e2c9fc2b688 100644
--- a/en/_includes/compute/gpu-os.md
+++ b/en/_includes/compute/gpu-os.md
@@ -1,4 +1,3 @@
-
For VMs with GPUs, you can use the following special images of operating systems with NVIDIA drivers:
{{ v100-broadwell }} and {{ v100-cascade-lake }}
@@ -15,5 +14,4 @@ For VMs with GPUs, you can use the following special images of operating systems
: * [Ubuntu 20.04 LTS GPU A100](/marketplace/products/yc/ubuntu-20-04-lts-gpu-a100) (`ubuntu-2004-lts-a100`)
* [Ubuntu 18.04 LTS GPU A100](/marketplace/products/yc/ubuntu-18-04-lts-gpu-a100) (`ubuntu-1804-lts-a100`)
-We recommend using a standard image from {{ yandex-cloud }}. You can also [install the drivers](../../compute/operations/vm-operate/install-nvidia-drivers.md) on another standard image yourself or [create a custom image](../../compute/operations/image-create/custom-image.md) with pre-installed drivers.
-
+We recommend using a standard image from {{ yandex-cloud }}. You can also [install the drivers](../../compute/operations/vm-operate/install-nvidia-drivers.md) on another standard image yourself or [create a custom image](../../compute/operations/image-create/custom-image.md) with pre-installed drivers.
\ No newline at end of file
diff --git a/en/_includes/compute/network-settings.md b/en/_includes/compute/network-settings.md
deleted file mode 100644
index d6d73a9e10c..00000000000
--- a/en/_includes/compute/network-settings.md
+++ /dev/null
@@ -1,29 +0,0 @@
-* Enter a subnet ID or select a [cloud network](../../vpc/concepts/network.md#network) from the list.
- If you do not have a network, click ![image](../../_assets/console-icons/plus.svg) **{{ ui-key.yacloud.component.vpc.network-select.button_create-network }}** to create one:
-
- * In the window that opens, enter the network name and specify the folder to host the network.
- * (Optional) To automatically create subnets, select the **{{ ui-key.yacloud.vpc.networks.create.field_is-default }}** option.
- * Click **{{ ui-key.yacloud.vpc.networks.create.button_create }}**.
- Each network must have at least one [subnet](../../vpc/concepts/network.md#subnet). If there is no subnet, create one by selecting ![image](../../_assets/console-icons/plus.svg) **{{ ui-key.yacloud.component.vpc.network-select.button_create-subnetwork }}**.
-
-* In the **{{ ui-key.yacloud.component.compute.network-select.field_external }}** field, choose a method for assigning an IP address:
-
- * `{{ ui-key.yacloud.component.compute.network-select.switch_auto }}`: Assign a random IP address from the {{ yandex-cloud }} IP pool. With this, you can enable [DDoS protection](../../vpc/ddos-protection/index.md) using the option below.
- * `{{ ui-key.yacloud.component.compute.network-select.switch_list }}`: Select a public IP address from the list of previously reserved static addresses. For more information, see [{#T}](../../vpc/operations/set-static-ip.md).
- * `{{ ui-key.yacloud.component.compute.network-select.switch_none }}`: Do not assign a public IP address.
-
-* Select the [appropriate security groups](../../vpc/concepts/security-groups.md).
-
-* Expand the **{{ ui-key.yacloud.component.compute.network-select.section_additional }}** section and select a method for internal IP address assignment in the **{{ ui-key.yacloud.component.internal-v4-address-field.field_internal-ipv4-address }}** field:
- * `{{ ui-key.yacloud.common.label_auto }}`: Assign a random IP address from the pool of IP addresses available in the selected subnet.
- * `{{ ui-key.yacloud.common.label_list }}`: Select an internal IP address from the list of previously reserved IP addresses. Click **{{ ui-key.yacloud.component.internal-v4-address-field.button_internal-address-reserve }}** to reserve an internal IP address in the selected subnet if needed.
- * Enable the **{{ ui-key.yacloud.common.field_ddos-protection-provider }}** option, if needed. The option is available if you previously selected the automatic IP assignment method in the public address settings.
-
-* (Optional) Create records for the VM in the [DNS zone](../../dns/concepts/dns-zone.md):
-
- * Expand the **{{ ui-key.yacloud.dns.label_dns-internal-settings }}** section and click **{{ ui-key.yacloud.dns.button_add-record }}**.
- * Specify the zone, FQDN, and TTL for the record. When setting the FQDN, you can select `{{ ui-key.yacloud.dns.label_auto-select-zone }}` for the zone.
- You can add multiple records to [internal DNS zones](../../dns/concepts/dns-zone.md). For more information, see [Cloud DNS integration with Compute Cloud](../../dns/concepts/compute-integration.md).
- * To create another record, click **{{ ui-key.yacloud.dns.button_add-record }}**.
-
-If you want to attach an additional [network interface](../../compute/concepts/network.md) to your VM, click **{{ ui-key.yacloud.compute.instances.create.label_add-network-interface }}** and repeat the settings from this step for the new interface. You can add up to eight network interfaces to a single VM.
\ No newline at end of file
diff --git a/en/_includes/compute/os-login-certificate-short-lived.md b/en/_includes/compute/os-login-certificate-short-lived.md
new file mode 100644
index 00000000000..3c56b4035c8
--- /dev/null
+++ b/en/_includes/compute/os-login-certificate-short-lived.md
@@ -0,0 +1,5 @@
+{% note info %}
+
+The certificate is valid for one hour. After this time has elapsed, you will need to [export](../../compute/operations/vm-connect/os-login-export-certificate.md) a new certificate to connect to the VM.
+
+{% endnote %}
\ No newline at end of file
diff --git a/en/_includes/compute/oslogin-connect-cert-enable-in-org.md b/en/_includes/compute/oslogin-connect-cert-enable-in-org.md
new file mode 100644
index 00000000000..7b574f8b23f
--- /dev/null
+++ b/en/_includes/compute/oslogin-connect-cert-enable-in-org.md
@@ -0,0 +1,3 @@
+[Enable](../../organization/operations/os-login-access.md) access via OS Login at the organization level.
+
+To connect to a VM via OS Login using an SSH certificate, enable **{{ ui-key.yacloud_org.form.oslogin-settings.title_ssh-certificate-settings }}**.
\ No newline at end of file
diff --git a/en/_includes/compute/oslogin-connect-instr-create-ssh-key.md b/en/_includes/compute/oslogin-connect-instr-create-ssh-key.md
new file mode 100644
index 00000000000..e15ac7fd797
--- /dev/null
+++ b/en/_includes/compute/oslogin-connect-instr-create-ssh-key.md
@@ -0,0 +1 @@
+[Create](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) an SSH key pair and [add](../../organization/operations/add-ssh.md) the public key to the OS Login profile of a user or [service account](../../iam/concepts/users/service-accounts.md). Remember where your private key is stored, as you will need it to connect to a VM.
\ No newline at end of file
diff --git a/en/_includes/compute/oslogin-connect-instr-list-vms.md b/en/_includes/compute/oslogin-connect-instr-list-vms.md
new file mode 100644
index 00000000000..edc12914668
--- /dev/null
+++ b/en/_includes/compute/oslogin-connect-instr-list-vms.md
@@ -0,0 +1,16 @@
+Get a list of all VMs in the default folder:
+
+```bash
+yc compute instance list
+```
+
+Result:
+
+```text
++----------------------+-----------------+---------------+---------+---------------+--------------+
+| ID | NAME | ZONE ID | STATUS | EXTERNAL IP | INTERNAL IP |
++----------------------+-----------------+---------------+---------+---------------+--------------+
+| fhm0b28lgf********** | first-instance | {{ region-id }}-a | RUNNING | 158.160.**.** | 192.168.0.8 |
+| fhm9gk85nj********** | second-instance | {{ region-id }}-a | RUNNING | 51.250.**.*** | 192.168.0.12 |
++----------------------+-----------------+---------------+---------+---------------+--------------+
+```
\ No newline at end of file
diff --git a/en/_includes/compute/oslogin-connect-key-enable-in-org.md b/en/_includes/compute/oslogin-connect-key-enable-in-org.md
new file mode 100644
index 00000000000..7a4d1239e05
--- /dev/null
+++ b/en/_includes/compute/oslogin-connect-key-enable-in-org.md
@@ -0,0 +1,5 @@
+[Enable](../../organization/operations/os-login-access.md) access via OS Login at the organization level.
+
+To connect to a VM via OS Login using an SSH certificate, enable **{{ ui-key.yacloud_org.form.oslogin-settings.title_user-ssh-key-settings }}**.
+
+To add an SSH key to an organization user profile, enable **{{ ui-key.yacloud_org.form.oslogin-settings.title_allow-edit-own-keys }}**.
\ No newline at end of file
diff --git a/en/_includes/compute/oslogin-connect-with-cli.md b/en/_includes/compute/oslogin-connect-with-cli.md
index 41be9a2a6d0..d416b01dd7e 100644
--- a/en/_includes/compute/oslogin-connect-with-cli.md
+++ b/en/_includes/compute/oslogin-connect-with-cli.md
@@ -1,52 +1,26 @@
To connect to a VM via OS Login with an SSH certificate using the YC CLI:
-1. [Enable](../../organization/operations/os-login-access.md) access via OS Login at the organization level.
-
- To connect to a VM via OS Login with an SSH certificate using the YC CLI, enable **{{ ui-key.yacloud_org.form.oslogin-settings.title_ssh-certificate-settings }}**.
-
+1. {% include [oslogin-connect-cert-enable-in-org](../../_includes/compute/oslogin-connect-cert-enable-in-org.md) %}
1. View the description of the CLI command to connect to a VM:
```bash
yc compute ssh --help
```
-
-1. Get a list of all VMs in the default folder:
+1. {% include [os-login-cli-organization-list](../../_includes/organization/os-login-cli-organization-list.md) %}
+1. {% include [os-login-cli-profile-list](../../_includes/organization/os-login-cli-profile-list.md) %}
+1. {% include [oslogin-connect-instr-list-vms](../../_includes/compute/oslogin-connect-instr-list-vms.md) %}
+1. Connect to the VM:
```bash
- yc compute instance list
- ```
-
- Result:
-
- ```text
- +----------------------+-----------------+---------------+---------+----------------------+
- | ID | NAME | ZONE ID | STATUS | DESCRIPTION |
- +----------------------+-----------------+---------------+---------+----------------------+
- | fhm0b28lgf********** | first-instance | {{ region-id }}-a | RUNNING | my first vm via CLI |
- | fhm9gk85nj********** | second-instance | {{ region-id }}-a | RUNNING | my second vm via CLI |
- +----------------------+-----------------+---------------+---------+----------------------+
+ yc compute ssh \
+ --name
+ --login
+ --internal-address
```
-1. Connect to the VM:
-
- To connect via OS login, use the VM name:
-
- ```bash
- yc compute ssh \
- --name
- ```
-
- When connecting via OS Login, you can specify the VM ID instead of its name:
-
- ```bash
- yc compute ssh \
- --id
- ```
+ Where:
+ * `--name`: Previously obtained VM name. You can specify the VM ID instead of its name by using the `--id` parameter.
+ * `--login`: Previously obtained user or service account login, as set in the OS Login profile. This is an optional parameter. If this parameter is not specified, the connection will use the SSH certificate of the user or service account currently authorized in the YC CLI profile.
+ * (Optional) `--internal-address`: To connect using an internal IP address.
- To connect via OS login by an internal IP address, use the `--internal-address` parameter:
-
- ```bash
- yc compute ssh \
- --name \
- --internal-address
- ```
\ No newline at end of file
+ You can also see the command for VM connection in the [management console]({{ link-console-main }}). On the **{{ ui-key.yacloud.compute.instance.overview.label_title }}** page of the VM you need, under **Connect to VM**, expand the **Connect via the {{ yandex-cloud }} CLI interface** section and select the **Certificate** tab.
\ No newline at end of file
diff --git a/en/_includes/compute/oslogin-connect-with-exported-cert.md b/en/_includes/compute/oslogin-connect-with-exported-cert.md
index 7a5147c7a90..46d02660966 100644
--- a/en/_includes/compute/oslogin-connect-with-exported-cert.md
+++ b/en/_includes/compute/oslogin-connect-with-exported-cert.md
@@ -1,91 +1,26 @@
-You can use a standard SSH client or exported OS Login certificate to connect to a VM with OS Login access enabled. To do this, [assign](../../iam/operations/roles/grant.md) the `compute.osLogin` or `compute.osAdminLogin` role to the user or service account holding the certificate.
+To connect to a VM via OS Login with an SSH certificate using a standard SSH client:
-To connect to a VM via OS Login using a standard SSH client, [export](../../compute/operations/vm-connect/os-login-export-certificate.md) the OS Login certificate to your local computer and specify this certificate when connecting to a VM:
-
-1. [Enable](../../organization/operations/os-login-access.md) access via OS Login at the organization level.
-
- To connect to a VM via OS Login using an SSH certificate over a standard SSH client, enable **{{ ui-key.yacloud_org.form.oslogin-settings.title_ssh-certificate-settings }}**.
-
-1. Get a list of all VMs in the default folder:
-
- ```bash
- yc compute instance list
- ```
-
- Result:
-
- ```text
- +----------------------+-----------------+---------------+---------+---------------+--------------+
- | ID | NAME | ZONE ID | STATUS | EXTERNAL IP | INTERNAL IP |
- +----------------------+-----------------+---------------+---------+---------------+--------------+
- | fhm0b28lgf********** | first-instance | {{ region-id }}-a | RUNNING | 158.160.**.** | 192.168.0.8 |
- | fhm9gk85nj********** | second-instance | {{ region-id }}-a | RUNNING | 51.250.**.*** | 192.168.0.12 |
- +----------------------+-----------------+---------------+---------+---------------+--------------+
- ```
-
-1. Get a [public address](../../vpc/concepts/address.md#public-addresses) of the VM by specifying its ID:
-
- ```bash
- yc compute instance get \
- --id
- ```
-
- {% cut "Result:" %}
-
- ```yaml
- id: fhm0b28lgf**********
- folder_id: b1gt6g8ht345********
- created_at: "2023-12-09T06:23:04Z"
- name: first-instance
- zone_id: {{ region-id }}-a
- platform_id: standard-v3
- resources:
- memory: "2147483648"
- cores: "2"
- core_fraction: "100"
- status: RUNNING
- metadata_options:
- gce_http_endpoint: ENABLED
- aws_v1_http_endpoint: ENABLED
- gce_http_token: ENABLED
- aws_v1_http_token: DISABLED
- boot_disk:
- mode: READ_WRITE
- device_name: epd9m2csd95p********
- auto_delete: true
- disk_id: epd9m2csd95p********
- network_interfaces:
- - index: "0"
- mac_address: d0:0d:87:75:**:**
- subnet_id: e2li9tcgi7ii********
- primary_v4_address:
- address: 192.168.0.8
- one_to_one_nat:
- address: 158.160.**.**
- ip_version: IPV4
- gpu_settings: {}
- fqdn: first-instance.{{ region-id }}.internal
- scheduling_policy: {}
- network_settings:
- type: STANDARD
- placement_policy: {}
- ```
-
- You can find the VM public address in the `network_interfaces.primary_v4_address.one_to_one_nat.address` field.
-
- {% endcut %}
+1. {% include [oslogin-connect-cert-enable-in-org](../../_includes/compute/oslogin-connect-cert-enable-in-org.md) %}
+1. [Export](../../compute/operations/vm-connect/os-login-export-certificate.md) the SSH certificate to your local computer.
+1. {% include [os-login-cli-organization-list](../../_includes/organization/os-login-cli-organization-list.md) %}
+1. {% include [os-login-cli-profile-list](../../_includes/organization/os-login-cli-profile-list.md) %}
+1. {% include [oslogin-connect-instr-list-vms](../../_includes/compute/oslogin-connect-instr-list-vms.md) %}
+ Save the public IP address (the `EXTERNAL IP` value) of the VM you want to connect to.
1. Connect to the VM:
```bash
- ssh -i @
+ ssh -i \
+ -l
```
Where:
- * ``: Path to the previously saved `Identity` file of the certificate. e.g., `/home/user1/.ssh/yc-cloud-id-b1gia87mbaom********-orgusername`.
- * ``: Organization user's name. You can see the username at the end of the exported OS Login certificate. In the example above, it is `orgusername`.
- * ``: VM public IP address obtained earlier.
+ * ``: Path to the certificate’s `Identity` file you exported previously, e.g., `/home/user1/.ssh/yc-cloud-id-b1gia87mbaom********-orgusername`.
+ * ``: Previously obtained user or [service account](../../iam/concepts/users/service-accounts.md) login, as set in the OS Login profile.
+ * ``: VM public IP address you saved earlier.
+
+ You can also see the command for VM connection in the [management console]({{ link-console-main }}). On the **{{ ui-key.yacloud.compute.instance.overview.label_title }}** page of the VM you need, under **Connect to VM**, expand the **Connect via SSH client** section and select the **Certificate** tab.
If this is your first time connecting to the VM, you will see an unknown host warning:
diff --git a/en/_includes/compute/oslogin-connect-with-key.md b/en/_includes/compute/oslogin-connect-with-key.md
index 540ee1c4310..4f68767af0c 100644
--- a/en/_includes/compute/oslogin-connect-with-key.md
+++ b/en/_includes/compute/oslogin-connect-with-key.md
@@ -1,41 +1,29 @@
-You can use a custom SSH key to connect to VMs with OS Login access enabled. To do this, [create](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) an SSH key, [add](../../organization/operations/add-ssh.md) it to the organization user or service account profile in {{ org-full-name }}, and specify the following when connecting:
+To connect to a VM instance via OS Login with an SSH key using the YC CLI:
-1. [Enable](../../organization/operations/os-login-access.md) access via OS Login at the organization level.
-
- To connect to a VM via OS Login using an SSH key over the YC CLI, enable **{{ ui-key.yacloud_org.form.oslogin-settings.title_user-ssh-key-settings }}**.
-
-1. Get a list of all VMs in the default folder:
+1. {% include [oslogin-connect-key-enable-in-org](../../_includes/compute/oslogin-connect-key-enable-in-org.md) %}
+1. {% include [oslogin-connect-instr-create-ssh-key](../../_includes/compute/oslogin-connect-instr-create-ssh-key.md) %}
+1. View the description of the CLI command to connect to a VM:
```bash
- yc compute instance list
+ yc compute ssh --help
```
-
- Result:
-
- ```text
- +----------------------+-----------------+---------------+---------+---------------+--------------+
- | ID | NAME | ZONE ID | STATUS | EXTERNAL IP | INTERNAL IP |
- +----------------------+-----------------+---------------+---------+---------------+--------------+
- | fhm0b28lgf********** | first-instance | {{ region-id }}-a | RUNNING | 158.160.**.** | 192.168.0.8 |
- | fhm9gk85nj********** | second-instance | {{ region-id }}-a | RUNNING | 51.250.**.*** | 192.168.0.12 |
- +----------------------+-----------------+---------------+---------+---------------+--------------+
- ```
-
+1. {% include [os-login-cli-organization-list](../../_includes/organization/os-login-cli-organization-list.md) %}
+1. {% include [os-login-cli-profile-list](../../_includes/organization/os-login-cli-profile-list.md) %}
+1. {% include [oslogin-connect-instr-list-vms](../../_includes/compute/oslogin-connect-instr-list-vms.md) %}
1. Connect to the VM:
```bash
yc compute ssh \
--name \
--identity-file \
- --login \
+ --login \
--internal-address
```
Where:
-
* `--name`: Previously obtained VM name. You can specify the VM ID instead of its name by using the `--id` parameter.
- * `--identity-file`: Path to the previously saved private SSH key file, e.g., `/home/user1/.ssh/id_ed25519`.
- * `--login`: OS Login username.
+ * `--identity-file`: Path to a private SSH key file, e.g., `/home/user1/.ssh/id_ed25519`.
+ * `--login`: Previously obtained user or service account login, as set in the OS Login profile. This is an optional parameter. If this parameter is not specified, the connection will use the SSH certificate of the user or service account currently authorized in the YC CLI profile.
* (Optional) `--internal-address`: To connect using an internal IP address.
-You will connect to the specified virtual machine using your SSH key. If this is your first time connecting to this VM, a new user profile will be created in the VM's operating system.
\ No newline at end of file
+ You can also see the command for VM connection in the [management console]({{ link-console-main }}). On the **{{ ui-key.yacloud.compute.instance.overview.label_title }}** page of the VM you need, under **Connect to VM**, expand the **Connect via the {{ yandex-cloud }} CLI interface** section and select the **SSH key** tab.
\ No newline at end of file
diff --git a/en/_includes/compute/oslogin-export-certificate.md b/en/_includes/compute/oslogin-export-certificate.md
index d0d63bfb8ae..470275c456a 100644
--- a/en/_includes/compute/oslogin-export-certificate.md
+++ b/en/_includes/compute/oslogin-export-certificate.md
@@ -1,48 +1,34 @@
-To export an OS Login user certificate from an organization to your local computer:
+To export the SSH certificate of a {{ org-name }} organization user or [service account](../../iam/concepts/users/service-accounts.md) to a local computer:
{% list tabs group=instructions %}
+
- CLI {#cli}
{% include [cli-install](../cli-install.md) %}
{% include [default-catalogue](../default-catalogue.md) %}
- 1. See the description of the CLI command for exporting an OS Login certificate to a local directory:
+ 1. See the description of the CLI command for exporting an SSH certificate to a local directory:
```bash
yc compute ssh certificate export --help
```
-
- 1. If you have multiple organizations, get the ID of the organization you want to export the certificate from. If you have a single organization, skip this step.
-
- ```bash
- yc organization-manager organization list
- ```
-
- Result:
-
- ```text
- +----------------------+-------------------------+-------------------------+
- | ID | NAME | TITLE |
- +----------------------+-------------------------+-------------------------+
- | bpf1smsil5q0******** | sample-organization1 | Organization 1 |
- | bpf2c65rqcl8******** | sample-organization2 | Organization 2 |
- | bpf6dne49ue8******** | sample-organization3 | Organization 3 |
- +----------------------+-------------------------+-------------------------+
- ```
-
+ 1. {% include [os-login-cli-organization-list](../../_includes/organization/os-login-cli-organization-list.md) %}
+ 1. {% include [os-login-cli-profile-list](../../_includes/organization/os-login-cli-profile-list.md) %}
1. Export the certificate:
```bash
yc compute ssh certificate export \
+ --login
--organization-id \
--directory
```
Where:
- * `--organization-id`: Previously obtained ID of the organization to export the OS Login certificate from. This is an optional parameter. If omitted, the certificate will be exported from the organization the default folder belongs to.
- * `--directory`: Path to the local directory to save the exported OS Login certificate to. This is an optional parameter. If not specified, the certificate will be saved by default to the `.ssh` home directory of the current PC user (`~/.ssh/`).
+ * `--login`: Previously obtained user or service account login, as set in the OS Login profile. This is an optional parameter. If you do not set this parameter, you will export the SSH certificate of the user or service account currently authorized in the YC CLI profile.
+ * `--organization-id`: Previously obtained ID of the organization to export the SSH certificate from. This is an optional parameter. If omitted, the certificate will be exported from the organization the default folder belongs to.
+ * `--directory`: Path to the local directory to save the exported SSH certificate to. This is an optional parameter. If not specified, the certificate will be saved by default to the `.ssh` home directory of the current PC user (`~/.ssh/`).
Result:
diff --git a/en/_includes/compute/oslogin-ssh-connect-with-ssh-key.md b/en/_includes/compute/oslogin-ssh-connect-with-ssh-key.md
new file mode 100644
index 00000000000..f9df306ffcf
--- /dev/null
+++ b/en/_includes/compute/oslogin-ssh-connect-with-ssh-key.md
@@ -0,0 +1,33 @@
+To connect to a VM instance via OS Login with an SSH key using a standard SSH client:
+
+1. {% include [oslogin-connect-key-enable-in-org](../../_includes/compute/oslogin-connect-key-enable-in-org.md) %}
+1. {% include [oslogin-connect-instr-create-ssh-key](../../_includes/compute/oslogin-connect-instr-create-ssh-key.md) %}
+1. {% include [os-login-cli-organization-list](../../_includes/organization/os-login-cli-organization-list.md) %}
+1. {% include [os-login-cli-profile-list](../../_includes/organization/os-login-cli-profile-list.md) %}
+1. {% include [oslogin-connect-instr-list-vms](../../_includes/compute/oslogin-connect-instr-list-vms.md) %}
+
+ Save the public IP address (the `EXTERNAL IP` value) of the VM you want to connect to.
+1. Connect to the VM:
+
+ ```bash
+ ssh -i \
+ -l
+ ```
+
+ Where:
+
+ * ``: Path to the file containing the private SSH key, e.g., `/home/user1/.ssh/id_ed25519`.
+ * ``: Previously obtained user or service account login, as set in the OS Login profile.
+ * ``: VM public IP address you saved earlier.
+
+ You can also see the command for VM connection in the [management console]({{ link-console-main }}). On the **{{ ui-key.yacloud.compute.instance.overview.label_title }}** page of the VM you need, under **Connect to VM**, expand the **Connect via SSH client** section and select the **SSH key** tab.
+
+ If this is your first time connecting to the VM, you will see an unknown host warning:
+
+ ```text
+ The authenticity of host '158.160.**.** (158.160.**.**)' can't be established.
+ ECDSA key fingerprint is SHA256:PoaSwqxRc8g6iOXtiH7ayGHpSN0MXwUfWHk********.
+ Are you sure you want to continue connecting (yes/no)?
+ ```
+
+ Type `yes` in the terminal and press **Enter**.
\ No newline at end of file
diff --git a/en/_includes/compute/software-accelerated-network.md b/en/_includes/compute/software-accelerated-network.md
index 5d575d99769..b8882ffc3a2 100644
--- a/en/_includes/compute/software-accelerated-network.md
+++ b/en/_includes/compute/software-accelerated-network.md
@@ -3,6 +3,7 @@
In the {{ yandex-cloud }} infrastructure, all VMs run in the [QEMU-KVM](https://en.wikipedia.org/wiki/QEMU) virtualization environment. A *hypervisor* proportionally distributes the computing load across all processor cores allocated to a VM.
The computing load can be logically divided into three parts:
+
* User load: OS processes and user processes run in the OS of a user VM.
* Processes maintaining the operation of [network disks](../../compute/concepts/disk.md).
* Processes for handling the VM's network traffic.
@@ -44,9 +45,9 @@ The [cost](../../compute/pricing.md#software-accelerated-network) of additional
To enable a software-accelerated network:
-* Select the **{{ ui-key.yacloud.component.compute.resources.label_sw-accelerated-net }}** option when [creating a new VM](../../compute/operations/vm-create/create-linux-vm.md) or [reconfigure](../../compute/operations/vm-control/vm-update-resources.md#enable-software-accelerated-network) an existing VM.
+* Select the **{{ ui-key.yacloud.component.compute.resources.field_sw-accelerated-net }}** option when [creating a new VM](../../compute/operations/vm-create/create-linux-vm.md) or [reconfigure](../../compute/operations/vm-control/vm-update-resources.md#enable-software-accelerated-network) an existing VM.
-* Enable the **{{ ui-key.yacloud.component.compute.resources.label_sw-accelerated-net }}** option in the basic VM configuration when [creating an instance group](../../compute/operations/instance-groups/create-fixed-group.md) or set the `network_settings.type` key to `SOFTWARE_ACCELERATED` in the [YAML specification](../../compute/concepts/instance-groups/specification.md).
+* Enable the **{{ ui-key.yacloud.component.compute.resources.field_sw-accelerated-net }}** option in the basic VM configuration when [creating an instance group](../../compute/operations/instance-groups/create-fixed-group.md) or set the `network_settings.type` key to `SOFTWARE_ACCELERATED` in the [YAML specification](../../compute/concepts/instance-groups/specification.md).
## Recommendations for using a software-accelerated network {#use-cases}
diff --git a/en/_includes/data-transfer/fields/postgresql/ui/connection-manager.md b/en/_includes/data-transfer/fields/postgresql/ui/connection-manager.md
index 074bf8d8415..409b9fb465a 100644
--- a/en/_includes/data-transfer/fields/postgresql/ui/connection-manager.md
+++ b/en/_includes/data-transfer/fields/postgresql/ui/connection-manager.md
@@ -1,6 +1,6 @@
**{{ ui-key.yc-data-transfer.data-transfer.console.form.common.console.form.common.Connection.authorization_connman.title }}**: Enables using a database conection via [{{ connection-manager-full-name }}](../../../../../metadata-hub/quickstart/connection-manager.md):
-* **{{ ui-key.yc-data-transfer.data-transfer.console.form.postgres.console.form.postgres.ConnmanConnection.connection_id.title }}**: Specify a connection ID from {{ connection-manager-name }}.
+* **{{ ui-key.yc-data-transfer.data-transfer.console.form.common.console.form.common.ConnmanConnection.connection_id.title }}**: Specify a connection ID from {{ connection-manager-name }}.
* {% include [database](../../../fields/postgresql/ui/database.md) %}
diff --git a/en/_includes/datasphere/dag-load-job-results.md b/en/_includes/datasphere/dag-load-job-results.md
new file mode 100644
index 00000000000..e8576259288
--- /dev/null
+++ b/en/_includes/datasphere/dag-load-job-results.md
@@ -0,0 +1,29 @@
+You can use a DAG operator to load the output file of one job (`result.txt`) and provide it as an input file (`INPUT_DATA`) for another:
+
+{% list tabs group=programming_language %}
+
+- Python {#bash}
+
+ ```python
+ from typing import Dict
+
+ from airflow.decorators import dag, task
+ import pendulum
+
+ from datasphere import SDK
+
+ now = pendulum.now()
+
+ @dag(dag_id='output_files_for_other_job', start_date=now, schedule="@daily", catchup=False)
+ def run():
+ @task(task_id='fork_job')
+ def fork_job(files_job_id: str, fork_source_job_id: str):
+ sdk = SDK()
+ sdk.download_job_files(files_job_id)
+ job = sdk.fork_job(fork_source_job_id, vars={'INPUT_DATA': 'result.txt'})
+ job.wait()
+
+ fork_job('', '')
+ ```
+
+{% endlist %}
\ No newline at end of file
diff --git a/en/_includes/instance-groups/create-autoscaled-group-via-concole.md b/en/_includes/instance-groups/create-autoscaled-group-via-concole.md
index cba26796cbc..94908319339 100644
--- a/en/_includes/instance-groups/create-autoscaled-group-via-concole.md
+++ b/en/_includes/instance-groups/create-autoscaled-group-via-concole.md
@@ -5,13 +5,13 @@
1. Under **{{ ui-key.yacloud.compute.groups.create.section_base }}**:
* Enter a name and description of the instance group. The naming requirements are as follows:
- {% include [name-format](../name-format.md) %}
+ {% include [name-format](../name-format.md) %}
- {% include [name-fqdn](../compute/name-fqdn.md) %}
+ {% include [name-fqdn](../compute/name-fqdn.md) %}
- * Select a [service account](../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete instances in the instance group, assign the `editor` role to the service account. By default, all operations in {{ ig-name }} are performed on behalf of a service account.
+ * Select a [service account](../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete VM instances in the instance group, assign the `editor` role to the service account. By default, all operations in {{ ig-name }} are performed on behalf of a service account.
- {% include [sa-dependence-brief](../../_includes/instance-groups/sa-dependence-brief.md) %}
+ {% include [sa-dependence-brief](../../_includes/instance-groups/sa-dependence-brief.md) %}
* Enable **{{ ui-key.yacloud.compute.groups.create.field_deletion-protection }}** if needed. You cannot delete a group with this option enabled.
1. Under **{{ ui-key.yacloud.compute.groups.create.section_allocation }}**, select the required ones in the **{{ ui-key.yacloud.compute.groups.create.field_zone }}** field. Instances of a group may reside in [different availability zones](../../overview/concepts/geo-scope.md).
@@ -20,48 +20,50 @@
* Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a system to be deployed on the VM instance's boot [disk](../../compute/concepts/disk.md).
* Under **{{ ui-key.yacloud.compute.instances.create.section_disk }}**:
- * Select the [disk type](../../compute/concepts/disk.md#disks_types).
- * Specify the disk size.
- * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
+ * Select the [disk type](../../compute/concepts/disk.md#disks_types).
+ * Specify the disk size.
+ * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
* Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../../compute/concepts/vm-platforms.md).
- * Enter the required number of vCPUs, [guaranteed vCPU performance](../../compute/concepts/performance-levels.md), and the amount of RAM.
+ * Choose a [platform](../../compute/concepts/vm-platforms.md).
+ * Enter the required number of vCPUs, [guaranteed vCPU performance](../../compute/concepts/performance-levels.md), and the amount of RAM.
- * {% include [include](specify-preemptible-vm.md) %}
+ * {% include [include](specify-preemptible-vm.md) %}
- * (Optional) Enable a [software-accelerated network](../../compute/concepts/software-accelerated-network.md).
+ * (Optional) Enable a [software-accelerated network](../../compute/concepts/software-accelerated-network.md).
* Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
- {% include [network-settings-group](../../_includes/compute/network-settings-group.md) %}
+ {% include [network-settings-group](../../_includes/compute/network-settings-group.md) %}
- * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the instance:
- * Select a service account to link to the instance.
- * If you selected a Linux [image](../../compute/concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
- * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data for access to the VM:
+ * Select a service account to link to the instance.
+ * If you selected a Linux [image](../../compute/concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
+ * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
* Click **{{ ui-key.yacloud.compute.groups.create.button_edit }}**.
1. Under **{{ ui-key.yacloud.compute.groups.create.section_deploy }}**:
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-expansion }}** field, specify the number of instances you can exceed the group size by.
+
+ {% include [max-expansion-notice](./max-expansion-notice.md) %}
* In the field **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-unavailable }}**, specify the number of instances you can decrease the group size by.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-creating }}** field, specify how many instances can be created at the same time.
* In **{{ ui-key.yacloud.compute.groups.create.field_deploy-startup-duration }}**, specify the period after which the VM instance will start receiving the load.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-deleting }}** field, specify how many instances can be stopped at the same time.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-strategy }}** field, specify one of the [strategies](../../compute/concepts/instance-groups/policies/deploy-policy.md#strategy):
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ ig-name }} itself chooses which instances to stop when updating or scaling down the group.
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ ig-name }} waits for the instances to stop on their own or be stopped by the user.
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ ig-name }} itself chooses which instances to stop when updating or scaling down the group.
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ ig-name }} waits for the instances to stop on their own or be stopped by the user.
1. Under **{{ ui-key.yacloud.compute.groups.create.section_scale }}**:
* Select the `{{ ui-key.yacloud.compute.groups.create.value_scale-auto }}` [scaling type](../../compute/concepts/instance-groups/scale.md).
* Specify the following:
- * **{{ ui-key.yacloud.compute.groups.create.field_auto-scale-type }}**: `{{ ui-key.yacloud.compute.groups.create.value_scale-zonal }}` autoscaling adjusts the number of VM instances separately for each availability zone specified in the group settings. `{{ ui-key.yacloud.compute.groups.create.value_scale-regional }}` is applied to the entire instance group.
- * **{{ ui-key.yacloud.compute.groups.create.field_min-zone-size }}**.
- * **{{ ui-key.yacloud.compute.groups.create.field_max-size }}**.
- * **{{ ui-key.yacloud.compute.groups.create.field_measurement-duration }}** to average the utilization measurements for each instance in the group.
- * **{{ ui-key.yacloud.compute.groups.create.field_warmup-duration }}**: Startup duration of an instance in the group.
- * **{{ ui-key.yacloud.compute.groups.create.field_cooldown-duration }}**: Interval during which the required number of instances in the group cannot be reduced.
- * **{{ ui-key.yacloud.compute.groups.create.field_initial-size }}**.
+ * **{{ ui-key.yacloud.compute.groups.create.field_auto-scale-type }}**: `{{ ui-key.yacloud.compute.groups.create.value_scale-zonal }}` autoscaling adjusts the number of VM instances separately for each availability zone specified in the group settings. `{{ ui-key.yacloud.compute.groups.create.value_scale-regional }}` does the same for the entire instance group.
+ * **{{ ui-key.yacloud.compute.groups.create.field_min-zone-size }}**.
+ * **{{ ui-key.yacloud.compute.groups.create.field_max-size }}**.
+ * **{{ ui-key.yacloud.compute.groups.create.field_measurement-duration }}** to average the utilization measurements for each instance in the group.
+ * **{{ ui-key.yacloud.compute.groups.create.field_warmup-duration }}**: Startup duration of an instance in the group.
+ * **{{ ui-key.yacloud.compute.groups.create.field_cooldown-duration }}**: Interval during which the required number of instances in the group cannot be reduced.
+ * **{{ ui-key.yacloud.compute.groups.create.field_initial-size }}**.
1. Under **{{ ui-key.yacloud.compute.groups.create.label_custom-metrics }}**, specify:
* In the **{{ ui-key.yacloud.compute.groups.create.field_metric }}** field:
- * [{{ ui-key.yacloud.compute.groups.create.metric-type-cpu }}](../../compute/concepts/instance-groups/scale.md#cpu-utilization): Specify the average CPU utilization level that {{ ig-name }} must support.
- * [{{ ui-key.yacloud.compute.groups.create.metric-type-custom }}](../../compute/concepts/instance-groups/scale.md#custom-metrics): Specify the name of the custom metric and target value that {{ ig-name }} must support.
+ * [{{ ui-key.yacloud.compute.groups.create.metric-type-cpu }}](../../compute/concepts/instance-groups/scale.md#cpu-utilization): Specify the average CPU utilization level that {{ ig-name }} must support.
+ * [{{ ui-key.yacloud.compute.groups.create.metric-type-custom }}](../../compute/concepts/instance-groups/scale.md#custom-metrics): Specify the name of the custom metric and target value that {{ ig-name }} must support.
1. If needed, enable the **{{ ui-key.yacloud.compute.groups.create.section_health-check }}** to get information about the state of instances and their automatic recovery on failure.
* In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-protocol }}** field, select the protocol for the health checks: `{{ ui-key.yacloud.common.label_http }}` or `{{ ui-key.yacloud.common.label_tcp }}`.
* In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-path }}** field (for the HTTP type), specify the URL path for the HTTP check requests sent from {{ ig-name }}.
diff --git a/en/_includes/instance-groups/create-fixed-group-via-concole.md b/en/_includes/instance-groups/create-fixed-group-via-concole.md
index 6ccda0d66ba..7d8bf3a0501 100644
--- a/en/_includes/instance-groups/create-fixed-group-via-concole.md
+++ b/en/_includes/instance-groups/create-fixed-group-via-concole.md
@@ -1,53 +1,55 @@
-1. In the [management console]({{ link-console-main }}), select a folder to create your instance group in.
+1. In the [management console]({{ link-console-main }}), select a folder to create your VM group in.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
1. In the left-hand panel, select ![image](../../_assets/console-icons/layers-3-diagonal.svg) **{{ ui-key.yacloud.compute.switch_groups }}**.
1. Click **{{ ui-key.yacloud.compute.groups.button_create }}**.
1. Under **{{ ui-key.yacloud.compute.groups.create.section_base }}**:
* Enter a name and description of the instance group. The naming requirements are as follows:
- {% include [name-format](../name-format.md) %}
+ {% include [name-format](../name-format.md) %}
- {% include [name-fqdn](../compute/name-fqdn.md) %}
+ {% include [name-fqdn](../compute/name-fqdn.md) %}
- * Select a [service account](../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete instances in the instance group, assign the `editor` role to the service account. By default, all operations in {{ ig-name }} are performed on behalf of a service account.
+ * Select a [service account](../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete VM instances in the instance group, assign the `editor` role to the service account. By default, all operations in {{ ig-name }} are performed on behalf of a service account.
{% include [sa-dependence-brief](../../_includes/instance-groups/sa-dependence-brief.md) %}
* Enable the **{{ ui-key.yacloud.compute.groups.create.field_deletion-protection }}** option, if needed. You cannot delete a group with this option enabled.
-1. Under **{{ ui-key.yacloud.compute.groups.create.section_allocation }}**, select the required ones in the **{{ ui-key.yacloud.compute.groups.create.field_zone }}** field. Instances of a group may reside in [different availability zones](../../overview/concepts/geo-scope.md).
+1. Under **{{ ui-key.yacloud.compute.groups.create.section_allocation }}**, select the required ones in the **{{ ui-key.yacloud.compute.groups.create.field_zone }}** field. VM groups may reside in [different availability zones](../../overview/concepts/geo-scope.md).
1. Under **{{ ui-key.yacloud.compute.groups.create.section_instance }}**, click **{{ ui-key.yacloud.compute.groups.create.button_instance_empty-create }}** to configure a basic instance:
* Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, enter a description for the [template](../../compute/concepts/instance-groups/instance-template.md).
* Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a system to be deployed on the VM instance's boot [disk](../../compute/concepts/disk.md).
* Under **{{ ui-key.yacloud.compute.instances.create.section_disk }}**:
- * Select the [disk type](../../compute/concepts/disk.md#disks_types).
- * Specify the disk size.
- * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
+ * Select the [disk type](../../compute/concepts/disk.md#disks_types).
+ * Specify the disk size.
+ * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
* Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../../compute/concepts/vm-platforms.md).
- * Enter the required number of vCPUs, [guaranteed vCPU performance](../../compute/concepts/performance-levels.md), and the amount of RAM.
+ * Choose a [platform](../../compute/concepts/vm-platforms.md).
+ * Enter the required number of vCPUs, [guaranteed vCPU performance](../../compute/concepts/performance-levels.md), and the amount of RAM.
- * {% include [include](specify-preemptible-vm.md) %}
-
- * (Optional) Enable a [software-accelerated network](../../compute/concepts/software-accelerated-network.md).
+ * {% include [include](specify-preemptible-vm.md) %}
+
+ * (Optional) Enable a [software-accelerated network](../../compute/concepts/software-accelerated-network.md).
* Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
- {% include [network-settings-group](../../_includes/compute/network-settings-group.md) %}
+ {% include [network-settings-group](../../_includes/compute/network-settings-group.md) %}
- * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the instance:
- * Select a service account to link to the instance.
- * If you selected a Linux [image](../../compute/concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
- * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data for access to the VM:
+ * Select a service account to link to the instance.
+ * If you selected a Linux [image](../../compute/concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
+ * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
* Click **{{ ui-key.yacloud.compute.groups.create.button_edit }}**.
1. Under **{{ ui-key.yacloud.compute.groups.create.section_deploy }}**:
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-expansion }}** field, specify the number of instances you can exceed the group size by.
+
+ {% include [max-expansion-notice](./max-expansion-notice.md) %}
* In the field **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-unavailable }}**, specify the number of instances you can decrease the group size by.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-creating }}** field, specify how many instances can be created at the same time.
* In **{{ ui-key.yacloud.compute.groups.create.field_deploy-startup-duration }}**, specify the period after which the VM instance will start receiving the load.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-deleting }}** field, specify how many instances can be stopped at the same time.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-strategy }}** field, specify one of the [strategies](../../compute/concepts/instance-groups/policies/deploy-policy.md#strategy):
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ ig-name }} itself chooses which instances to stop when updating or scaling down the group.
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ ig-name }} waits for the instances to stop on their own or be stopped by the user.
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ ig-name }} itself chooses which instances to stop when updating or scaling down the group.
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ ig-name }} waits for the instances to stop on their own or be stopped by the user.
1. Under **{{ ui-key.yacloud.compute.groups.create.section_scale }}**:
* Select the `{{ ui-key.yacloud.compute.groups.create.value_scale-fixed }}` [scaling type](../../compute/concepts/instance-groups/scale.md).
* Specify the instance group size.
diff --git a/en/_includes/instance-groups/max-expansion-notice.md b/en/_includes/instance-groups/max-expansion-notice.md
new file mode 100644
index 00000000000..639cb92fad6
--- /dev/null
+++ b/en/_includes/instance-groups/max-expansion-notice.md
@@ -0,0 +1 @@
+When bringing the number of VMs in the group to the target value, VMs created in excess of the target under the `max_expansion` quota can remain in the group, while those that existed in the group before may be deleted.
\ No newline at end of file
diff --git a/en/_includes/managed-gitlab/instance-create-console.md b/en/_includes/managed-gitlab/instance-create-console.md
index aa954b015ac..d09ba943cbd 100644
--- a/en/_includes/managed-gitlab/instance-create-console.md
+++ b/en/_includes/managed-gitlab/instance-create-console.md
@@ -18,12 +18,12 @@ Once an instance is created, you cannot change its resource configuration, i.e.,
1. Under **{{ ui-key.yacloud.gitlab.label_configuration-section }}**:
1. Select the instance type.
- 1. Specify the [subnet](../../vpc/concepts/network.md#subnet) where the instance will be hosted. Currently, {{ yandex-cloud }} technical restrictions do not allow selecting a subnet with an address range of `192.168.0.0/24`.
+ 1. Specify the [subnet](../../vpc/concepts/network.md#subnet) where the instance will be hosted. Currently, you cannot select a subnet with the `192.168.0.0/24` address range due to {{ yandex-cloud }} technical restrictions.
The [default security group](../../vpc/concepts/security-groups.md#default-security-group) for the selected [network](../../vpc/concepts/network.md#network) will be used for the instance. If you cannot open the {{ GL }} web interface after creating the instance, create a separate security group and [configure it](../../managed-gitlab/operations/configure-security-group.md) so that the rules allow incoming traffic from the required ports and IP addresses.
1. Select the [disk](../../compute/concepts/disk.md) size.
- 1. Specify the [instance domain name](../../compute/concepts/network.md#hostname): relevant DNS records will be created for it in the `.gitlab.yandexcloud.net` domain.
+ 1. Specify the [instance domain name](../../compute/concepts/network.md#hostname): the required DNS records for this domain name will be automatically created in `.gitlab.yandexcloud.net`.
The domain name must be unique throughout {{ yandex-cloud }}.
@@ -32,6 +32,9 @@ Once an instance is created, you cannot change its resource configuration, i.e.,
* It must not start or end with a dash character.
1. Set up the retention period for automatic backups (in days).
+ 1. (Optional) Enable [code approval rules](../../managed-gitlab/concepts/approval-rules.md). To do this, select the appropriate configuration for approval rules.
+
+ {% include [note-approval-rules-pricing](note-approval-rules-pricing.md) %}
1. Under **{{ ui-key.yacloud.gitlab.label_admin-section }}**, specify:
* **{{ ui-key.yacloud.gitlab.field_admin-email }}**: Email address of the {{ GL }} instance administrator. This mailbox will receive an email with a link for creating a password.
diff --git a/en/_includes/managed-kubernetes/alb-ref/http-backend-group.md b/en/_includes/managed-kubernetes/alb-ref/http-backend-group.md
index bc3e305b48b..aa8209412d2 100644
--- a/en/_includes/managed-kubernetes/alb-ref/http-backend-group.md
+++ b/en/_includes/managed-kubernetes/alb-ref/http-backend-group.md
@@ -108,7 +108,7 @@ Where:
* `tls` (`BackendTLS`)
- TLC connection settings for the load balancer nodes and backend endpoints.
+ TLS connection settings for the load balancer nodes and backend endpoints.
If the field is specified, the load balancer established TLS connections with the backend and compares the certificates received to the certificate specified in the `trustedCa` field. If the field is not specified, the load balancer will make unencrypted connections to the backend.
diff --git a/en/_includes/mdb/list-operations-about.md b/en/_includes/mdb/list-operations-about.md
deleted file mode 100644
index dfcced058b3..00000000000
--- a/en/_includes/mdb/list-operations-about.md
+++ /dev/null
@@ -1,2 +0,0 @@
-The operation list shows the operations performed with clusters and related resources (databases, shards, users, and backup copies).
-
diff --git a/en/_includes/mdb/mgp/cluster-sg-rules.md b/en/_includes/mdb/mgp/cluster-sg-rules.md
index b6ac2e66720..549271e19e3 100644
--- a/en/_includes/mdb/mgp/cluster-sg-rules.md
+++ b/en/_includes/mdb/mgp/cluster-sg-rules.md
@@ -1,9 +1,18 @@
-Set up the cluster security groups to allow any incoming and outgoing traffic over any protocol. To do this, [create rules](../../../vpc/operations/security-group-add-rule.md) for incoming and outgoing traffic:
+1. For incoming traffic:
-* **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-port-range }}**: `{{ port-any }}`
-* **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-protocol }}**: `{{ ui-key.yacloud.vpc.network.security-groups.forms.value_any }}` (`Any`)
-* **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-source }}**: `{{ ui-key.yacloud.vpc.network.security-groups.forms.value_sg-rule-destination-cidr }}`
-* **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-cidr-blocks }}**: `0.0.0.0/0`
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-port-range }}**: `{{ port-mgp }}`.
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-protocol }}**: `{{ ui-key.yacloud.common.label_tcp }}`.
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-source }}**: `{{ ui-key.yacloud.vpc.network.security-groups.forms.value_sg-rule-destination-cidr }}`.
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-cidr-blocks }}**: Range of addresses to connect from.
+
+1. For outgoing traffic:
+
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-port-range }}**: `{{ port-any }}`.
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-protocol }}**: `{{ ui-key.yacloud.vpc.network.security-groups.forms.value_any }}` (`Any`).
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-source }}**: `{{ ui-key.yacloud.vpc.network.security-groups.forms.value_sg-rule-destination-cidr }}`.
+ * **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-rule-cidr-blocks }}**: `0.0.0.0/0`.
+
+ This rule enables {{ mgp-name }} to use external data sources, e.g., PXF or GPFDIST.
diff --git a/en/_includes/mdb/mgp/dbms-settings.md b/en/_includes/mdb/mgp/dbms-settings.md
index 20b5ed163b2..3667e74ea63 100644
--- a/en/_includes/mdb/mgp/dbms-settings.md
+++ b/en/_includes/mdb/mgp/dbms-settings.md
@@ -1,90 +1,200 @@
+* **Gp add column inherits table setting** {{ tag-con }} {{ tag-api }} {#setting-gp-add-column-inherits-table-setting}
+
+ This setting controls whether to apply the data compression parameters (`compresstype`, `compresslevel`, and `blocksize`) specified for the [AOCO table](../../../managed-greenplum/concepts/tables.md) when adding a column.
+
+ By default, the setting is disabled, i.e., the table’s data compression parameters are ignored.
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_add_column_inherits_table_setting).
+
* **Gp workfile compression**{#setting-gp-workfile-compression} {{ tag-con }} {{ tag-api }}
- This setting determines whether temporary files created on the disk during a hash connection or hash aggregation will be compressed.
+ This setting determines whether temporary files created on the disk during a hash connection or hash aggregation will be compressed.
- By default, it is disabled, i.e., temporary files are not compressed.
+ By default, it is disabled, i.e., temporary files are not compressed.
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_compression).
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_compression).
* **Gp workfile limits per query**{#setting-gp-workfile-limits} {{ tag-con }} {{ tag-api }}
- The maximum amount of disk space (in bytes) the temporary files of an active query can occupy in every segment.
+ The maximum amount of disk space (in bytes) the temporary files of an active query can occupy in every segment.
- The maximum value is `1099511627776` (1 TB), the minimum one is `0` (unlimited amount), and the default one is also `0`.
+ The maximum value is `1099511627776` (1 TB), the minimum value is `0` (unlimited amount), and the default value is `0`.
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_limit_per_query).
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_limit_per_query).
* **Gp workfile limit files per query**{#setting-gp-workfile-limit-files} {{ tag-con }} {{ tag-api }}
- The maximum number of temporary files the service creates in a segment to process a single query. If the limit is exceeded, the query will be canceled.
+ The maximum number of temporary files the service creates in a segment to process a single query. If the limit is exceeded, the query will be canceled.
- The maximum value is `100000`, the minimum one is `0` (unlimited number of temporary files), and the default one is `10000`.
+ The maximum value is `100000`, the minimum value is `0` (unlimited number of temporary files), and the default value is `10000`.
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_limit_files_per_query).
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_limit_files_per_query).
* **Gp workfile limit per segment**{#setting-gp-workfile-limit-per-segment} {{ tag-con }} {{ tag-api }}
- The maximum amount of disk space (in bytes) the temporary files of all active queries can occupy in every segment.
+ The maximum amount of disk space (in bytes) the temporary files of all active queries can occupy in every segment.
+
+ The maximum value is `1099511627776` (1 TB), the minimum value is `0` (unlimited amount). The default value [depends on the segment host storage size](#settings-instance-dependent) and is calculated by the formula:
+
+ ```text
+ 0.1 × /
+ ```
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_limit_per_segment).
+
+* **Log connections** {{ tag-con }} {#setting-log-connections}
+
+ This setting controls whether to log a string detailing each successful connection to the {{ GP }} server.
+
+ The setting is disabled by default (no logging).
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_connections).
+
+* **Log disconnections** {{ tag-con }} {#setting-log-disconnections}
+
+ This setting controls whether to log session completion. If the setting is enabled, after each completed client session, a string with the session duration is output to the log.
+
+ The setting is disabled by default (no logging).
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_disconnections).
+
+* **Log error verbosity** {{ tag-con }} {#setting-log-error-verbosity}
+
+ This setting controls the amount of detail written to the {{ GP }} log for each message. Log detail levels in ascending order of verbosity:
+
+ * `terse`.
+ * `default` (default value).
+ * `verbose`.
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_error_verbosity).
+
+* **Log hostname** {{ tag-con }} {#setting-log-hostname}
+
+ This setting controls whether to output the host name of the {{ GP }} database master server to the connection log. If the setting is enabled, the IP address and host name are logged. If the setting is disabled, only the IP address is logged.
+
+ This setting is disabled by default.
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_hostname).
+
+* **Log min duration statement** {{ tag-con }} {#setting-log-min-duration-statement}
+
+ This setting specifies the minimum command duration required to log the command (in milliseconds).
+
+ If the value is `0`, the runtime of all commands is logged.
- The maximum value is `1099511627776` (1 TB), the minimum one is `0` (unlimited amount). The default value [depends on the segment host storage size](#settings-instance-dependent) and is calculated by the formula:
+ The minimum value is `-1` (disables runtime logging), the maximum value is `2147483647`. The default value is `-1`.
- ```text
- 0.1 × /
- ```
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_min_duration_statement).
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#gp_workfile_limit_per_segment).
+* **Log min messages** {{ tag-con }} {#setting-log-min-messages}
+
+ This setting defines the logging level in {{ GP }}. All messages of the selected severity level (or higher) are logged. Possible values (in ascending order of severity): `DEBUG5`, `DEBUG4`, `DEBUG3`, `DEBUG2`, `DEBUG1`, `INFO`, `NOTICE`, `WARNING`, `ERROR`, `LOG`, `FATAL`, and `PANIC`.
+
+ The default value is `WARNING`. This means all the messages with the following severity levels will be logged: `WARNING`, `ERROR`, `LOG`, `FATAL`, and `PANIC`.
+
+ To disable logging of most messages, select `PANIC`.
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_min_messages).
* **Log statement**{#setting-log-statement} {{ tag-con }} {{ tag-api }}
- Filter for SQL statements that will be written to the {{ GP }} log:
+ Filter for SQL commands that will be written to the {{ GP }} log:
+
+ * `NONE`: Filter is disabled, no SQL commands are logged.
+ * `DDL`: Logs SQL commands used to change data structure definitions (such as `CREATE`, `ALTER`, `DROP` etc.).
+ * `MOD`: Logs the `DDL` commands and commands allowing you to modify data (`INSERT`, `UPDATE`, `DELETE`, `TRUNCATE`, and `COPY FROM`).
+ * `ALL`: Logs all SQL commands.
+
+ The default value is `ALL`.
+
+ The `PREPARE` and `EXPLAIN ANALYZE` expressions are also logged if they contain the relevant types of commands.
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_statement).
+
+* **Log statement stats** {{ tag-con }} {#setting-log-statement-stat}
+
+ This setting controls whether to log query statistics (parsing, scheduling, execution).
+
+ The setting is disabled by default (no logging).
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_statement_stats).
+
+* **Master shared buffers** {{ tag-con }} {#setting-master-shared-buffers}
- * `NONE`: The filter is disabled and SQL statements are not logged.
- * `DDL`: SQL statements that change data definitions are logged (such as `CREATE`, `ALTER`, and `DROP`).
- * `MOD`: SQL statements that fall under the `DDL` filter and statements that allow you to change data (`INSERT`, `UPDATE`, `DELETE`, `TRUNCATE`, and `COPY FROM`) are logged.
- * `ALL`: All SQL statements are logged.
+ The amount of memory the {{ GP }} master host uses for shared memory buffers (in bytes).
- The default value is `ALL`.
+ The minimum value is `1048576` (1 MB). The default value is `134217728` (128 MB).
- The `PREPARE` and `EXPLAIN ANALYZE` expressions are also logged if they contain the relevant types of commands.
+ The maximum value is calculated using the following formula:
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#log_statement).
+ ```text
+ min( / 4, 8 * )
+ ```
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#shared_buffers).
+
+ {% note warning %}
+
+ Changing this setting will restart the cluster.
+
+ {% endnote %}
* **Max connections**{#setting-max-connections} {{ tag-con }} {{ tag-api }}
- The maximum number of simultaneous connections to a master host.
+ The maximum number of concurrent connections to the master host.
- The maximum value is `1000`, the minimum one is `250`, and the default one is `350`. For segment hosts, this value is automatically multiplied by five.
+ The maximum value is `1000`, the minimum value is `250`, and the default value is `350`. For segment hosts, this value is automatically multiplied by five.
- If you increase this value, we recommend increasing [Max prepared transactions](#setting-max-prepared-transactions) as well.
+ If you increase this value, we recommend increasing [Max prepared transactions](#setting-max-prepared-transactions) as well.
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_connections).
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_connections).
* **Max prepared transactions**{#setting-max-prepared-transactions} {{ tag-con }} {{ tag-api }}
- Maximum number of concurrent [prepared]({{ pg.docs.org }}/current/sql-prepare-transaction.html) transactions.
+ The maximum number of transactions that can be in the [prepared state]({{ pg.docs.org }}/current/sql-prepare-transaction.html) at the same time.
- The maximum value is `10000`, the minimum one is `350`, and the default one is `350`. The values for master hosts and segment hosts are the same.
+ The maximum value is `10000`, the minimum value is `350`, and the default value is `350`. The values for master hosts and segment hosts are the same.
- We recommend choosing a value higher than [Max connections](#setting-max-connections).
+ We recommend choosing a value higher than [Max connections](#setting-max-connections).
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_prepared_transactions).
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_prepared_transactions).
* **Max slot wal keep size**{#setting-max-slot-wal-keep-size} {{ tag-con }} {{ tag-api }}
- The maximum [Write-Ahead Log (WAL)](https://www.postgresql.org/docs/current/wal-intro.html) file size in bytes allowed for replication.
+ The maximum [write-ahead log (WAL)](https://www.postgresql.org/docs/current/wal-intro.html) file size in bytes allowed for replication.
- The minimum value is `0` (no logging), the maximum one is `214748364800` (200 GB). The default value [depends on the segment host storage size](#settings-instance-dependent) and is calculated by the formula:
+ The minimum value is `0` (no logging), and the maximum value is `214748364800` (200 GB). The default value [depends on the segment host storage size](#settings-instance-dependent) and is calculated by the formula:
- ```text
- 0.1 × /
- ```
+ ```text
+ 0.1 × /
+ ```
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_slot_wal_keep_size).
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_slot_wal_keep_size).
* **Max statement mem**{#setting-max-statement-mem} {{ tag-con }} {{ tag-api }}
- The maximum amount of memory (in bytes) allocated for query processing.
+ The maximum amount of memory (in bytes) allocated for query processing.
+
+ The minimum value is `134217728` (128 MB), the maximum value is `1099511627776` (1 TB), and the default value is `2097152000` (2,000 MB).
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_statement_mem).
+
+* **Segment shared buffers** {{ tag-con }} {#setting-segment-shared-buffers}
+
+ The amount of memory the {{ GP }} segment hosts use for shared memory buffers (in bytes).
+
+ The minimum value is `1048576` (1 MB). The default value is `134217728` (128 MB).
+
+ The maximum value is calculated using the following formula:
+
+ ```text
+ min( / 4 / , 8 * )
+ ```
+
+ For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#shared_buffers).
+
+ {% note warning %}
- The minimum value is `134217728` (128 MB), the maximum one is `1099511627776` (1 TB), and the default one is `2097152000` (2000 MB).
+ Changing this setting will restart the cluster.
- For more information, see the [{{ GP }} documentation]({{ gp.docs.vmware }}/6/greenplum-database/ref_guide-config_params-guc-list.html#max_statement_mem).
+ {% endnote %}
diff --git a/en/_includes/mdb/mgp/limits.md b/en/_includes/mdb/mgp/limits.md
index c1babe72cc3..21c53779537 100644
--- a/en/_includes/mdb/mgp/limits.md
+++ b/en/_includes/mdb/mgp/limits.md
@@ -1,23 +1,23 @@
#### Quotas {#quotas}
-| Type of limit | Value |
+| Type of limit | Value |
|--------------------------------------------------------------------------------|----------|
-| Number of clusters per cloud | 16 |
-| Total number of processor cores for all database hosts per cloud | 96 |
-| Total virtual memory for all database hosts per cloud | 640 GB |
-| Total storage capacity for all clusters per cloud | 4096 GB |
+| Number of clusters per cloud | 16 |
+| Total number of processor cores for all database hosts per cloud | 96 |
+| Total virtual memory for all database hosts per cloud | 640 GB |
+| Total storage capacity for all clusters per cloud | 4096 GB |
#### Limits {#limits}
-| Type of limit | Minimum value | Maximum value |
+| Type of limit | Minimum value | Maximum value |
|:--------------------------------------------------------------------------------------------------------------|:-------------------------------------------------|:-------------------------------------------------|
-| Host class | s2.medium (8 vCPU Intel Cascade Lake, 32 GB RAM) | i3-c40-m320 (40 vCPU Intel Ice Lake, 320 GB RAM) |
-| Number of master hosts in the cluster | 2 | 2 |
-| Number of segment hosts in the cluster | 2 | 32 |
-| Number of segments per host | 1 | 16 |
-| Amount of data on the host when using HDD network storage | 10 GB | 2048 GB |
-| Amount of data on the host when using network SSD storage | 10 GB | 8192 GB |
-| Amount of host data when using non-replicated SSD storage (for segment hosts only) | 93 GB | 8184 GB |
-| Amount of data on the host when using local SSD storage (for Intel Cascade Lake) | 100 GB | 1500 GB |
-| Amount of data on the host when using local SSD storage (for Intel Ice Lake) | {{ local-ssd-v3-step }} | {{ local-ssd-v3-max }} |
+| Host class | s2.medium (8 vCPU Intel Cascade Lake, 32 GB RAM) | i3-c40-m320 (40 vCPU Intel Ice Lake, 320 GB RAM) |
+| Number of master hosts in the cluster | 2 | 2 |
+| Number of segment hosts in the cluster | 2 | 32 |
+| Number of segments per host | 1 | 16 |
+| Amount of data on the host when using HDD network storage | 10 GB | 2048 GB |
+| Amount of data per host when using network SSD storage | 10 GB | 8,192 GB |
+| Amount of data per host when using non-replicated SSD storage | 93 GB | 8184 GB |
+| Amount of data on the host when using local SSD storage (for Intel Cascade Lake) | 100 GB | 1500 GB |
+| Amount of data per host when using local SSD storage (for Intel Ice Lake) | {{ local-ssd-v3-step }} | {{ local-ssd-v3-max }} |
\ No newline at end of file
diff --git a/en/_includes/mdb/mkf-list-operations-about.md b/en/_includes/mdb/mkf-list-operations-about.md
deleted file mode 100644
index 67b45df7df0..00000000000
--- a/en/_includes/mdb/mkf-list-operations-about.md
+++ /dev/null
@@ -1,2 +0,0 @@
-The operation list shows the operations performed with clusters and related resources (topics and users).
-
diff --git a/en/_includes/mdb/mmg-readonly-safeguard.md b/en/_includes/mdb/mmg-readonly-safeguard.md
index 2b01928be21..bd81fb7cd8f 100644
--- a/en/_includes/mdb/mmg-readonly-safeguard.md
+++ b/en/_includes/mdb/mmg-readonly-safeguard.md
@@ -1,6 +1,6 @@
-If at least one host in a {{ mmg-name }} cluster runs out of allocated disk space, the {{ MG }} instance on this host will crash and the host will be disabled. If the host was a [`PRIMARY` replica](../../managed-mongodb/concepts/replication.md), this role will be assigned to one of the `SECONDARY` replicas. As a result of migrating the `PRIMARY` role from one host to another, you may run out of disk space on all hosts in the cluster, which will result in a complete cluster failure.
+If at least one host in a {{ mmg-name }} cluster runs out of its allocated disk space, the {{ MG }} instance on this host will crash and the host will be disabled. If this host was a [`PRIMARY` replica](../../managed-mongodb/concepts/replication.md), this role will be assigned to one of the `SECONDARY` replicas. As a result of migrating the `PRIMARY` role from one host to another, you may run out of disk space on all hosts in the cluster, which will result in a complete cluster failure.
-To avoid this, {{ mmg-name }} monitors disk space in use and automatically enables read-only mode (using the [`db.fsyncLock` method](https://docs.mongodb.com/manual/reference/method/db.fsyncLock/)) for those hosts in the cluster that have:
+To avoid this, {{ mmg-name }} monitors disk space in use and automatically enables _read-only_ mode (using the [`db.fsyncLock` method](https://docs.mongodb.com/manual/reference/method/db.fsyncLock/)) for those hosts in the cluster that have:
* Less than 500 MB of free disk space left (if the host storage size is less than 600 GB).
* Less than 5 GB of free disk space left (if the host storage size is 600 GB or more).
diff --git a/en/_includes/mdb/mmg/note-info-db-name-limits.md b/en/_includes/mdb/mmg/note-info-db-name-limits.md
index 4f20550927b..064960df7ec 100644
--- a/en/_includes/mdb/mmg/note-info-db-name-limits.md
+++ b/en/_includes/mdb/mmg/note-info-db-name-limits.md
@@ -1 +1 @@
-A database name may contain Latin letters, numbers, underscores, and hyphens. The name may be up to 63 characters long. Such names as `config`, `local`, `admin`, and `mdb_internal` are reserved for {{ mmg-name }}. You cannot create DBs with these names.
\ No newline at end of file
+A database name may contain Latin letters, numbers, underscores, and hyphens. The name may be up to 63 characters long. Such names as `config`, `local`, `admin`, and `mdb_internal` are reserved for {{ mmg-name }}. You cannot create DBs with these names.
diff --git a/en/_includes/mdb/mmg/settings-host-class.md b/en/_includes/mdb/mmg/settings-host-class.md
index 2d512e5a200..4159949d135 100644
--- a/en/_includes/mdb/mmg/settings-host-class.md
+++ b/en/_includes/mdb/mmg/settings-host-class.md
@@ -1,7 +1,7 @@
Under **{{ ui-key.yacloud.mdb.forms.section_resource }}**, select:
-* One of the available [platforms](../../../compute/concepts/vm-platforms.md)
-* Configuration type: **memory-optimized**, **standard**, or **burstable**.
-* [Host class](../../../managed-mongodb/concepts/instance-types.md): Defines the technical specifications of the VMs where the DB hosts will be deployed. When you change the host class for the cluster, the characteristics of all existing hosts change, too.
+ * One of the available [platforms](../../../compute/concepts/vm-platforms.md).
+ * Configuration type: **memory-optimized**, **cpu-optimized**, **standard**, or **burstable**.
+ * [Host class](../../../managed-mongodb/concepts/instance-types.md): Defines the technical specifications of the VMs where the DB hosts will be deployed. When you change the host class for the cluster, the characteristics of all existing hosts change, too.
diff --git a/en/_includes/mdb/mmy-limits.md b/en/_includes/mdb/mmy-limits.md
index 2877e698602..9755565460e 100644
--- a/en/_includes/mdb/mmy-limits.md
+++ b/en/_includes/mdb/mmy-limits.md
@@ -1,22 +1,22 @@
#### Quotas {#mmy-quotas}
-| Type of limit | Value |
+| Type of limit | Value |
|:-------------------------------------------------------------------------------|:---------|
-| Number of clusters per cloud | 16 |
-| Total number of processor cores for all database hosts per cloud | 96 |
-| Total virtual memory for all database hosts per cloud | 640 GB |
-| Total storage capacity for all clusters per cloud | 4096 GB |
+| Number of clusters per cloud | 16 |
+| Total number of processor cores for all database hosts per cloud | 96 |
+| Total virtual memory for all database hosts per cloud | 640 GB |
+| Total storage capacity for all clusters per cloud | 4,096 GB |
#### Limits {#mmy-limits}
-| Type of limit | Minimum value | Maximum value |
-|:------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------------------------------------------------|
-| Host class | b1.medium (2 × [50%](../../compute/concepts/performance-levels.md) vCPU Intel Broadwell, 4 GB RAM) | m3-c80-m640 (80 vCPU Intel Cascade Lake, 640 GB RAM) |
-| Number of hosts per cluster when using HDD or SSD network storage | 1 | 7 |
-| Number of hosts per cluster when using non-replicated SSD or local SSD storage | 3 | 7 |
-| Amount of data per host when using network SSD storage | 10 GB | 6144 GB |
-| Amount of data per host when using network HDD storage | 10 GB | 2048 GB |
-| Amount of data per host when using non-replicated SSD storage | 93 GB | 8184 GB |
-| Amount of data per host when using local SSD storage (for Intel Broadwell and Intel Cascade Lake) | 100 GB | 1500 GB |
-| Amount of data per host when using local SSD storage (for Intel Ice Lake) | {{ local-ssd-v3-step }} | {{ local-ssd-v3-max }} |
-| Number of databases per cluster | 1 | {{ all-mdb.max-databases }} |
+| Type of limit | Minimum value | Maximum value |
+|:------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------|:-----------------------------------------------------|
+| Host class | b1.medium (2 × [50%](../../compute/concepts/performance-levels.md) vCPU Intel Broadwell, 4 GB RAM) | m3-c80-m640 (80 vCPU Intel Cascade Lake, 640 GB RAM) |
+| Number of hosts per cluster when using HDD or SSD network storage | 1 | 7 |
+| Number of hosts per cluster when using non-replicated SSD or local SSD storage | 3 | 7 |
+| Amount of data per host when using network SSD storage | 10 GB | 6,144 GB |
+| Amount of data per host when using network HDD storage | 10 GB | 2,048 GB |
+| Amount of data per host when using non-replicated SSD storage | 93 GB | 8,184 GB |
+| Amount of data per host when using local SSD storage (for Intel Broadwell and Intel Cascade Lake) | 100 GB | 1,500 GB |
+| Amount of data per host when using local SSD storage (for Intel Ice Lake) | {{ local-ssd-v3-step }} | {{ local-ssd-v3-max }} |
+| Number of databases per cluster | 1 | {{ all-mdb.max-databases }} |
\ No newline at end of file
diff --git a/en/_includes/mdb/monitoring-cluster-health.md b/en/_includes/mdb/monitoring-cluster-health.md
index 42d904ea342..23061a98101 100644
--- a/en/_includes/mdb/monitoring-cluster-health.md
+++ b/en/_includes/mdb/monitoring-cluster-health.md
@@ -1,6 +1,6 @@
-| State | Description | Suggested actions |
-| :--- | :--- | :--- |
-| **ALIVE** | Cluster is operating normally. | No action is required. |
-| **DEGRADED** | Cluster is not running at its full capacity: the state of at least one of the hosts is other than `ALIVE`. | Run the diagnostics:
Go to the **{{ ui-key.yacloud.mdb.cluster.hosts.label_title }}** tab and see which hosts are not alive.
Go to the **{{ ui-key.yacloud.common.operations-key-value }}** tab and make sure all of them are completed.
Check that the cluster is not under maintenance.
If you cannot find the cause yourself, [contact support]({{ link-console-support }}). |
-| **DEAD** | Cluster is out of order: all of its hosts are down. | [Prepare an application to support]({{ link-console-support }}) stating the following:
Cluster ID.
IDs of the last operations performed on it.
Time the cluster entered the `DEAD` state according to the [availability charts](#monitoring-cluster).
|
-| **UNKNOWN** | Cluster state is unknown. | [Prepare an application to support]({{ link-console-support }}) stating the following:
Cluster ID.
IDs of the last operations performed on it.
Time the cluster entered the `UNKNOWN` state according to the [availability charts](#monitoring-cluster).
|
\ No newline at end of file
+State | Description | Suggested actions
+:--- | :--- | :---
+**ALIVE** | Cluster is operating normally. | No action is required.
+**DEGRADED** | Cluster is not running at its full capacity: the state of at least one of the hosts is other than `ALIVE`. | Run the diagnostics:
Go to the **{{ ui-key.yacloud.mdb.cluster.hosts.label_title }}** tab and see which hosts are not working.
Go to the **{{ ui-key.yacloud.common.operations-key-value }}** tab and make sure all operations are completed.
Make sure the cluster is not under maintenance.
If you cannot find the cause yourself, [contact support]({{ link-console-support }}).
+**DEAD** | The cluster is down: none of its hosts are running. | [Make a support request]({{ link-console-support }}) stating the following:
Cluster ID.
IDs of the last operations performed on it.
Time the cluster entered the `DEAD` state according to the [availability charts](#monitoring-cluster).
+**UNKNOWN** | Cluster state is unknown. | [Make a support request]({{ link-console-support }}) stating the following:
Cluster ID.
IDs of the last operations performed on it.
Time the cluster entered the `UNKNOWN` state according to the [availability charts](#monitoring-cluster).
\ No newline at end of file
diff --git a/en/_includes/mdb/monitoring-cluster-status.md b/en/_includes/mdb/monitoring-cluster-status.md
index 0b623d7d251..aa45daedf77 100644
--- a/en/_includes/mdb/monitoring-cluster-status.md
+++ b/en/_includes/mdb/monitoring-cluster-status.md
@@ -1,10 +1,10 @@
-| Status | Description | Suggested actions |
+Status | Description | Suggested actions
:--- | :--- | :---
-| **CREATING** | Preparing for the first launch | Wait a while and get started. The time it takes to create a cluster depends on the host class. |
-| **RUNNING** | Cluster is operating normally | No action is required. |
-| **STOPPING** | Stopping | After a while, the cluster's status will change to `STOPPED` and it will be disabled. No action is required. |
-| **STOPPED** | Stopped | For instructions on how to restart it, see **Stopping and restarting a cluster**. |
-| **STARTING** | Starting the cluster that was stopped earlier | After a while, the cluster's status will change to `RUNNING`. Wait a while and get started. |
-| **UPDATING** | Updating the cluster status | After the update is completed, the cluster's status will change to `RUNNING`. Wait a while and get started. |
-| **ERROR** | An error occurred that does not allow the cluster to continue working | Run the initial diagnostics:
Analyze the cluster's [monitoring charts](#monitoring-cluster) and view operations that were performed in it.
Prepare a list of IDs of problem resources.
If you cannot find the cause of the error yourself, [contact support]({{ link-console-support }}). |
-| **STATUS_UNKNOWN** | Cluster is unable to determine its own status | Run the initial diagnostics:
Analyze the cluster's [monitoring charts](#monitoring-cluster) and view operations that were performed in it.
Prepare a list of IDs of problem resources.
If you cannot find the cause of the error yourself, [contact support]({{ link-console-support }}). |
+**CREATING** | Preparing for the first launch | Wait a while and get started. The time it takes to create a cluster depends on the host class.
+**RUNNING** | Cluster is operating normally | No action is required.
+**STOPPING** | Stopping cluster | After a while, the cluster status will change to `STOPPED` and the cluster will be disabled. No action is required.
+**STOPPED** | Cluster stopped | Start the cluster to get it running again.
+**STARTING** | Starting the cluster that was stopped earlier | After a while, the cluster status will change to `RUNNING`. Wait a while and get started.
+**UPDATING** | Updating the cluster status | After the update is completed, the cluster status will change to `RUNNING`. Wait a while and get started.
+**ERROR** | An error occurred that does not allow the cluster to continue working | Run the initial diagnostics:
Analyze the cluster [monitoring charts](#monitoring-cluster) and view the operations performed.
Prepare a list of IDs of problem resources.
If you cannot find the cause of the error yourself, [contact support]({{ link-console-support }}).
+**STATUS_UNKNOWN** | Cluster is unable to determine its own status | Run the initial diagnostics:
Analyze the cluster [monitoring charts](#monitoring-cluster) and view the operations performed.
Prepare a list of IDs of problem resources.
If you cannot find the cause of the error yourself, [contact support]({{ link-console-support }}).
diff --git a/en/_includes/mdb/mpg/performance-diagnostics-api.md b/en/_includes/mdb/mpg/performance-diagnostics-api.md
deleted file mode 100644
index 54bdb27d1f5..00000000000
--- a/en/_includes/mdb/mpg/performance-diagnostics-api.md
+++ /dev/null
@@ -1,8 +0,0 @@
-1. Pass the `true` value in the `config.performanceDiagnostics.enabled` parameter.
-1. Pass the sessions sampling interval in the `config.performanceDiagnostics.sessionsSamplingInterval` parameter.
-1. Pass the statements sampling interval in the `config.performanceDiagnostics.statementsSamplingInterval` parameter.
-
-Acceptable parameter values:
-
-- `config.performanceDiagnostics.sessionsSamplingInterval`: From `1` to `86400` seconds.
-- `config.performanceDiagnostics.statementsSamplingInterval`: From `60` to `86400` seconds.
diff --git a/en/_includes/mdb/mrd-limits.md b/en/_includes/mdb/mrd-limits.md
index dbe9545478d..1cf7a2b014e 100644
--- a/en/_includes/mdb/mrd-limits.md
+++ b/en/_includes/mdb/mrd-limits.md
@@ -1,28 +1,28 @@
#### Quotas {#mrd-quotas}
-| Type of limit | Value |
+| Type of limit | Value |
|:-------------------------------------------------------------------------------|:---------|
-| Number of clusters per cloud | 16 |
-| Total number of processor cores for all database hosts per cloud | 64 |
-| Total virtual memory for all database hosts per cloud | 512 GB |
-| Total storage capacity for all clusters per cloud | 4,096 GB |
+| Number of clusters per cloud | 16 |
+| Total number of processor cores for all database hosts per cloud | 64 |
+| Total virtual memory for all database hosts per cloud | 512 GB |
+| Total storage capacity for all clusters per cloud | 4,096 GB |
#### Limits {#mrd-limits}
-| Type of limit | Minimum value | Maximum value |
+| Type of limit | Minimum value | Maximum value |
|:----------------------------------------------------------------------------------------------------------|:--------------------------------------|:--------------------------------------------------|
-| Host class | b2.medium (`burstable`, 4 GB RAM) | hm3-c32-m512 (32 vCPU Intel Ice Lake, 512 GB RAM) |
-| Number of hosts in an unsharded cluster | 1 or 3 depending on the [disk type](../../managed-redis/concepts/storage.md#storage-type-selection) | 7 |
-| Number of shards in a sharded cluster | 1 | 10 |
-| Number of hosts per shard when using network SSD storage | 1 | 7 |
-| Number of hosts per shard when using local SSD storage^*^ | 2 | 7 |
-| Number of hosts per shard when using non-replicated SSD storage^*^ | 3 | 7 |
-| Number of hosts in a sharded cluster | 1, 2, or 3 hosts depending on the [disk type](../../managed-redis/concepts/storage.md#storage-type-selection) | 70 (10 shards, 7 hosts) |
-| Amount of data per host when using network SSD storage | Twice the amount of selected RAM | 4096 GB |
-| Amount of data per host when using non-replicated SSD storage^*^ | Twice the amount of selected RAM, at least 93 GB | 8184 GB |
-| Amount of data per host when using local SSD storage (for Intel Broadwell and Intel Cascade Lake)^*^ | Twice the amount of selected RAM, at least 100 GB | 1500 GB |
-| Amount of data per host when using local SSD storage (for Intel Ice Lake)^*^ | Twice the amount of selected RAM, at least {{ local-ssd-v3-step }} | {{ local-ssd-v3-max }} |
+| Host class | b2.medium (`burstable`, 4 GB RAM) | hm3-c32-m512 (32 vCPU Intel Ice Lake, 512 GB RAM) |
+| Number of hosts in an unsharded cluster | 1 or 3 depending on the [disk type](../../managed-redis/concepts/storage.md#storage-type-selection) | 7 |
+| Number of shards in a sharded cluster | 1 | 10 |
+| Number of hosts per shard when using network SSD storage | 1 | 7 |
+| Number of hosts per shard when using local SSD storage^*^ | 2 | 7 |
+| Number of hosts per shard when using non-replicated SSD storage^*^ | 3 | 7 |
+| Number of hosts in a sharded cluster | 1, 2, or 3 hosts depending on the [disk type](../../managed-redis/concepts/storage.md#storage-type-selection) | 70 (10 shards, 7 hosts) |
+| Amount of data per host when using network SSD storage | Twice the amount of selected RAM | 4,096 GB |
+| Amount of data per host when using non-replicated SSD storage^*^ | Twice the amount of selected RAM, at least 93 GB | 8,184 GB |
+| Amount of data per host when using local SSD storage (for Intel Broadwell and Intel Cascade Lake)^*^ | Twice the amount of selected RAM, at least 100 GB | 1,500 GB |
+| Amount of data per host when using local SSD storage (for Intel Ice Lake)^*^ | Twice the amount of selected RAM, at least {{ local-ssd-v3-step }} | {{ local-ssd-v3-max }} |
| Number of cluster connections | — | 65,000 |
{% include [storage-limitations-mrd](./mrd/storage-limitations-note.md) %}
diff --git a/en/_includes/mdb/mrd/conn-strings-non-sharded.md b/en/_includes/mdb/mrd/conn-strings-non-sharded.md
index 798cc6d702e..6762cf7de5c 100644
--- a/en/_includes/mdb/mrd/conn-strings-non-sharded.md
+++ b/en/_includes/mdb/mrd/conn-strings-non-sharded.md
@@ -166,7 +166,7 @@
Password: "",
ReadOnly: false,
TLSConfig: &tls.Config{
- RootCAs: rootCertPool,
+ RootCAs: rootCertPool,
},
},
)
@@ -284,7 +284,7 @@
String redisPass = "";
System.setProperty("javax.net.ssl.trustStore", "/home//.redis/YATrustStore");
- System.setProperty("javax.net.ssl.trustStorePassword", "");
+ System.setProperty("javax.net.ssl.trustStorePassword", "");
SSLParameters sslParameters = new SSLParameters();
DefaultJedisClientConfig jedisClientConfig = DefaultJedisClientConfig.builder().
diff --git a/en/_includes/mdb/sg-rules-limits.md b/en/_includes/mdb/sg-rules-limits.md
index 9c206bc934d..539c592bfbd 100644
--- a/en/_includes/mdb/sg-rules-limits.md
+++ b/en/_includes/mdb/sg-rules-limits.md
@@ -1,3 +1,4 @@
-[Security groups](../../vpc/concepts/security-groups.md) follow the _All traffic that is not allowed is prohibited_ principle. To connect to a cluster, security groups must include rules allowing traffic from certain ports, IP addresses, or other security groups.
+[Security groups](../../vpc/concepts/security-groups.md) follow the _All traffic that is not allowed is prohibited_ principle. To connect to a cluster, configure security group rules. These rules allow traffic from certain ports, IP addresses, or other security groups. For example, a VM will not be able to connect to a cluster in the following cases:
-For example, let's assume a VM in {{ yandex-cloud }} is used to access the cluster. In this case, if only the 10.133.0.0/24 subnet is specified in the incoming traffic rules for the security group, while the VM is in the 10.128.0.0/16 subnet, the VM will not be able to connect to the cluster. A VM from the 10.133.0.0/24 subnet will not be able to connect either, in case it tries to access a port that is not specified in the security group rules.
+* The VM is in subnet 10.128.0.0/16, whereas the incoming traffic rules only specify subnet 10.133.0.0/24.
+* The VM is in subnet 10.133.0.0/24 but attempts to access a port not specified in the security group rules.
diff --git a/en/_includes/notifications/about-service.md b/en/_includes/notifications/about-service.md
new file mode 100644
index 00000000000..1e37d22aad1
--- /dev/null
+++ b/en/_includes/notifications/about-service.md
@@ -0,0 +1 @@
+{{ cns-name }} ({{ cns-short-name }}) is a service for multichannel notifications of users. The service's HTTP API is compatible with the [Amazon SNS API](https://docs.aws.amazon.com/sns/latest/api/welcome.html).
diff --git a/en/_includes/notifications/ask-for-turning-on.md b/en/_includes/notifications/ask-for-turning-on.md
new file mode 100644
index 00000000000..798b219ed40
--- /dev/null
+++ b/en/_includes/notifications/ask-for-turning-on.md
@@ -0,0 +1 @@
+To enable {{ cns-name }}, request access to the service from your account manager or [technical support]({{ link-console-support }}).
diff --git a/en/_includes/notifications/auth-apns.md b/en/_includes/notifications/auth-apns.md
new file mode 100644
index 00000000000..a9c5b4ee0df
--- /dev/null
+++ b/en/_includes/notifications/auth-apns.md
@@ -0,0 +1,13 @@
+You can authenticate with APNs using either a _token_ or a _certificate_:
+* To authenticate using a token, you will need the following data:
+ * **Token**: To get a token in `.p8` format, create an authentication key in your Apple developer account: **Certificates, Identifiers & Profiles** → **Keys** → ![image](../../_assets/console-icons/circle-plus-fill.svg). You can download the token file only once.
+ * **Token ID**: Get the ID in your Apple developer account: **Certificates, Identifiers & Profiles** → **Keys**. Make sure the ID matches the token you want to use. It must be 10 characters long.
+ * **Team ID**: You can find it in the top-right corner of your Apple developer account. It must be 10 characters long and contain only numbers and Latin letters.
+ * **Bundle ID**: Get the [bundle ID](https://developer.apple.com/documentation/appstoreconnectapi/list_bundle_ids) in your Apple developer account: **Certificates, Identifiers & Profiles** → **Identifiers** or in the Xcode app: **Target** → **General** → **Identity**. It may contain only numbers, Latin letters, hyphens, and periods.
+* To authenticate using a certificate, you will need the following data:
+ * **Certificate**: SSL certificate file in `.p12` format.
+ * **Certificate private key**.
+
+ For more information about the certificate, see the [Apple documentation](https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/establishing_a_certificate-based_connection_to_apns#2947597).
+
+Token-based authentication is preferred as it is more progressive.
\ No newline at end of file
diff --git a/en/_includes/notifications/auth-fcm.md b/en/_includes/notifications/auth-fcm.md
new file mode 100644
index 00000000000..c49d7673cec
--- /dev/null
+++ b/en/_includes/notifications/auth-fcm.md
@@ -0,0 +1,11 @@
+You can authenticate with FCM using either the _HTTP v1 API_ or _Legacy API_:
+* To authenticate using the HTTP v1 API, you will need a **Google Cloud service account key in JSON format**. The key is used to generate OAuth 2.0 temporary tokens for authenticating requests in the FCM HTTP v1 API. You can get it in the Google Cloud management console.
+* To authenticate using the Legacy API, you will need an **API key** (server key). You can get it in the Firebase management console.
+
+{% note info %}
+
+The HTTP v1 API is preferred as [FCM will no longer support](https://firebase.google.com/docs/cloud-messaging/migrate-v1) the Legacy API starting from June 2024.
+
+{% endnote %}
+
+See more in the [Firebase documentation](https://firebase.google.com/docs/cloud-messaging/android/client).
\ No newline at end of file
diff --git a/en/_includes/notifications/auth-hms.md b/en/_includes/notifications/auth-hms.md
new file mode 100644
index 00000000000..ec4b1edeca9
--- /dev/null
+++ b/en/_includes/notifications/auth-hms.md
@@ -0,0 +1,5 @@
+You can authenticate with HMS using the following parameters:
+* **Key ID**
+* **API key**
+
+See more in the [HMS documentation](https://developer.huawei.com/consumer/en/doc/hmscore-common-Guides/get-started-hmscore-0000001212585589).
\ No newline at end of file
diff --git a/en/_includes/notifications/channels-push-preview.md b/en/_includes/notifications/channels-push-preview.md
new file mode 100644
index 00000000000..3b09afd3a1f
--- /dev/null
+++ b/en/_includes/notifications/channels-push-preview.md
@@ -0,0 +1,3 @@
+At the preview stage, you can send personalized [push notifications](../../notifications/concepts/push.md) to iOS and Android devices as well as [text messages (SMS)](../../notifications/concepts/sms.md).
+
+Moving forward, we will add notifications to messengers and browsers.
\ No newline at end of file
diff --git a/en/_includes/notifications/common-sender-description.md b/en/_includes/notifications/common-sender-description.md
new file mode 100644
index 00000000000..793370f25eb
--- /dev/null
+++ b/en/_includes/notifications/common-sender-description.md
@@ -0,0 +1,9 @@
+An SMS notification channel with a _shared sender_ is a good option for testing the service's features and has the following advantages:
+* You do not have to register the sender's name with the telecom operator.
+* No monthly subscription fee is charged.
+
+There are restrictions in place for this type of sender:
+* All SMS messages are signed with a shared service name.
+* Promotional SMS messages are not allowed.
+* A [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud) can contain only one SMS notification channel with a shared sender.
+* A channel can only operate in a [sandbox](../../notifications/concepts/sms.md#sandbox) with a limited number of test phone numbers.
\ No newline at end of file
diff --git a/en/_includes/notifications/individual-in-sandbox.md b/en/_includes/notifications/individual-in-sandbox.md
new file mode 100644
index 00000000000..8ec095ec99d
--- /dev/null
+++ b/en/_includes/notifications/individual-in-sandbox.md
@@ -0,0 +1 @@
+The SMS notification channel with an individual sender is originally created in the sandbox.
\ No newline at end of file
diff --git a/en/_includes/notifications/individual-sender-description.md b/en/_includes/notifications/individual-sender-description.md
new file mode 100644
index 00000000000..34c04556c8b
--- /dev/null
+++ b/en/_includes/notifications/individual-sender-description.md
@@ -0,0 +1,8 @@
+An SMS notification channel with an _individual sender_ is suitable for the product environment and has the following advantages:
+* All SMS messages are signed with the sender's unique text name.
+* After leaving the [sandbox](#sandbox) you can send SMS to any Russian phone numbers in [E.164](https://en.wikipedia.org/wiki/E.164) format.
+
+There are restrictions and rules in place for this type of sender:
+* The sender's text name will be registered with the service provider.
+* You will be charged a monthly subscription fee for using the sender's text name.
+* In the [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud), one sender's text name can correspond to one SMS notification channel.
\ No newline at end of file
diff --git a/en/_includes/notifications/limits-warning.md b/en/_includes/notifications/limits-warning.md
new file mode 100644
index 00000000000..8d820a1bac9
--- /dev/null
+++ b/en/_includes/notifications/limits-warning.md
@@ -0,0 +1,5 @@
+{% note info %}
+
+The service is subject to limitations. For more information, see [{#T}](../../notifications/concepts/limits.md).
+
+{% endnote %}
\ No newline at end of file
diff --git a/en/_includes/notifications/preview-stage.md b/en/_includes/notifications/preview-stage.md
new file mode 100644
index 00000000000..c33a90ea522
--- /dev/null
+++ b/en/_includes/notifications/preview-stage.md
@@ -0,0 +1,5 @@
+{% note info %}
+
+The service is at the [preview stage](../../overview/concepts/launch-stages.md).
+
+{% endnote %}
diff --git a/en/_includes/notifications/registration-duration-warning.md b/en/_includes/notifications/registration-duration-warning.md
new file mode 100644
index 00000000000..f860046a482
--- /dev/null
+++ b/en/_includes/notifications/registration-duration-warning.md
@@ -0,0 +1,5 @@
+{% note info %}
+
+Registering a sender's text name may take from 2 to 4 weeks.
+
+{% endnote %}
\ No newline at end of file
diff --git a/en/_includes/notifications/sa-role-static-key.md b/en/_includes/notifications/sa-role-static-key.md
new file mode 100644
index 00000000000..05890c07482
--- /dev/null
+++ b/en/_includes/notifications/sa-role-static-key.md
@@ -0,0 +1,8 @@
+For authentication in {{ cns-name }}, use a [static access key](../../iam/concepts/authorization/access-key.md). The key is issued for the [service account](../../iam/concepts/users/service-accounts.md), and all actions are performed on behalf of that service account.
+
+To get a static access key:
+1. [Create](../../iam/operations/sa/create.md) a service account.
+1. [Assign](../../iam/operations/sa/assign-role-for-sa.md) the service account the `editor` [role](../../iam/roles-reference.md#editor) for the folder.
+1. [Create](../../iam/operations/sa/create-access-key.md) a static access key for the service account.
+
+ Save the ID and private key.
diff --git a/en/_includes/notifications/sandbox-test-numbers.md b/en/_includes/notifications/sandbox-test-numbers.md
new file mode 100644
index 00000000000..9844d33acbe
--- /dev/null
+++ b/en/_includes/notifications/sandbox-test-numbers.md
@@ -0,0 +1,3 @@
+A _sandbox_ is a test environment, in which you can send SMS messages only to _test phone numbers_.
+
+Each test phone number is registered in a channel using a confirmation code from an SMS. By adding a number, you agree to receive messages to it.
\ No newline at end of file
diff --git a/en/_includes/notifications/sms-quota-increase.md b/en/_includes/notifications/sms-quota-increase.md
new file mode 100644
index 00000000000..6941c9a3caa
--- /dev/null
+++ b/en/_includes/notifications/sms-quota-increase.md
@@ -0,0 +1 @@
+You can also request an increase in the service quotas together with your request to exit the sandbox mode.
\ No newline at end of file
diff --git a/en/_includes/notifications/sms-short-description.md b/en/_includes/notifications/sms-short-description.md
new file mode 100644
index 00000000000..0667cf967be
--- /dev/null
+++ b/en/_includes/notifications/sms-short-description.md
@@ -0,0 +1 @@
+With {{ cns-name }}, you can send [text messages (SMS)](https://en.wikipedia.org/wiki/SMS) using _SMS notification channels_. Russian phone numbers in [E.164](https://en.wikipedia.org/wiki/E.164) format are supported, e.g., `+79991112233`. SMS messages are signed with sender text names. The maximum length of one SMS is 160 Latin characters or 70 Cyrillic characters. Longer texts are sent using multiple SMS messages.
\ No newline at end of file
diff --git a/en/_includes/organization/os-login-cli-organization-list.md b/en/_includes/organization/os-login-cli-organization-list.md
new file mode 100644
index 00000000000..9919fe1d82c
--- /dev/null
+++ b/en/_includes/organization/os-login-cli-organization-list.md
@@ -0,0 +1,17 @@
+Get the ID of the organization which contains the required OS Login profile of a user or [service account](../../iam/concepts/users/service-accounts.md):
+
+```bash
+yc organization-manager organization list
+```
+
+Result:
+
+```text
++----------------------+-------------------------+-------------------------+
+| ID | NAME | TITLE |
++----------------------+-------------------------+-------------------------+
+| bpf1smsil5q0******** | sample-organization1 | Organization 1 |
+| bpf2c65rqcl8******** | sample-organization2 | Organization 2 |
+| bpf6dne49ue8******** | sample-organization3 | Organization 3 |
++----------------------+-------------------------+-------------------------+
+```
\ No newline at end of file
diff --git a/en/_includes/organization/os-login-cli-profile-list.md b/en/_includes/organization/os-login-cli-profile-list.md
new file mode 100644
index 00000000000..288cc99d2ad
--- /dev/null
+++ b/en/_includes/organization/os-login-cli-profile-list.md
@@ -0,0 +1,20 @@
+Get a list of logins in the OS Login profiles of an organization's users and service accounts by specifying its ID:
+
+```bash
+yc organization-manager os-login profile list \
+ --organization-id
+```
+
+Result:
+
+```text
++----------------------+----------------------+-----------+----------------------+----------------------+------------+
+| ID | LOGIN | UID | ORGANIZATION ID | SUBJECT ID | IS DEFAULT |
++----------------------+----------------------+-----------+----------------------+----------------------+------------+
+| aje1eb5qm7jb******** | yc-sa-my-service-acc | 487816044 | bpfaidqca8vd******** | ajevnu4u2q3m******** | true |
+| ajegs81t2k9s******** | user1 | 760684761 | bpfaidqca8vd******** | aje7b4u65nb6******** | true |
+| ajej57b2kf0t******** | user2 | 1011 | bpfaidqca8vd******** | ajei280a73vc******** | true |
++----------------------+----------------------+-----------+----------------------+----------------------+------------+
+```
+
+Save the `LOGIN` field value for the required user or service account: you will need it later.
\ No newline at end of file
diff --git a/en/_includes/organization/os-login-roles-needed-for-vm-access.md b/en/_includes/organization/os-login-roles-needed-for-vm-access.md
new file mode 100644
index 00000000000..7a8306b0d1a
--- /dev/null
+++ b/en/_includes/organization/os-login-roles-needed-for-vm-access.md
@@ -0,0 +1,11 @@
+{% list tabs %}
+
+- Connecting via the YC CLI
+
+ To connect to a virtual machine or {{ k8s }} node with OS Login access enabled via the [YC CLI](../../cli/quickstart.md), the user or [service account](../../iam/concepts/users/service-accounts.md) under which you will run the YC CLI command needs the `compute.osLogin` or `compute.osAdminLogin` role, as well as the `compute.operator` role.
+
+- Connecting via a standard SSH client
+
+ To connect to a virtual machine or {{ k8s }} node with OS Login access enabled via a standard SSH client, the user or [service account](../../iam/concepts/users/service-accounts.md) used for connection needs the `compute.osLogin` or `compute.osAdminLogin` role.
+
+{% endlist %}
\ No newline at end of file
diff --git a/en/_includes/organization/os-login-yc-cli-roles-needed.md b/en/_includes/organization/os-login-yc-cli-roles-needed.md
deleted file mode 100644
index ee77f947c10..00000000000
--- a/en/_includes/organization/os-login-yc-cli-roles-needed.md
+++ /dev/null
@@ -1 +0,0 @@
-To access a VM using OS Login via the YC CLI, [assign](../../iam/operations/roles/grant.md) the `compute.osLogin` or `compute.osAdminLogin` role, as well as the `compute.operator` role to the user or service account under which you are running the YC CLI command.
\ No newline at end of file
diff --git a/en/_includes/pricing/currency-choice.md b/en/_includes/pricing/currency-choice.md
index 4d52d152318..63162ea5527 100644
--- a/en/_includes/pricing/currency-choice.md
+++ b/en/_includes/pricing/currency-choice.md
@@ -1,7 +1,7 @@
{% note info %}
Currency of Service rates (prices) depends on the company you made a contract with:
-* Prices in US dollars are applicable to customers of Iron Hive doo Beograd (Serbia).
+* Prices in US dollars are applicable to customers of Iron Hive doo Beograd (Serbia) or Direct Cursus Technology L.L.C. (Dubai).
* Prices in Russian roubles are applicable to customers of Yandex.Cloud LLC.
{% endnote %}
diff --git a/en/_includes/pricing/use-calculator.md b/en/_includes/pricing/use-calculator.md
index 9dae9f30c9e..768673a86a4 100644
--- a/en/_includes/pricing/use-calculator.md
+++ b/en/_includes/pricing/use-calculator.md
@@ -1 +1 @@
-To calculate the cost of using the service, use the [calculator]({{ link-cloud-calculator }}) on the {{ yandex-cloud }} website or see the prices in this section.
+To calculate the cost of using the service, use the [calculator]({{ link-cloud-calculator }}) on the {{ yandex-cloud }} website or see the pricing in this section.
diff --git a/en/_includes/quickstart-all-no-billing.md b/en/_includes/quickstart-all-no-billing.md
index c54ab37d6d1..9e7a5d6a986 100644
--- a/en/_includes/quickstart-all-no-billing.md
+++ b/en/_includes/quickstart-all-no-billing.md
@@ -30,10 +30,8 @@
* [Manage data streams in {{ yds-name }}](../data-streams/quickstart/index.md).
* [Use {{ iot-name }} as your framework for smart home development](../iot-core/quickstart.md).
* Databases and clusters:
- * [{{ CH }}](../managed-clickhouse/quickstart.md).
- * [{{ MG }}](../managed-mongodb/quickstart.md).
- * [{{ MY }}](../managed-mysql/quickstart.md).
- * [{{ RD }}](../managed-redis/quickstart.md).
+ * [{{ CH }}](../managed-clickhouse/quickstart.md).
+ * [{{ MY }}](../managed-mysql/quickstart.md).
* [{{ PG }}](../managed-postgresql/quickstart.md).
* [{{ OS }}](../managed-opensearch/quickstart.md).
diff --git a/en/_includes/security-deck/sd-limits.md b/en/_includes/security-deck/sd-limits.md
index 95968661f92..1dc91721533 100644
--- a/en/_includes/security-deck/sd-limits.md
+++ b/en/_includes/security-deck/sd-limits.md
@@ -4,7 +4,7 @@ Type of limit | Value
--- | ---
Number of scanning sessions per folder | 10,000
Number of data sources per folder | 1,000
-Number of files per bucket to scan | 1,000
+Number of files per bucket to scan | 500
Number of results per scanning session | 1,000
Number of results per file | 1,000
-Number of results for a particular data type per file | 500
\ No newline at end of file
+Number of results for a particular data type per file | 500
diff --git a/en/_includes/smartcaptcha/captcha-validation.md b/en/_includes/smartcaptcha/captcha-validation.md
index eab7a89106d..3d14fea0950 100644
--- a/en/_includes/smartcaptcha/captcha-validation.md
+++ b/en/_includes/smartcaptcha/captcha-validation.md
@@ -1,6 +1,6 @@
After validating a request, {{ captcha-name }} assigns it an ID: a one-time token. You can use the token to retrieve the result of a user request validation from the service. The token is valid for five minutes. After this time expires, it becomes invalid and the user has to go through the validation process again.
-After validation, the token is loaded into the `` element on the user's page. For example:
+After validation, the token is loaded into the `` element on the user page. Here is an example:
```HTML
@@ -14,17 +14,10 @@ Where:
* `
`: `div` element with a widget.
* `value`: Token value.
-To find out the result of the validation, send a POST request to `https://smartcaptcha.yandexcloud.net/validate`:
+To find out the result of the validation, send a POST request to `https://smartcaptcha.yandexcloud.net/validate` providing parameters in `x-www-form-urlencoded` format:
-```HTML
-response = requests.post(
-"https://smartcaptcha.yandexcloud.net/validate",
- {
- "secret": SMARTCAPTCHA_SERVER_KEY,
- "token": token,
- "ip": ""
- }
-)
+```
+secret=&token=&ip=
```
Where:
@@ -85,7 +78,7 @@ In its response, the service will return a JSON object containing the `status` a
## Request errors {#errors}
-If your request to `https://smartcaptcha.yandexcloud.net/validate` is incorrect, the service will return an error. For example:
+If your request to `https://smartcaptcha.yandexcloud.net/validate` is incorrect, the service will return an error. Here is an example:
1. Request missing the server key:
diff --git a/en/_includes/smartwebsecurity/sum-cloud-account.md b/en/_includes/smartwebsecurity/sum-cloud-account.md
index 56a02ea64cc..cef384921af 100644
--- a/en/_includes/smartwebsecurity/sum-cloud-account.md
+++ b/en/_includes/smartwebsecurity/sum-cloud-account.md
@@ -1,6 +1,6 @@
Billing is based on the number of requests across all [clouds](../../resource-manager/concepts/resources-hierarchy.md#cloud) linked to a single [billing account](../../billing/concepts/billing-account.md).
-You pay for the actual number of legitimate requests. For each request you are charged for:
+You pay for the actual number of legitimate requests. For each request, you are charged for:
* Processing with security profile rules, both [basic](../../smartwebsecurity/concepts/rules.md#base-rules) and [Smart Protection](../../smartwebsecurity/concepts/rules.md#smart-protection-rules) ones.
diff --git a/en/_includes/speechkit/transcribe-result-example.md b/en/_includes/speechkit/transcribe-result-example.md
new file mode 100644
index 00000000000..150fb7a7aeb
--- /dev/null
+++ b/en/_includes/speechkit/transcribe-result-example.md
@@ -0,0 +1,200 @@
+{% cut "Result example" %}
+
+```bash
+[session_uuid {
+ uuid: "df49eaa2-25a55218-ae967fa1-********"
+ user_request_id: "f8dkup42nmhk********"
+}
+audio_cursors {
+ received_data_ms: 6600
+ partial_time_ms: 6600
+ final_time_ms: 6600
+}
+response_wall_time_ms: 204
+final {
+ alternatives {
+ words {
+ text: "I"
+ start_time_ms: 380
+ end_time_ms: 420
+ }
+ words {
+ "text": "Yandex"
+ start_time_ms: 539
+ end_time_ms: 919
+ }
+ words {
+ "text": "SpeechKit"
+ start_time_ms: 960
+ end_time_ms: 1719
+ }
+ words {
+ text: "I"
+ start_time_ms: 2159
+ end_time_ms: 2200
+ }
+ words {
+ "text": "can"
+ start_time_ms: 2260
+ end_time_ms: 2440
+ }
+ words {
+ text: "turn"
+ start_time_ms: 2520
+ end_time_ms: 3000
+ }
+ words {
+ "text": "any"
+ start_time_ms: 3060
+ end_time_ms: 3320
+ }
+ words {
+ "text": "text"
+ start_time_ms: 3419
+ end_time_ms: 3740
+ }
+ words {
+ "text": "into"
+ start_time_ms: 3780
+ end_time_ms: 3800
+ }
+ words {
+ "text": "speech"
+ start_time_ms: 3860
+ end_time_ms: 4279
+ }
+ words {
+ "text": "now"
+ start_time_ms: 4680
+ end_time_ms: 5240
+ }
+ words {
+ "text": "you"
+ start_time_ms: 5339
+ end_time_ms: 5380
+ }
+ words {
+ "text": "can"
+ start_time_ms: 5460
+ end_time_ms: 5766
+ }
+ words {
+ text: "too"
+ start_time_ms: 5920
+ end_time_ms: 6393
+ }
+ text: "I'm Yandex SpeechKit I can turn any text into speech now you can too"
+ end_time_ms: 6600
+ }
+ channel_tag: "0"
+}
+channel_tag: "0"
+, session_uuid {
+ uuid: "df49eaa2-25a55218-ae967fa1-********"
+ user_request_id: "f8dkup42nmhk********"
+}
+audio_cursors {
+ received_data_ms: 6600
+ partial_time_ms: 6600
+ final_time_ms: 6600
+}
+response_wall_time_ms: 204
+final_refinement {
+ normalized_text {
+ alternatives {
+ words {
+ text: "I"
+ start_time_ms: 380
+ end_time_ms: 420
+ }
+ words {
+ "text": "Yandex"
+ start_time_ms: 539
+ end_time_ms: 919
+ }
+ words {
+ "text": "SpeechKit"
+ start_time_ms: 960
+ end_time_ms: 1719
+ }
+ words {
+ text: "I"
+ start_time_ms: 2159
+ end_time_ms: 2200
+ }
+ words {
+ "text": "can"
+ start_time_ms: 2260
+ end_time_ms: 2440
+ }
+ words {
+ text: "turn"
+ start_time_ms: 2520
+ end_time_ms: 3000
+ }
+ words {
+ "text": "any"
+ start_time_ms: 3060
+ end_time_ms: 3320
+ }
+ words {
+ "text": "text"
+ start_time_ms: 3419
+ end_time_ms: 3740
+ }
+ words {
+ "text": "into"
+ start_time_ms: 3780
+ end_time_ms: 3800
+ }
+ words {
+ "text": "speech"
+ start_time_ms: 3860
+ end_time_ms: 4279
+ }
+ words {
+ "text": "now"
+ start_time_ms: 4680
+ end_time_ms: 5240
+ }
+ words {
+ "text": "you"
+ start_time_ms: 5339
+ end_time_ms: 5380
+ }
+ words {
+ "text": "can"
+ start_time_ms: 5460
+ end_time_ms: 5766
+ }
+ words {
+ text: "too"
+ start_time_ms: 5920
+ end_time_ms: 6393
+ }
+ text: "I'm Yandex SpeechKit I can turn any text into speech now you can too"
+ end_time_ms: 6600
+ }
+ channel_tag: "0"
+ }
+}
+channel_tag: "0"
+, session_uuid {
+ uuid: "df49eaa2-25a55218-ae967fa1-********"
+ user_request_id: "f8dkup42nmhk********"
+}
+audio_cursors {
+ received_data_ms: 6600
+ partial_time_ms: 6600
+ final_time_ms: 6600
+ eou_time_ms: 6600
+}
+response_wall_time_ms: 204
+eou_update {
+ time_ms: 6600
+}
+channel_tag: "0"
+]
+```
+
+{% endcut %}
\ No newline at end of file
diff --git a/en/_includes/speechsense/reports/filters.md b/en/_includes/speechsense/reports/filters.md
index 497e0bc35e6..1153198ea71 100644
--- a/en/_includes/speechsense/reports/filters.md
+++ b/en/_includes/speechsense/reports/filters.md
@@ -1,10 +1,10 @@
-# Report filtering
+# Filtering in the report
You can use filtering to select the dialogs to include in your report. To do this, use the following settings:
-* Period: Period of time for which the report is generated.
-* Filters: Use the same fields as for the parameters.
-* Grouping: Choose how to group data in your report. You can only group by metadata fields, e.g.:
+* **Period**: Time period of the report.
+* **Filters**: Use the same fields as for the parameters. You can also use [neuroparameters](../../../speechsense/concepts/reports/neuro-parameters.md) in filters.
+* **Grouping**: Choose how to group data in your report. You can only group by metadata fields, for example:
* By agent, to analyze the performance of each one.
* By product, to learn which products agents make fewer mistakes presenting in dialogs.
diff --git a/en/_includes/speechsense/reports/parameters.md b/en/_includes/speechsense/reports/parameters.md
index 28fa6b6fd35..56f0a940648 100644
--- a/en/_includes/speechsense/reports/parameters.md
+++ b/en/_includes/speechsense/reports/parameters.md
@@ -3,8 +3,8 @@
* **Bot** (only for chats): Bot data.
* **Speech statistics** (only for audio): Agent and customer speech quality criteria, e.g., speech rate, mutual interruptions, etc.
* **General metadata**: Data about the conversation audio (collected via PBX) or text chat. Metadata is uploaded to {{ speechsense-name }} together with the conversation audio or text chat and contains its key characteristics, e.g., date, topic, and dialog language.
-* **Customer tags** and **Agent tags**: Classifiers applied to conversation audio recognition results or text chat messages. {{ speechsense-name }} scans the dialog for specific keywords, phrases, or intonations, classifies the dialog, and adds a tag to it.
+* **Customer tags** and **Agent tags**: Classifiers applied to conversation audio recognition results or text chat messages. {{ speechsense-name }} detects specific keywords, phrases, or intonations in the dialog, classifies and tags the dialog.
- {{ speechsense-name }} has preconfigured tags. These can give you a clue as to whether there was an informal greeting or goodbye, whether the agent thanked the customer for waiting, whether it was the customer's repeat call to support, etc. You can learn more about tags [here](../../../speechsense/concepts/tags.md).
+ {{ speechsense-name }} has preconfigured tags. These can give you a clue as to whether there was an informal greeting or goodbye, whether the agent thanked the customer for waiting, whether it was the customer's repeat call to support, etc. You can learn more about tags [here](../../../speechsense/concepts/tags.md).
-* **YandexGPT analysis**: Agent's performance criteria and customer's behavioral characteristics during the dialog, such as whether the agent was polite, whether the customer was on the rude side, etc.
+* **Analysis by {{ yagpt-name }}**: Agent's performance criteria and customer's behavioral characteristics during the dialog, such as whether the agent was polite, whether the customer was on the rude side, etc.
diff --git a/en/_includes/speechsense/tag/tag-settings.md b/en/_includes/speechsense/tag/tag-settings.md
index 150d96398a3..f2688d0d2e6 100644
--- a/en/_includes/speechsense/tag/tag-settings.md
+++ b/en/_includes/speechsense/tag/tag-settings.md
@@ -16,7 +16,7 @@
A tag is assigned the _poor service_ key phrase. The search for this phrase will be performed differently depending on the **{{ ui-key.yc-ui-talkanalytics.tags.words-between-key-value }}** field value:
- | Phrase example | Distance: `0` | Distance: `1` | Distance: `2` |
+ | Example in a dialog | Distance: `0` | Distance: `1` | Distance: `2` |
| ----------- | ----------- | ----------- | ----------- |
| _poor service_ | found | found | found |
| _poor customer service_ | not found | found | found |
diff --git a/en/_includes/storage/create-bucket.md b/en/_includes/storage/create-bucket.md
index c094788bfb5..c34cf4579e7 100644
--- a/en/_includes/storage/create-bucket.md
+++ b/en/_includes/storage/create-bucket.md
@@ -6,7 +6,7 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where you want to create your bucket.
+ 1. In the [management console]({{ link-console-main }}), select the folder you want to create a bucket in.
1. Select **{{ objstorage-name }}**.
1. Click **{{ ui-key.yacloud.storage.buckets.button_empty-create }}**.
1. On the bucket creation page:
@@ -31,7 +31,7 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
* `{{ ui-key.yacloud.storage.bucket.settings.class_value_cold }}`.
* `{{ ui-key.yacloud.storage.bucket.settings.class_value_ice }}`.
- The "colder" classes are for long-term storage of objects you intend to use less frequently. The "colder" the storage, the less you pay for it, but also the more expensive it is to read and write data.
+ "Cold" classes are designed to store objects that you plan to use less frequently for longer periods of time. The "colder" your storage is, the less you pay for storing data; however, the costs of reading and writing data increase.
1. Add [labels](../../storage/concepts/tags.md), if required:
1. Click **{{ ui-key.yacloud.component.label-set.button_add-label }}**.
@@ -86,7 +86,7 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
* `cold`: Cold storage.
* `ice`: Ice storage.
- The "colder" classes are for long-term storage of [objects](../../storage/concepts/object.md) you intend to use less frequently. The "colder" the storage, the less you pay for it, but also the more expensive it is to read and write data.
+ "Cold" classes are designed to store [objects](../../storage/concepts/object.md) that you plan to use less frequently for longer periods of time. The "colder" your storage is, the less you pay for storing data; however, the costs of reading and writing data increase.
* `--max-size`: Maximum bucket size, in bytes. Default value: `0` (unlimited).
* Parameters for enabling [public access](../../storage/security/public-access.md) to a bucket:
@@ -101,11 +101,11 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
* Parameters to configure the bucket [ACL](../../storage/concepts/acl.md):
* `--acl`: Predefined ACL. For a list of possible values, see [Predefined ACLs](../../storage/concepts/acl.md#predefined-acls). You cannot use this parameter together with the `--grants` parameter.
* `--grants`: Configures permissions for individual users, [service accounts](../../iam/concepts/users/service-accounts.md), [user groups](../../organization/concepts/groups.md), and [public groups](../../storage/concepts/acl.md#public-groups) (a group of all internet users or a group of all authenticated {{ yandex-cloud }} users). You cannot use this parameter together with the `--acl` parameter. The parameter value is specified in the following format: `grant-type=,grantee-id=,permission=`, where:
- * `grant-type`: Type of the permission grantee. The possible values are:
+ * `grant-type`: Permission grantee type. The possible values are:
* `grant-type-account`: User, [service account](../../iam/concepts/users/service-accounts.md), or [user group](../../organization/concepts/groups.md).
* `grant-type-all-authenticated-users`: [Public group](../../storage/concepts/acl.md#public-groups) that includes all authenticated {{ yandex-cloud }} users.
* `grant-type-all-users`: Public group that includes all internet users.
- * `grantee-id`: ID of the user, service account, or user group to which you need to grant permission. It is only specified if `grant-type=grant-type-account`.
+ * `grantee-id`: ID of the user, service account, or user group you need to grant a permission to. Specified only if `grant-type=grant-type-account`.
* `permission`: ACL permission type. Possible values: `permission-full-control`, `permission-write`, `permission-read`. For more information about permissions, see [Permission types](../../storage/concepts/acl.md#permissions-types).
To configure multiple permissions, specify the `--grants` parameter multiple times.
@@ -188,13 +188,13 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
Where:
* Possible types of ACL permissions:
- * `--grant-read`: Permission to access the list of objects in the bucket, read various bucket settings (e.g., lifecycle, CORS, or static hosting), and read all objects in the bucket.
+ * `--grant-read`: Permission to access the list of objects in the bucket, read various bucket settings (lifecycle, CORS, or static hosting), and read all objects in the bucket.
* `--grant-write`: Permission to write, overwrite, and delete objects in the bucket. Can only be used together with `--grant-read`.
* `--grant-full-control`: Full access to the bucket and the objects in it.
You can set multiple permissions within the same command.
* The possible permission grantees are:
- * `id=`: ID of the user, service account, or user group to which you need to grant permission.
+ * `id=`: ID of the user, service account, or user group you need to grant a permission to.
* `uri=http://acs.amazonaws.com/groups/global/AuthenticatedUsers`: [Public group](../../storage/concepts/acl.md#public-groups) that includes all authenticated {{ yandex-cloud }} users.
* `uri=http://acs.amazonaws.com/groups/global/AllUsers`: Public group that includes all internet users.
@@ -202,7 +202,7 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
{% endcut %}
- You can learn more about the `aws s3api create-bucket` command in the [AWS documentation](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/create-bucket.html).
+ For more information about the `aws s3api create-bucket` command, see the [AWS documentation](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/create-bucket.html).
- {{ TF }} {#tf}
@@ -276,8 +276,8 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
Where:
* `yandex_iam_service_account`: Description of the [service account](../../iam/concepts/users/service-accounts.md) to create and use the [bucket](../../storage/concepts/bucket.md):
- * `name`: Service account name.
- * `bucket`: Bucket name.
+ * `name`: Service account name
+ * `bucket`: Bucket name
By default, a bucket with a dot in the name is only available over HTTP. To provide HTTPS support for your bucket, [upload your own security certificate](../../storage/operations/hosting/certificate.md) to {{ objstorage-name }}.
@@ -290,7 +290,7 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
* `cold`: Cold storage.
* `ice`: Ice storage.
- The "colder" classes are for long-term storage of objects you intend to use less frequently. The "colder" the storage, the less you pay for it, but also the more expensive it is to read and write data.
+ "Cold" classes are designed to store objects that you plan to use less frequently for longer periods of time. The "colder" your storage is, the less you pay for storing data; however, the costs of reading and writing data increase.
* `anonymous_access_flags`: [Access](../../storage/concepts/bucket.md#bucket-access) settings:
@@ -300,9 +300,9 @@ To create a [bucket](../../storage/concepts/bucket.md), you need the _minimum_ `
* `tags`: Bucket [labels](../../storage/concepts/tags.md) in `key = "value"` format.
- `name`: Required parameter Other parameters are optional. By default, the `max-size` value is `0`, public access to the bucket is disabled, and the storage class is set to `standard`.
+ `name`: Required parameter. Other parameters are optional. By default, the `max-size` value is `0`, public access to the bucket is disabled, and the storage class is set to `standard`.
- For more information about the `yandex_storage_bucket` parameters in {{ TF }}, see the [provider documentation]({{ tf-provider-resources-link }}/storage_bucket).
+ For more information about the `yandex_storage_bucket` resource parameters in {{ TF }}, see the [relevant provider documentation]({{ tf-provider-resources-link }}/storage_bucket).
1. Create resources:
diff --git a/en/_includes/storage/generate-signing-key.md b/en/_includes/storage/generate-signing-key.md
index 19300cf33cb..a131ceb779b 100644
--- a/en/_includes/storage/generate-signing-key.md
+++ b/en/_includes/storage/generate-signing-key.md
@@ -1,27 +1,25 @@
-To generate a signing key, you need static access keys for {{ objstorage-name }}. To learn how to get them, see [Before you start](../../storage/s3/index.md#before-you-begin).
-
-Generate a signing key
+To generate a signing key:
1. Use the secret key to encode the date:
- ```
- DateKey = sign("AWS4" + "SecretKey", "yyyymmdd")
- ```
+ ```
+ DateKey = sign("AWS4" + "SecretKey", "yyyymmdd")
+ ```
-1. Encode the region using the `DateKey` obtained in the previous step:
+1. Encode the region using the `DateKey` you got in the previous step:
- ```
- RegionKey = sign(DateKey, "{{ region-id }}")
- ```
+ ```
+ RegionKey = sign(DateKey, "{{ region-id }}")
+ ```
-1. Encode the service using the `RegionKey` obtained in the previous step:
+1. Encode the service using the `RegionKey` you got in the previous step:
- ```
- ServiceKey = sign(RegionKey, "s3")
- ```
+ ```
+ ServiceKey = sign(RegionKey, "s3")
+ ```
-1. Get a signing key:
+1. Get the signing key:
- ```
- SigningKey = sign(ServiceKey, "aws4_request")
- ```
+ ```
+ SigningKey = sign(ServiceKey, "aws4_request")
+ ```
diff --git a/en/_includes/support/notify.md b/en/_includes/support/notify.md
index f594b0ae975..a92c8b8d405 100644
--- a/en/_includes/support/notify.md
+++ b/en/_includes/support/notify.md
@@ -48,7 +48,9 @@ Some {{ yandex-cloud }} maintenance operations may affect the performance or ava
### Infrastructure failure {#infra}
-If there is a {{ yandex-cloud }} failure that can potentially affect the security or availability of your data, technical support will notify you by email as soon as the scope and impact of the problem are identified. Failure notifications will be sent to the subscribers of the folder hosting the affected resource.
+If there is a {{ yandex-cloud }} failure that can potentially affect the security or availability of your data, our support team will notify you by email as soon as the scope and impact of the problem are identified. Failure notifications will be sent to the subscribers of the folder hosting the affected resource.
+
+Our support team does not send notifications about platform incidents. You can check the availability of services on the platform component status [page](https://status.cloud.yandex.ru/dashboard) or follow the announcements in our [Telegram channel](https://t.me/yandexcloudalerts).
### Information security incident {#security}
@@ -65,4 +67,4 @@ To configure notification methods:
1. Under **{{ ui-key.yacloud_components.settings.section_settings }}**, select the types of notifications to send and channels for receiving them:
* ![image](../../_assets/console-icons/at.svg): Email
* ![image](../../_assets/console-icons/smartphone.svg): Text message
- * ![image](../../_assets/console-icons/logo-telegram.svg): Telegram bot message
\ No newline at end of file
+ * ![image](../../_assets/console-icons/logo-telegram.svg): Telegram bot message
diff --git a/en/_includes/tracker/color-issue.md b/en/_includes/tracker/color-issue.md
index 9c713286941..ac4e9c4a011 100644
--- a/en/_includes/tracker/color-issue.md
+++ b/en/_includes/tracker/color-issue.md
@@ -4,7 +4,7 @@ By default, issue bars on the chart are colored according to the issue status ty
To select a different color scheme:
-1. Above the timeline on the right, click ![](../../_assets/tracker/svg/gantt-settings-button.svg) **{{ ui-key.startrek.ui_components_Gantt.timeline-config }}**.
+1. Above the timeline on the right, click ![](../../_assets/tracker/svg/gantt-settings-button.svg) **Chart settings**.
1. Under **{{ ui-key.startrek-backend.fields.issue.paletteColor }}**, you can choose an appropriate color scheme:
{% list tabs %}
@@ -13,10 +13,10 @@ To select a different color scheme:
This option allows you to set issue colors right on the chart.
- 1. Select **{{ ui-key.startrek.ui_components_Gantt.color-type-by-manual }}**.
+ 1. Select **manual**.
1. Click **Apply**.
- Select an issue from the list to the left of the chart and click ![](../../_assets/horizontal-ellipsis.svg) **{{ ui-key.startrek.ui_components_Gantt_IssueActionsCell.issue-action-menu-title }}**. This will open a palette where you can set the issue color.
+ Select an issue from the list to the left of the chart and click ![](../../_assets/horizontal-ellipsis.svg) **Issue actions menu**. This will open a palette where you can set the issue color.
![](../../_assets/tracker/three-dots-menu.png)
@@ -25,7 +25,7 @@ To select a different color scheme:
This option will be of use if you need to differentiate issues by a certain parameter, such as a queue or tag.
- 1. Select **{{ ui-key.startrek.ui_components_Gantt.color-type-by-parameter }}**.
+ 1. Select **by task parameters**.
1. Specify the parameter whose values you want to set colors for.
1. Click **Apply**.
@@ -33,7 +33,7 @@ To select a different color scheme:
All issue bars on the chart will be blue.
- 1. Select **{{ ui-key.startrek.ui_components_Gantt.color-type-monochrome }}**.
+ 1. Select **monochrome**.
1. Click **Apply**.
{% endlist %}
diff --git a/en/_includes/tracker/external-blockers.md b/en/_includes/tracker/external-blockers.md
index 4c3601444c4..7a9dda8339a 100644
--- a/en/_includes/tracker/external-blockers.md
+++ b/en/_includes/tracker/external-blockers.md
@@ -1 +1 @@
-* To enable displaying external blockers in the issue list, select **{{ ui-key.startrek.ui_components_Gantt.show-external-blockers }}**.
+* To enable displaying external blockers in the issue list, select **Show external blockers**.
diff --git a/en/_includes/tracker/gantt-assigned.md b/en/_includes/tracker/gantt-assigned.md
index 7e2f7427639..2b6c8b3aa94 100644
--- a/en/_includes/tracker/gantt-assigned.md
+++ b/en/_includes/tracker/gantt-assigned.md
@@ -6,6 +6,6 @@ On the Gantt chart, you can appoint or change the issue's assignee:
{% note info %}
-If you do not see the ![](../../_assets/tracker/svg/pick-user.svg) button on the issue bar, go to ![](../../_assets/tracker/svg/gantt-settings-button.svg) **{{ ui-key.startrek.ui_components_Gantt.timeline-config }}** and select the **assignee** item under **Issue bar**.
+If you do not see the ![](../../_assets/tracker/svg/pick-user.svg) button on the issue bar, go to ![](../../_assets/tracker/svg/gantt-settings-button.svg) **Chart settings** and select the **assignee** item under **Issue bar**.
{% endnote %}
diff --git a/en/_includes/tracker/gantt-time-scale.md b/en/_includes/tracker/gantt-time-scale.md
index 9e9d0cb9801..049d2f5c5f5 100644
--- a/en/_includes/tracker/gantt-time-scale.md
+++ b/en/_includes/tracker/gantt-time-scale.md
@@ -1 +1 @@
-To set up the time scale, select **{{ ui-key.startrek.ui_components_Gantt.scale-days }}**, **{{ ui-key.startrek.ui_components_Gantt.scale-month }}**, or **{{ ui-key.startrek.ui_components_Gantt.scale-quarters }}** in the bottom-right corner of the chart. The scale settings persist after refreshing the page or opening the chart again.
\ No newline at end of file
+To set up the time scale, select **Week**, **Month**, or **Quarter** in the bottom-right corner of the chart. The scale settings persist after refreshing the page or opening the chart again.
\ No newline at end of file
diff --git a/en/_includes/tracker/gantt-timing-prolongate.md b/en/_includes/tracker/gantt-timing-prolongate.md
index b907e0f9ef7..52aca84d448 100644
--- a/en/_includes/tracker/gantt-timing-prolongate.md
+++ b/en/_includes/tracker/gantt-timing-prolongate.md
@@ -1 +1 @@
-* To set up automatic updates of start dates and deadlines for dependent issues, go to ![](../../_assets/tracker/svg/gantt-settings-button.svg) **{{ ui-key.startrek.ui_components_Gantt.timeline-config }}** and select **{{ ui-key.startrek.ui_components_Gantt.shift-blocked-with-blocker }}**. If the deadline of the blocking issue is later than the start date of the dependent issue, this start date is shifted based on the blocking issue's new deadline.
+* To set up automatic updates of start dates and deadlines for dependent issues, go to ![](../../_assets/tracker/svg/gantt-settings-button.svg) **Chart settings** and select **Automatically move the deadline of the dependent issue when the blocking issue's deadline changes**. If the deadline of the blocking issue is later than the start date of the dependent issue, this start date is shifted based on the blocking issue's new deadline.
diff --git a/en/_includes/tracker/issue-bar.md b/en/_includes/tracker/issue-bar.md
index 5effeb91dbe..cde95d41236 100644
--- a/en/_includes/tracker/issue-bar.md
+++ b/en/_includes/tracker/issue-bar.md
@@ -1,7 +1,7 @@
-Above the timeline on the right, click ![](../../_assets/tracker/svg/gantt-settings-button.svg) **{{ ui-key.startrek.ui_components_Gantt.timeline-config }}** and select a setting in **Issue bar**:
+Above the timeline on the right, click ![](../../_assets/tracker/svg/gantt-settings-button.svg) **Chart settings** and select a setting in **Issue bar**:
-* To show the issue name on the issue bar, select the **{{ ui-key.startrek.ui_components_Gantt.show-issue-title }}** item.
+* To show the issue name on the issue bar, select the **name** item.
-* To show the assignee icon on the issue bar, select the **{{ ui-key.startrek.ui_components_Gantt.show-issue-assignee }}** item.
+* To show the assignee icon on the issue bar, select the **assignee** item.
* To have the missed deadline property (the difference between the deadline and the current date) highlighted in red on the chart, select **missed deadline**.
diff --git a/en/_includes/tracker/issues-table-project.md b/en/_includes/tracker/issues-table-project.md
index 7c26b31601b..9e6ccea41fe 100644
--- a/en/_includes/tracker/issues-table-project.md
+++ b/en/_includes/tracker/issues-table-project.md
@@ -1,8 +1,8 @@
* To select the fields you want to see in the issue list table to the left of the chart, click ![](../../_assets/tracker/svg/settings-old.svg). Select the relevant items and click **Apply**.
-* To find issues in the list, start typing in the **{{ ui-key.startrek.ui_components_filter-pane.search-placeholder }}** field.
+* To find issues in the list, start typing in the **{{ ui-key.startrek.ui_Common_smart-components_filter-pane.search-placeholder }}** field.
-* To set up their display order in the list, click ![](../../_assets/tracker/svg/sorting.svg) **{{ ui-key.startrek.ui_components_SortButton.default-title }}**, specify the parameter, and click ![](../../_assets/tracker/svg/new-first.svg). In this case, you will not be able to move issues manually.
+* To set up their display order in the list, click ![](../../_assets/tracker/svg/sorting.svg) **{{ ui-key.startrek.ui_Common_smart-components_SortButton.default-title }}**, specify the parameter, and click ![](../../_assets/tracker/svg/new-first.svg). In this case, you will not be able to move issues manually.
* To group issues by their status, assignee, or other parameters, click ![](../../_assets/tracker/svg/group.svg) **Not grouped** and select the appropriate option from the list.
@@ -14,7 +14,7 @@
* To hide the issue list section, click ![](../../_assets/tracker/svg/close-block.svg).
-* To change the layout of the issue list, select ![](../../_assets/tracker/svg/flat-list.svg) **{{ ui-key.startrek.ui_components_filter-pane.list-mode-flat }}** or ![](../../_assets/tracker/svg/tree-list.svg) **{{ ui-key.startrek.ui_components_filter-pane.list-mode-tree }}**.{#trees}
+* To change the layout of the issue list, select ![](../../_assets/tracker/svg/flat-list.svg) **{{ ui-key.startrek.ui_Common_smart-components_filter-pane.list-mode-flat }}** or ![](../../_assets/tracker/svg/tree-list.svg) **{{ ui-key.startrek.ui_Common_smart-components_filter-pane.list-mode-tree }}**.{#trees}
{% note info %}
@@ -26,7 +26,7 @@
In the tree list, you can create new sub-issues or change links for sub-issues:
- * To create a sub-issue, click ![](../../_assets/tracker/svg/icon-add.svg) **{{ ui-key.startrek.ui_components_projects_Table.add-sub-issue }}** next to the issue:
+ * To create a sub-issue, click ![](../../_assets/tracker/svg/icon-add.svg) **Add sub-issue** next to the issue:
* To create an issue, go to the **New issue** tab. Give your issue a name and press **Enter**.
* If the issue already exists, go to the **Existing issue** tab, specify the issue key or name, and select the issue from the list. You can find the key on the issue page, under the title (for example, `TEST-1234`).
@@ -37,6 +37,6 @@
{% note info %}
- You can move issues manually if no sorting parameter is selected in the **{{ ui-key.startrek.ui_components_SortButton.default-title }}** field. By default, manual sorting mode is selected for the list of issues: you can drag issues in the list.
+ You can move issues manually if no sorting parameter is selected in the **{{ ui-key.startrek.ui_Common_smart-components_SortButton.default-title }}** field. By default, manual sorting mode is selected for the list of issues: you can drag issues in the list.
{% endnote %}
\ No newline at end of file
diff --git a/en/_includes/tracker/issues-table-queue-filter-project.md b/en/_includes/tracker/issues-table-queue-filter-project.md
index cdc5e9f17a7..b1ad5e5c9d3 100644
--- a/en/_includes/tracker/issues-table-queue-filter-project.md
+++ b/en/_includes/tracker/issues-table-queue-filter-project.md
@@ -1,12 +1,12 @@
* To select the fields you want to see in the issue list table to the left of the chart, click ![](../../_assets/tracker/svg/settings-old.svg). Select the relevant items and click **Apply**.
-* To find issues in the list, start typing in the **{{ ui-key.startrek.ui_components_filter-pane.search-placeholder }}** field.
+* To find issues in the list, start typing in the **{{ ui-key.startrek.ui_Common_smart-components_filter-pane.search-placeholder }}** field.
-* To set up their display order in the list, click ![](../../_assets/tracker/svg/sorting.svg) **{{ ui-key.startrek.ui_components_SortButton.default-title }}**, specify the parameter, and click ![](../../_assets/tracker/svg/new-first.svg). In this case, you will not be able to move issues manually.
+* To set up their display order in the list, click ![](../../_assets/tracker/svg/sorting.svg) **{{ ui-key.startrek.ui_Common_smart-components_SortButton.default-title }}**, specify the parameter, and click ![](../../_assets/tracker/svg/new-first.svg). In this case, you will not be able to move issues manually.
* To group issues by their status, assignee, or other parameters, click ![](../../_assets/tracker/svg/group.svg) **Not grouped** and select the appropriate option from the list.
-* To filter the issue list, use the filter builder. For this, on the ![](../../_assets/tracker/svg/filter.svg) **{{ ui-key.startrek.ui_components_IssueTabs.fields-tab }}** panel, select the parameters and specify the values to use for generating an issue list.
+* To filter the issue list, use the filter builder. For this, on the ![](../../_assets/tracker/svg/filter.svg) **Parameters** panel, select the parameters and specify the values to use for generating an issue list.
* To swap the list columns, click ![](../../_assets/tracker/svg/settings-old.svg) above the list. Next, in the **Added** section, click the parameter, hold and drag it within the section. Click **Apply**.
diff --git a/en/_includes/tracker/on-premise-server.md b/en/_includes/tracker/on-premise-server.md
index 9a73627db9e..9420645654a 100644
--- a/en/_includes/tracker/on-premise-server.md
+++ b/en/_includes/tracker/on-premise-server.md
@@ -6,11 +6,11 @@ To connect your own server to {{ tracker-name }}:
1. In the **Platform** field, select the platform your server is connected to.
-1. In the **{{ ui-key.startrek.ui_components_admin-repositories_ConnectRepositoryDialog_fields_UrlField.server-url-label }}** field, specify your server address to any repository that can be accessed using a token.
+1. In the **Link to repository** field, specify your server address to any repository that can be accessed using a token.
1. Get an OAuth token for your repository on GitLab. For details on how to get a token, see the [GitLab documentation](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#create-a-personal-access-token). For the proper operation of {{ tracker-name }}, enable the **read_repository** and **read_api** options when setting up permissions.
-1. In the **{{ ui-key.startrek.ui_components_admin-repositories_ConnectRepositoryDialog.token-label }}** field, enter the token for connecting to your server.
+1. In the **{{ ui-key.startrek.ui_Common_smart-components_admin-repositories_ConnectRepositoryDialog.token-label }}** field, enter the token for connecting to your server.
1. Click **Connect**.
diff --git a/en/_includes/tracker/open-personal-settings.md b/en/_includes/tracker/open-personal-settings.md
index 2f1fbe16ba1..9f760413bf1 100644
--- a/en/_includes/tracker/open-personal-settings.md
+++ b/en/_includes/tracker/open-personal-settings.md
@@ -1 +1 @@
-In the left-hand panel, click ![](../../_assets/tracker/svg/settings.svg) **{{ ui-key.startrek.ui_components_PageAgileBoard_PageAgileBoardHeader.settings }}**.
+In the left-hand panel, click ![](../../_assets/tracker/svg/settings.svg) **{{ ui-key.startrek.ui_Boards_pages_PageAgileBoard_PageAgileBoardHeader.settings }}**.
diff --git a/en/_includes/tracker/repository-path.md b/en/_includes/tracker/repository-path.md
index ef12938af2b..9ecaf0334a5 100644
--- a/en/_includes/tracker/repository-path.md
+++ b/en/_includes/tracker/repository-path.md
@@ -1 +1 @@
-In the left-hand panel, click ![](../../_assets/tracker/svg/still.svg) and select **Admin settings** → ![](../../_assets/tracker/svg/repositories.svg) **{{ ui-key.startrek.ui_components_page-admin_PageAdmin.menu-item-repositories }}** → **{{ ui-key.startrek.ui_components_admin-repositories_ConnectRepositoryDialog.connect }}**.
\ No newline at end of file
+In the left-hand panel, click ![](../../_assets/tracker/svg/still.svg) and select **Admin settings** → ![](../../_assets/tracker/svg/repositories.svg) **{{ ui-key.startrek.ui_Common_smart-components_page-admin_PageAdmin.menu-item-repositories }}** → **{{ ui-key.startrek.ui_Common_smart-components_admin-repositories_ConnectRepositoryDialog.connect }}**.
\ No newline at end of file
diff --git a/en/_includes/tracker/task-by-mail.md b/en/_includes/tracker/task-by-mail.md
index 073bfbb221f..981b16e4ee9 100644
--- a/en/_includes/tracker/task-by-mail.md
+++ b/en/_includes/tracker/task-by-mail.md
@@ -6,16 +6,16 @@
1. {% include [go to settings](transition-page.md) %}
- 1. In the top-right corner, click ![](../../_assets/tracker/svg/queue-settings.svg) **{{ ui-key.startrek.ui_components_PageQueue_header.settings }}**.
+ 1. In the top-right corner, click ![](../../_assets/tracker/svg/queue-settings.svg) **{{ ui-key.startrek.ui_Queues_pages_PageQueue_header.settings }}**.
- 1. Select **{{ ui-key.startrek.ui_components_page-queue-admin_QueueAdminPageContent.menu-item-aliases }}**.
+ 1. Select **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_QueueAdminPageContent.menu-item-aliases }}**.
1. Click **Configure mail**.
1. Set up the mailbox for receiving messages:
- 1. Under **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-settings-title }}**, in the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-address }}** field, specify the email address you created in Step 1, including the domain, e.g., `{{ example-account }}`. The **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-login }}** field will be populated automatically.
- 1. In the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-password }}** field, provide the password for your email address. If the selected email server allows you to control access to the mailbox by an application password, enter the application's password for email clients in this field.
+ 1. Under **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-settings-title }}**, in the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-address }}** field, specify the email address you created in Step 1, including the domain, e.g., `{{ example-account }}`. The **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-login }}** field will be populated automatically.
+ 1. In the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-password }}** field, provide the password for your email address. If the selected email server allows you to control access to the mailbox by an application password, enter the application's password for email clients in this field.
{% note info "If the setup failed with a 404 error" %}
@@ -26,15 +26,15 @@
[Learn more about application passwords in the Yandex ID documentation]({{ link-yandex }}/support/id/authorization/app-passwords.html).
- 1. Enter the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-imap }}** and the email server **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-port }}**: you need them to collect emails. You can find this data in your email account settings.
- 1. To enable SSL encryption, select **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-ssl }}**.
- 1. If you need to process emails not only from the organization's employees but from external users as well, enable the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-allow-external }}** setting.
+ 1. Enter the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-imap }}** and the email server **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-port }}**: you need them to collect emails. You can find this data in your email account settings.
+ 1. To enable SSL encryption, select **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-ssl }}**.
+ 1. If you need to process emails not only from the organization's employees but from external users as well, enable the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-allow-external }}** setting.
{% cut "Additional parameters" %}
- * **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-incoming-folder }}**: Create a folder for emails from {{ tracker-name }} and specify its name. Any emails sent to this folder will automatically be converted to queue issues.
- * **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-archive-folder }}**: Create a folder for archiving emails from {{ tracker-name }} and specify its name.
- * **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-process-messages-from }}**: Set the date. Emails received prior to this date are not processed and are automatically moved to the **Archive** folder.
+ * **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-incoming-folder }}**: Create a folder for emails from {{ tracker-name }} and specify its name. Any emails sent to this folder will automatically be converted to queue issues.
+ * **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-archive-folder }}**: Create a folder for archiving emails from {{ tracker-name }} and specify its name.
+ * **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-process-messages-from }}**: Set the date. Emails received prior to this date are not processed and are automatically moved to the **Archive** folder.
{% note alert %}
@@ -49,15 +49,15 @@
1. Specify the parameters to create issues from your email with: the issue type and [components](../../tracker/manager/components.md).
1. If you want the issue comments to be also sent as emails, set up a mailbox for sending messages:
- 1. Under **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.send-settings-title }}**, click ![](../../_assets/tracker/svg/add-address.svg) **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesStateList.action-add-mail }}**.
- 1. In the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.send-mail-login }}** field, specify the email address to send emails as issue comments from, e.g., `{{ example-account }}`.
- 1. In the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.send-mail-password }}** field, provide the password for your email address.
- 1. Specify the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.send-mail-smtp }}** and **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.send-mail-port }}** to enable sending emails. You can find this data in your email account settings.
- 1. To enable SSL encryption, select **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.send-mail-ssl }}**.
- 1. Set up **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.signature-settings-title }}** for emails to send. Make sure to specify the **{{ ui-key.startrek.ui_components_page-queue-admin_Signature.alias-title }}**, as you will need it to distinguish signatures in the common list. Your email recipients will see the nickname instead of the sender name.
- 1. Test that everything is up and running: click ![](../../_assets/tracker/svg/send-email.svg) **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesFormSendPanel.test-mail-button }}**.
+ 1. Under **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.send-settings-title }}**, click ![](../../_assets/tracker/svg/add-address.svg) **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesStateList.action-add-mail }}**.
+ 1. In the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.send-mail-login }}** field, specify the email address to send emails as issue comments from, e.g., `{{ example-account }}`.
+ 1. In the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.send-mail-password }}** field, provide the password for your email address.
+ 1. Specify the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.send-mail-smtp }}** and **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.send-mail-port }}** to enable sending emails. You can find this data in your email account settings.
+ 1. To enable SSL encryption, select **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.send-mail-ssl }}**.
+ 1. Set up **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.signature-settings-title }}** for emails to send. Make sure to specify the **Alias**, as you will need it to distinguish signatures in the common list. Your email recipients will see the nickname instead of the sender name.
+ 1. Test that everything is up and running: click ![](../../_assets/tracker/svg/send-email.svg) **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesFormSendPanel.test-mail-button }}**.
- 1. Click **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.save-button }}**. The queue's email address will get running within an hour after creation.
+ 1. Click **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.save-button }}**. The queue's email address will get running within an hour after creation.
1. Enable sending issue comments as emails:
1. In the queue settings, select **Basic settings**.
@@ -73,21 +73,21 @@
1. {% include [go to settings](transition-page.md) %}
- 1. In the top-right corner, click ![](../../_assets/tracker/svg/queue-settings.svg) **{{ ui-key.startrek.ui_components_PageQueue_header.settings }}**.
+ 1. In the top-right corner, click ![](../../_assets/tracker/svg/queue-settings.svg) **{{ ui-key.startrek.ui_Queues_pages_PageQueue_header.settings }}**.
- 1. Select **{{ ui-key.startrek.ui_components_page-queue-admin_QueueAdminPageContent.menu-item-aliases }}**.
+ 1. Select **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_QueueAdminPageContent.menu-item-aliases }}**.
- 1. Check whether your organization has an [email domain]({{ support-business-domain }}) in {{ ya-360 }}. Otherwise, click **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesStateList.action-domain }}** to open {{ ya-360 }} and create a domain. If you already have a email domain set up in another service, you can create a subdomain for it and [connect it to {{ ya-360 }}]({{ support-business-domain }}).
+ 1. Check whether your organization has an [email domain]({{ support-business-domain }}) in {{ ya-360 }}. Otherwise, click **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesStateList.action-domain }}** to open {{ ya-360 }} and create a domain. If you already have a email domain set up in another service, you can create a subdomain for it and [connect it to {{ ya-360 }}]({{ support-business-domain }}).
1. Click **Configure mail**.
1. Set up a mailbox for receiving and sending messages.
- 1. In the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-address }}** field, specify a new email address to be used only for the queue.
- 1. If you need to process emails not only from the organization's employees but from external users as well, enable the **{{ ui-key.startrek.ui_components_page-queue-admin_AliasesCreateForm.mail-allow-external }}** setting.
+ 1. In the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-address }}** field, specify a new email address to be used only for the queue.
+ 1. If you need to process emails not only from the organization's employees but from external users as well, enable the **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_AliasesCreateForm.mail-allow-external }}** setting.
1. Specify the parameters with which the issues should be created in the queue: the [issue type](../../tracker/manager/add-ticket-type.md) and [components](../../tracker/manager/components.md).
- 1. Set up signatures for the sent emails. Make sure to specify the **{{ ui-key.startrek.ui_components_page-queue-admin_Signature.alias-title }}**, as you will need it to distinguish signatures in the common list. Your email recipients will see the nickname instead of the sender name. Check that everything is up and running by sending a test email.
+ 1. Set up signatures for the sent emails. Make sure to specify the **Alias**, as you will need it to distinguish signatures in the common list. Your email recipients will see the nickname instead of the sender name. Check that everything is up and running by sending a test email.
1. Click **Create**. The queue's email address will get running within an hour after creation.
diff --git a/en/_includes/tracker/timeline-area.md b/en/_includes/tracker/timeline-area.md
index fe4e60f9a57..81918c46d04 100644
--- a/en/_includes/tracker/timeline-area.md
+++ b/en/_includes/tracker/timeline-area.md
@@ -1,8 +1,8 @@
On a chart, you can configure the shift logic for dependent and parent issues, as well as issue link display.
-Above the timeline on the right, click ![](../../_assets/tracker/svg/gantt-settings-button.svg) **{{ ui-key.startrek.ui_components_Gantt.timeline-config }}** and select a setting in **Issue bar**:
+Above the timeline on the right, click ![](../../_assets/tracker/svg/gantt-settings-button.svg) **Chart settings** and select a setting in **Issue bar**:
-* To have issues with the _Depends on — Blocks_ link joined with an arrow on the chart, select **{{ ui-key.startrek.ui_components_Gantt.show-links }}**.
+* To have issues with the _Depends on — Blocks_ link joined with an arrow on the chart, select **Show blocking links**.
* To automatically move the deadline of the dependent issue when the blocking issue's deadline changes, select the appropriate option.
diff --git a/en/_includes/video/add-subtitles-optional.md b/en/_includes/video/add-subtitles-optional.md
new file mode 100644
index 00000000000..0f4bd92d29a
--- /dev/null
+++ b/en/_includes/video/add-subtitles-optional.md
@@ -0,0 +1,7 @@
+(Optional) To add [subtitles](../../video/concepts/videos.md#subtitles) to a video, in the **{{ ui-key.yacloud_video.videos.label_subtitles }}** field, click **{{ ui-key.yacloud_video.common.action_add }}**:
+
+1. In the window that opens, select the subtitle language.
+1. Click **Select file** and select the file with subtitles.
+1. Click **{{ ui-key.yacloud_video.common.action_create }}**.
+
+ Wait for the file to upload.
\ No newline at end of file
diff --git a/en/_includes/video/get-key.md b/en/_includes/video/get-key.md
index 98882474758..9a9cb9a2f33 100644
--- a/en/_includes/video/get-key.md
+++ b/en/_includes/video/get-key.md
@@ -2,18 +2,18 @@
- {{ video-name }} interface {#console}
- 1. Open the {{ video-name }} [home page]({{ link-video-main }}).
- 1. Select a channel.
- 1. In the ![image](../../_assets/console-icons/antenna-signal.svg) **{{ ui-key.yacloud_video.streams.title_streams }}** tab, select a stream.
- 1. In the stream settings window that opens, copy the following field values:
+ 1. Open the {{ video-name }} [home page]({{ link-video-main }}).
+ 1. Select a channel.
+ 1. In the ![image](../../_assets/console-icons/antenna-signal.svg) **{{ ui-key.yacloud_video.streams.title_streams }}** tab, select the broadcast you need.
+ 1. In the stream settings window that opens, copy the following field values:
- * **{{ ui-key.yacloud_video.stream-lines.label_stream-key }}**.
- * **{{ ui-key.yacloud_video.stream-lines.label_server-address }}**.
+ * **{{ ui-key.yacloud_video.stream-lines.label_stream-key }}**
+ * **{{ ui-key.yacloud_video.stream-lines.label_server-address }}**
- API {#api}
- To get the server address, use the [StreamLineService/Get](../../video/api-ref/grpc/StreamLine/get.md) gRPC API call.
+ Use the [get](../../video/api-ref/StreamLine/get.md) REST API method for the [StreamLine](../../video/api-ref/StreamLine/index.md) resource or the [StreamLineService/Get](../../video/api-ref/grpc/StreamLine/get.md) gRPC API call.
- To get the stream key, use the [StreamLineService/GetStreamKey](../../video/api-ref/grpc/StreamLine/getStreamKey.md) gRPC API call.
+ Use the [getStreamKey](../../video/api-ref/StreamLine/getStreamKey.md) REST API method for the [StreamLine](../../video/api-ref/StreamLine/index.md) resource or the [StreamLineService/GetStreamKey](../../video/api-ref/grpc/StreamLine/getStreamKey.md) gRPC API call.
{% endlist %}
diff --git a/en/_includes/vision/ai-before-beginning.md b/en/_includes/vision/ai-before-beginning.md
index f248f5308f7..235b3d0383b 100644
--- a/en/_includes/vision/ai-before-beginning.md
+++ b/en/_includes/vision/ai-before-beginning.md
@@ -52,6 +52,6 @@ Get your account data for authentication:
Authorization: Api-Key
```
- Do not specify the folder ID in your requests, as {{ yagpt-name }} uses the folder in which the service account was created.
+ Do not specify the folder ID in your requests, as the service uses the folder the service account was created in.
{% endlist %}
\ No newline at end of file
diff --git a/en/_pricing/compute/usd-instance-resources.md b/en/_pricing/compute/usd-instance-resources.md
index 3a1ebda6b45..997d4ac9bac 100644
--- a/en/_pricing/compute/usd-instance-resources.md
+++ b/en/_pricing/compute/usd-instance-resources.md
@@ -19,6 +19,10 @@
| 100% vCPU | {{ sku|USD|compute.vm.cpu.c100.v3|string }} | {{ sku|USD|compute.vm.cpu.c100.preemptible.v3|string }} | {{ sku|USD|v1.commitment.selfcheckout.m6.compute.vm.cpu.c100.standard.v3|string }} | {{ sku|USD|v1.commitment.selfcheckout.y1.compute.vm.cpu.c100.standard.v3|string }} |
| 1 NVIDIA T4 GPU | {{ sku|USD|compute.vm.gpu.standard.v3-t4|string }} | {{ sku|USD|compute.vm.gpu.standard.v3-t4.preemptible|string }} | − | − |
| RAM (for 1 GB) | {{ sku|USD|compute.vm.ram.v3|string }} | {{ sku|USD|compute.vm.ram.preemptible.v3|string }} | {{ sku|USD|v1.commitment.selfcheckout.m6.compute.vm.ram.standard.v3|string }} | {{ sku|USD|v1.commitment.selfcheckout.y1.compute.vm.ram.standard.v3|string }} |
+| **Intel Ice Lake with T4i** | Regular VM | Preemptible VM | | |
+| 100% vCPU | $0.008400 | $0.008400 | - | - |
+| 1 GPU | $1.152000 | $1.152000 | - | - |
+| RAM (for 1 GB) | $0.002240 | $0.002240 | - | - |
| **Intel Ice Lake (Compute Optimized)** | Regular VM | Preemptible VM | | |
| 100% vCPU | {{ sku|USD|compute.vm.cpu.c100.highfreq-v3|string }} | - | − | − |
| RAM (for 1 GB) | {{ sku|USD|compute.vm.ram.highfreq-v3|string }} | - | − | − |
@@ -31,4 +35,4 @@
| 1 GPU | $13.338400 | $13.338400 | - | - |
| RAM (for 1 GB) | $0.002240 | $0.002240 | - | - |
-^*^ Feature is available on request, subject to technical availability.
\ No newline at end of file
+^*^ Feature is available on request, subject to technical availability.
diff --git a/en/_pricing_examples/managed-kafka/usd-hour.md b/en/_pricing_examples/managed-kafka/usd-hour.md
index a5381274aaa..c6c4ad3acd9 100644
--- a/en/_pricing_examples/managed-kafka/usd-hour.md
+++ b/en/_pricing_examples/managed-kafka/usd-hour.md
@@ -1,60 +1,60 @@
Cost calculation for {{ KF }} broker hosts:
-> 3 × (2 × $0.012080 + 8 × $0.003200) = $0.149280
+> 3 × (2 × {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|string }} + 8 × {{ sku|USD|mdb.cluster.kafka.v3.ram|string }}) = {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.kafka.v3.ram|number }}) %}
>
-> Total: $0.149280, per hour cost of {{ KF }} broker hosts.
+> Total: {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.kafka.v3.ram|number }}) %}, per hour cost of {{ KF }} broker hosts.
Where:
* 3: Number of {{ KF }} broker hosts.
* 2: Number of vCPUs.
-* $0.012080: Cost of using 100% vCPU per hour.
+* {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|string }}: Cost of using 100% vCPU per hour.
* 8: Amount of RAM per host (in GB).
-* $0.003200: Cost of using 1 GB of RAM at 100% vCPU per hour.
+* {{ sku|USD|mdb.cluster.kafka.v3.ram|string }}: Cost of using 1 GB of RAM at 100% vCPU per hour.
Calculating the cost of storage for {{ KF }} broker hosts:
-> 3 × 100 × $0.025600 = $7.680000
+> 3 × 100 × {{ sku|USD|mdb.cluster.network-hdd.kafka|month|string }} = {% calc [currency=USD] 3 × 100 × {{ sku|USD|mdb.cluster.network-hdd.kafka|month|number }} %}
>
-> Total: $7.680000, cost of storage for {{ KF }} broker hosts.
+> Total: {% calc [currency=USD] 3 × 100 × {{ sku|USD|mdb.cluster.network-hdd.kafka|month|number }} %}, cost of storage for {{ KF }} broker hosts.
Where:
* 3: Number of {{ KF }} broker hosts.
* 100: Amount of network HDD storage (in GB).
-* $0.025600: Cost of using 1 GB of network HDD storage per month.
+* {{ sku|USD|mdb.cluster.network-hdd.kafka|month|string }}: Cost of using 1 GB of network HDD storage per month.
Cost calculation for {{ ZK }} hosts:
-> 3 × (2 × $0.005600 + 4 × $0.002240) = $0.060480
+> 3 × (2 × {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|string }} + 4 × {{ sku|USD|mdb.zk.kafka.v3.ram|string }}) = {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|number }} + 4 × {{ sku|USD|mdb.zk.kafka.v3.ram|number }}) %}
>
-> Total: $0.060480, per hour cost of {{ ZK }} hosts.
+> Total: {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|number }} + 4 × {{ sku|USD|mdb.zk.kafka.v3.ram|number }}) %}, per hour cost of {{ ZK }} hosts.
Where:
* 3: Number of {{ ZK }} hosts.
* 2: Number of vCPUs.
-* $0.005600: Cost of using 50% vCPU per hour.
+* {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|string }}: Cost of using 50% vCPU per hour.
* 4: Amount of RAM per host (in GB).
-* $0.002240: Cost of using 1 GB of RAM at 50% vCPU per hour.
+* {{ sku|USD|mdb.zk.kafka.v3.ram|string }}: Cost of using 1 GB of RAM at 50% vCPU per hour.
Calculating the cost of storage for {{ ZK }} hosts:
-> 3 × 10 × $0.104080 = $3.122400
+> 3 × 10 × {{ sku|USD|mdb.cluster.network-nvme.kafka|month|string }} = {% calc [currency=USD] 3 × 10 × {{ sku|USD|mdb.cluster.network-nvme.kafka|month|number }} %}
>
-> Total: $3.122400, cost of storage for {{ ZK }} hosts.
+> Total: {% calc [currency=USD] 3 × 10 × {{ sku|USD|mdb.cluster.network-nvme.kafka|month|number }} %}, cost of storage for {{ ZK }} hosts.
Where:
* 3: Number of {{ ZK }} hosts.
* 10: Amount of SSD network storage (in GB).
-* $0.104080: Cost of using 1 GB of network SSD storage per month.
+* {{ sku|USD|mdb.cluster.network-nvme.kafka|month|string }}: Cost of using 1 GB of network SSD storage per month.
Total cost calculation:
-> 720 × ($0.149280 + $0.060480) + $7.680000 + $3.122400 = $161.829600
+> 720 × ({% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.kafka.v3.ram|number }}) %} + {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|number }} + 4 × {{ sku|USD|mdb.zk.kafka.v3.ram|number }}) %}) + {% calc [currency=USD] 3 × 100 × {{ sku|USD|mdb.cluster.network-hdd.kafka|month|number }} %} + {% calc [currency=USD] 3 × 10 × {{ sku|USD|mdb.cluster.network-nvme.kafka|month|number }} %} = {% calc [currency=USD] 720 × ((3 × (2 × {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.kafka.v3.ram|number }})) + (3 × (2 × {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|number }} + 4 × {{ sku|USD|mdb.zk.kafka.v3.ram|number }}))) + (3 × 100 × {{ sku|USD|mdb.cluster.network-hdd.kafka|month|number }}) + (3 × 10 × {{ sku|USD|mdb.cluster.network-nvme.kafka|month|number }}) %}
>
-> Total: $161.829600, cost of using the cluster for 30 days.
+> Total: {% calc [currency=USD] 720 × ((3 × (2 × {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.kafka.v3.ram|number }})) + (3 × (2 × {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|number }} + 4 × {{ sku|USD|mdb.zk.kafka.v3.ram|number }}))) + (3 × 100 × {{ sku|USD|mdb.cluster.network-hdd.kafka|month|number }}) + (3 × 10 × {{ sku|USD|mdb.cluster.network-nvme.kafka|month|number }}) %}, cost of using the cluster for 30 days.
Where:
* 720: Number of hours in 30 days.
-* $0.149280: Per hour cost of {{ KF }} broker hosts.
-* $0.060480: Per hour cost of {{ ZK }} hosts.
-* $7.680000: Cost of storage for {{ KF }} broker hosts.
-* $3.122400: Cost of storage for {{ ZK }} hosts.
\ No newline at end of file
+* {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.kafka.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.kafka.v3.ram|number }}) %}: Per hour cost of {{ KF }} broker hosts.
+* {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.zk.kafka.v3.cpu.c50|number }} + 4 × {{ sku|USD|mdb.zk.kafka.v3.ram|number }}) %}: Per hour cost of {{ ZK }} hosts.
+* {% calc [currency=USD] 3 × 100 × {{ sku|USD|mdb.cluster.network-hdd.kafka|month|number }} %}: Cost of storage for {{ KF }} broker hosts.
+* {% calc [currency=USD] 3 × 10 × {{ sku|USD|mdb.cluster.network-nvme.kafka|month|number }} %}: Cost of storage for {{ ZK }} hosts.
\ No newline at end of file
diff --git a/en/_pricing_examples/managed-mongodb/usd-host.md b/en/_pricing_examples/managed-mongodb/usd-host.md
index cbda5bdff5f..815b99f421b 100644
--- a/en/_pricing_examples/managed-mongodb/usd-host.md
+++ b/en/_pricing_examples/managed-mongodb/usd-host.md
@@ -1,10 +1,10 @@
-> 3 × (2 × $0.012800 + 8 × $0.007200) = $0.249600
+> 3 × (2 × {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|string }} + 8 × {{ sku|USD|mdb.cluster.mongodb.v3.ram|string }}) = {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.mongodb.v3.ram|number }}) %}
-> Total: $0.249600, cost of operation of {{ MG }} hosts per hour.
+> Total: {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.mongodb.v3.ram|number }}) %}, cost of operation of {{ MG }} hosts per hour.
Where:
* 3: Number of {{ MG }} hosts
* 2: Number of vCPUs
-* $0.012800: Cost of using 100% vCPU per hour
+* {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|string }}: Cost of using 100% vCPU per hour
* 8: Amount of RAM per {{ MG }} host (in GB)
-* $0.007200: Cost of using 1 GB of RAM at 100% vCPU per hour
\ No newline at end of file
+* {{ sku|USD|mdb.cluster.mongodb.v3.ram|string }}: Cost of using 1 GB of RAM at 100% vCPU per hour
\ No newline at end of file
diff --git a/en/_pricing_examples/managed-mongodb/usd-storage.md b/en/_pricing_examples/managed-mongodb/usd-storage.md
index e2b1c4f5c26..07ccb896e93 100644
--- a/en/_pricing_examples/managed-mongodb/usd-storage.md
+++ b/en/_pricing_examples/managed-mongodb/usd-storage.md
@@ -1,9 +1,9 @@
-> 720 × $0.249600 + 100 × $0.025600 = $182.272000
+> 720 × {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.mongodb.v3.ram|number }}) %} + 100 × {{ sku|USD|mdb.cluster.network-hdd.ch|month|string }} = {% calc [currency=USD] 720 × (3 × (2 × {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.mongodb.v3.ram|number }})) + 100 × {{ sku|USD|mdb.cluster.network-hdd.ch|month|number }} %}
>
-> Total: $182.272000, cost of using the cluster for 30 days.
+> Total: {% calc [currency=USD] 720 × (3 × (2 × {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.mongodb.v3.ram|number }})) + 100 × {{ sku|USD|mdb.cluster.network-hdd.ch|month|number }} %}, cost of using the cluster for 30 days.
Where:
* 720: Number of hours in 30 days
-* $0.249600: Cost of operation of {{ MG }} hosts per hour
+* {% calc [currency=USD] 3 × (2 × {{ sku|USD|mdb.cluster.mongodb.v3.cpu.c100|number }} + 8 × {{ sku|USD|mdb.cluster.mongodb.v3.ram|number }}) %}: Cost of operation of {{ MG }} hosts per hour
* 100: Amount of network HDD storage (in GB)
-* $0.025600: Cost of using 1 GB of network HDD storage per month
\ No newline at end of file
+* {{ sku|USD|mdb.cluster.network-hdd.ch|month|string }}: Cost of using 1 GB of network HDD storage per month
\ No newline at end of file
diff --git a/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity-pack.md b/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity-pack.md
index 94f4219e6e6..66143c77c74 100644
--- a/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity-pack.md
+++ b/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity-pack.md
@@ -1,7 +1,7 @@
| Number of requests per month, million | Cost of requests allowed by the security profile, including VAT | Cost of requests allowed by the security profile and WAF, including VAT |
| --- | --- | --- |
-| 1 | $200.00 | $400.00 |
-| 10 | $452.00 | $904.00 |
-| 100 | $596.00 | $1,192.00 |
-| 1 000 | $1,604.00 | $3,208.00 |
-| 10 000 | $5,204.00 | $10,408.00 |
\ No newline at end of file
+| 1 | {{ sku|USD|sws.requests.v1|pricingRate.0.01|string }} | {% calc [currency=USD] {{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.waf.requests.v1|pricingRate.0.01|number }} %} |
+| 10 | {% calc [currency=USD] {{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9 %} | {% calc [currency=USD] ({{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9) + ({{ sku|USD|sws.waf.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.waf.requests.v1|pricingRate.1|number }} × 9) %} |
+| 100 | {% calc [currency=USD] {{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.requests.v1|pricingRate.10|number }} × 90 %} | {% calc [currency=USD] ({{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.requests.v1|pricingRate.10|number }} × 90) + ({{ sku|USD|sws.waf.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.waf.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.waf.requests.v1|pricingRate.10|number }} × 90) %} |
+| 1 000 | {% calc [currency=USD] {{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.requests.v1|pricingRate.10|number }} × 90 + {{ sku|USD|sws.requests.v1|pricingRate.100|number }} × 900 %} | {% calc [currency=USD] ({{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.requests.v1|pricingRate.10|number }} × 90 + {{ sku|USD|sws.requests.v1|pricingRate.100|number }} × 900) + ({{ sku|USD|sws.waf.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.waf.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.waf.requests.v1|pricingRate.10|number }} × 90 + {{ sku|USD|sws.waf.requests.v1|pricingRate.100|number }} × 900) %} |
+| 10 000 | {% calc [currency=USD] {{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.requests.v1|pricingRate.10|number }} × 90 + {{ sku|USD|sws.requests.v1|pricingRate.100|number }} × 900 + {{ sku|USD|sws.requests.v1|pricingRate.1000|number }} × 9000 %} | {% calc [currency=USD] ({{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.requests.v1|pricingRate.10|number }} × 90 + {{ sku|USD|sws.requests.v1|pricingRate.100|number }} × 900 + {{ sku|USD|sws.requests.v1|pricingRate.1000|number }} × 9000) + ({{ sku|USD|sws.waf.requests.v1|pricingRate.0.01|number }} + {{ sku|USD|sws.waf.requests.v1|pricingRate.1|number }} × 9 + {{ sku|USD|sws.waf.requests.v1|pricingRate.10|number }} × 90 + {{ sku|USD|sws.waf.requests.v1|pricingRate.100|number }} × 900 + {{ sku|USD|sws.waf.requests.v1|pricingRate.1000|number }} × 9000) %} |
\ No newline at end of file
diff --git a/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity-waf.md b/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity-waf.md
new file mode 100644
index 00000000000..2a0210b1cbc
--- /dev/null
+++ b/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity-waf.md
@@ -0,0 +1,13 @@
+You can only connect a WAF profile when a security profile is used. Therefore, you pay for processing requests both by WAF and security profile rules.
+
+> Let’s calculate the cost of 315.04 million legitimate requests per month processed by security and WAF profile rules:
+> (0.01 × $0.000000 + 0.99 × $200.000000 + 9 × $28.000000 + 90 × $1.600000 + 215.04 × $1.120000) × 2 = $1669.689600, excluding VAT.
+
+Where:
+
+* 0.01 × $0.000000: Non-billable threshold of 0.01 million requests.
+* 0.99 × $200.000000: Cost of the subsequent 0.99 million requests.
+* 9 × $28.000000: Cost of the subsequent 9 million requests.
+* 90 × $1.600000: Cost of the subsequent 90 million requests.
+* 215.04 × $1.120000: Cost of the remaining 215.04 million requests.
+* × 2: The total cost is multiplied by `2` as each request was first processed by security profile rules and then by WAF profile rules.
\ No newline at end of file
diff --git a/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity.md b/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity.md
index f859e3126a6..57834447dba 100644
--- a/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity.md
+++ b/en/_pricing_examples/smartwebsecurity/usd-smartwebsecurity.md
@@ -1,10 +1,10 @@
-For example, the total cost of sending 315.04 million requests per month to {{ sws-name }} for analysis will be:
-> 0.01 × $0.000000 + 0.99 × $200.000000 + 9 × $28.000000 + 90 × $1.600000 + 215.04 × $1.120000 = $834.844800 excluding VAT.
+> Let’s calculate the cost of 315.04 million legitimate requests per month processed by security profile rules:
+> 0.01 × ${{ sku|USD|sws.requests.v1|number }} + 0.99 × {{ sku|USD|sws.requests.v1|pricingRate.0.01|string }} + 9 × {{ sku|USD|sws.requests.v1|pricingRate.1|string }} + 90 × {{ sku|USD|sws.requests.v1|pricingRate.10|string }} + 215.04 × {{ sku|USD|sws.requests.v1|pricingRate.100|string }} = {% calc [currency=USD] 0.01 × {{ sku|USD|sws.requests.v1|number }} + 0.99 × {{ sku|USD|sws.requests.v1|pricingRate.0.01|number }} + 9 × {{ sku|USD|sws.requests.v1|pricingRate.1|number }} + 90 × {{ sku|USD|sws.requests.v1|pricingRate.10|number }} + 215,04 × {{ sku|USD|sws.requests.v1|pricingRate.100|number }} %} excluding VAT.
Where:
-* 0.01 × $0.000000: Non-billable threshold of 0.01 million requests.
-* 0.99 × $200.000000: Cost of the subsequent 0.99 million requests.
-* 9 × $28.000000: Cost of the subsequent 9 million requests.
-* 90 × $1.600000: Cost of the subsequent 90 million requests.
-* 215.04 × $1.120000: Cost of the remaining 215.04 million requests.
\ No newline at end of file
+* 0.01 × ${{ sku|USD|sws.requests.v1|number }}: Non-billable threshold of 0.01 million requests.
+* 0.99 × {{ sku|USD|sws.requests.v1|pricingRate.0.01|string }}: Cost of the subsequent 0.99 million requests.
+* 9 × {{ sku|USD|sws.requests.v1|pricingRate.1|string }}: Cost of the subsequent 9 million requests.
+* 90 × {{ sku|USD|sws.requests.v1|pricingRate.10|string }}: Cost of the subsequent 90 million requests.
+* 215.04 × {{ sku|USD|sws.requests.v1|pricingRate.100|string }}: Cost of the remaining 215.04 million requests.
diff --git a/en/_pricing_examples/speechkit/usd-speechkit-stt-streaming.md b/en/_pricing_examples/speechkit/usd-speechkit-stt-streaming.md
index 1aa5f1d2d4b..40800c7613c 100644
--- a/en/_pricing_examples/speechkit/usd-speechkit-stt-streaming.md
+++ b/en/_pricing_examples/speechkit/usd-speechkit-stt-streaming.md
@@ -4,6 +4,6 @@
Where:
-* 1 is the number of billing units charged for the first 5-second audio fragment rounded up to 15 seconds with recognition settings message considered.
-* 3 is the number of billing units charged for the second 37-second audio fragment rounded up to 45 seconds with recognition settings message considered.
+* 1 is the number of billing units charged for the first 5-second audio fragment rounded up to 15 seconds.
+* 3 is the number of billing units charged for the second 37-second audio fragment rounded up to 45 seconds.
* $0.001280: Cost per billing unit.
\ No newline at end of file
diff --git a/en/_qa/billing/billing-account.md b/en/_qa/billing/billing-account.md
index 40f58dca036..260640a149f 100644
--- a/en/_qa/billing/billing-account.md
+++ b/en/_qa/billing/billing-account.md
@@ -36,6 +36,9 @@ To unblock your new billing account, [upgrade to the paid version](../../billing
You cannot change a billing account type once it is created, but you can [create a new one](../../billing/operations/create-new-account.md).
+#### How do I enable a billing threshold? {#credit}
+
+The [billing threshold](../../billing/concepts/billing-threshold.md) gets enabled automatically after you [upgrade to the paid version](../../billing/operations/activate-commercial.md) and the first reporting period ends.
{% include [change-payment-method](../../billing/_includes/change-payment-method.md) %}
@@ -51,6 +54,11 @@ If you did not receive an email within that period, send a request to [{{ billin
{% include [change-payment-docs](../../billing/_includes/change-payment-docs.md) %}
+#### I can't link a bank card when creating a billing account. What should I do? {#cant-create}
+
+Most likely, our service does not support your bank card's payment system.
+
+To resolve the issue, try linking a different bank card or, if you are a legal entity, create a billing account of the **{{ ui-key.yacloud_billing.billing.account.create-new.account-type_label_company }}** type with the **{{ ui-key.yacloud_billing.billing.account.create-new.payment-type_label_invoice }}** payment method.
#### Why do I get an error saying _The country is not available to the payer_ when creating a billing account? {#account-error}
diff --git a/en/_qa/billing/common.md b/en/_qa/billing/common.md
index 226d10c4f6c..ff343e78f9a 100644
--- a/en/_qa/billing/common.md
+++ b/en/_qa/billing/common.md
@@ -6,14 +6,14 @@ Yes, you can. For more information, see the [How to create a VM instance](../../
#### Where can I find SLAs? {#sla}
-In {{ yandex-cloud }}, each service has its own SLA. You can read the SLA in the [Legal documents](https://yandex.ru/legal/cloud_sla/?lang=en) section.
+In {{ yandex-cloud }}, each service has its own SLA. You can read the SLA in the [Legal documents]({{ link-sla }}) section.
#### Where can I find the bank details of {{ yandex-cloud }}? {#requisites}
-You can find the bank details in the section [Legal documents](https://yandex.com/legal/cloud_customer_agreement/) (paragraph **19. Yandex Details**).
+Depending on which company you signed the contract with, you can find the bank details in «Yandex Legal documents» for [Iron Hive doo Beograd (Serbia)](https://yandex.com/legal/cloud_customer_agreement/) or [Direct Cursus Technology L.L.C. (Dubai)](https://yandex.com/legal/cloud_customer_agreement_uae/) (paragraph **19. Yandex Details**).
#### How do I contact technical support? {#support}
diff --git a/en/_qa/billing/contract.md b/en/_qa/billing/contract.md
index b3bb1abefa3..d7bebdc1a64 100644
--- a/en/_qa/billing/contract.md
+++ b/en/_qa/billing/contract.md
@@ -11,7 +11,7 @@
- Residents of Russia {#russia}
- Residents of Russia as well as tax residents of the Republic of Belarus can learn more about the terms of the agreement in [Legal documents]({{ billing-oferta-url }}/?lang=en).
+ Residents of Russia as well as tax residents of the Republic of Belarus can learn more about the terms of the agreement in [Legal documents]({{ billing-oferta-url }}).
- Residents of Kazakhstan {#kazakhstan}
@@ -20,7 +20,7 @@
- Non-residents of Russia and Kazakhstan {#nonresidents}
- You can learn more about the terms of the agreement in [Yandex Legal documents](https://yandex.com/legal/cloud_customer_agreement/?lang=en).
+ Depending on which company you signed the contract with, you can review its terms in «Yandex Legal documents» for [Iron Hive doo Beograd (Serbia)](https://yandex.com/legal/cloud_customer_agreement/) or [Direct Cursus Technology L.L.C. (Dubai)](https://yandex.com/legal/cloud_customer_agreement_uae/).
{% endlist %}
@@ -30,7 +30,9 @@ Businesses may conclude a bilateral agreement. To do this, submit a request usin
#### How do I refer to the signed agreement? {#refer-to-contract}
-The agreement is represented by the [offer]({{ billing-oferta-url }}). Specify the agreement number and a link to the offer or enclose its printed copy.
+
+The agreement is represented by the «Yandex Legal documents». Depending on which company you signed the contract with, you can find more details in «Yandex Legal documents» for [Iron Hive doo Beograd (Serbia)](https://yandex.com/legal/cloud_customer_agreement/) or [Direct Cursus Technology L.L.C. (Dubai)](https://yandex.com/legal/cloud_customer_agreement_uae/). Specify the agreement number and a link to the «Yandex Legal documents» or enclose their printed copy.
+
#### How do I get a hard copy of the agreement? {#paper-contract}
diff --git a/en/_qa/billing/payment.md b/en/_qa/billing/payment.md
index 1cf5b19c1e5..e8388ae06d6 100644
--- a/en/_qa/billing/payment.md
+++ b/en/_qa/billing/payment.md
@@ -13,6 +13,8 @@ For more information, see [How to pay for resources](../../billing/payment/index
{% include [change-payment-method](../../billing/_includes/change-payment-method.md) %}
+#### What cards are accepted for payment? {#card-types}
+{% include [payment-card-types](../../_includes/billing/payment-card-types.md) %}
#### Is there a minimum payment amount? {#minimum}
Depending on the currency, the minimum payment amount is:
@@ -49,6 +51,16 @@ Depending on the currency, the minimum payment amount is:
+#### I linked a card to my business billing account. When will money be debited from it? {#unlink-card}
+
+If this is your trial period, funds will not be debited from the bank card you linked.
+Since you do not automatically upgrade to the paid version at the end of the trial period, funds are only debited after activating the paid version and using {{ yandex-cloud }} services.
+
+If you upgraded to the paid version and used {{ yandex-cloud }} services, do the following to stop incurring charges:
+
+1. Settle your arrears (if any).
+1. Delete all billable service resources.
+1. Contact [technical support]({{ link-console-support }}) to deactivate your account.
#### I linked a cloud to a new billing account. How do I pay for services now? {#unlink-cloud}
@@ -62,7 +74,9 @@ For more information, see [Pricing](../../billing/pricing.md).
#### If I pay an invoice by bank transfer after the end of the reporting period, will my resources be blocked? {#payment-delay}
-According to the [offer]({{ billing-oferta-url }}?lang=en), you can pay within 14 calendar days (not counting public holidays) after the reporting period ends. If you pay within this time period, your resources will not be blocked. Remember that it takes up to three business days for your payment to get through, so do not postpone it.
+
+You can pay within 14 calendar days (not counting public holidays) after the reporting period ends. Depending on which company you signed the contract with, you can find more details in «Yandex Legal documents» for [Iron Hive doo Beograd (Serbia)](https://yandex.com/legal/cloud_customer_agreement/) or [Direct Cursus Technology L.L.C. (Dubai)](https://yandex.com/legal/cloud_customer_agreement_uae/).
+ If you pay within this time period, your resources will not be blocked. Remember that it takes up to three business days for your payment to get through, so do not postpone it.
#### What goes into the cost of using {{ marketplace-full-name }}? {#marketplace}
diff --git a/en/_qa/managed-kubernetes/troubleshooting.md b/en/_qa/managed-kubernetes/troubleshooting.md
index 6ac1663c55f..8617483bc2f 100644
--- a/en/_qa/managed-kubernetes/troubleshooting.md
+++ b/en/_qa/managed-kubernetes/troubleshooting.md
@@ -37,7 +37,7 @@ To fix the issue, delete the stuck resources manually.
```bash
kubectl api-resources --verbs=list --namespaced --output=name \
- | xargs --max-args=1 kubectl get --show-kind \
+ | xargs --max-args=1 kubectl get --show-kind \
--ignore-not-found --namespace=
```
diff --git a/en/_qa/managed-mongodb/general.md b/en/_qa/managed-mongodb/general.md
index 0edbf6ebad0..8b7fcf57b54 100644
--- a/en/_qa/managed-mongodb/general.md
+++ b/en/_qa/managed-mongodb/general.md
@@ -4,7 +4,7 @@
With {{ mmg-short-name }}, you can:
- Create a database with the required performance characteristics.
-- Scale processing power and storage dedicated for your databases as needed.
+- Scale processing power and storage dedicated for your databases.
- Get database logs.
{{ mmg-short-name }} takes on time-consuming {{ MG }} infrastructure administration tasks:
@@ -48,12 +48,12 @@ To create a database cluster in {{ mmg-short-name }}, you need to define its par
- [Host class](../../managed-mongodb/concepts/instance-types.md) (performance characteristics, such as CPUs, RAM, etc.).
- [Disk type](../../managed-mongodb/concepts/storage.md) and size (reserved in full when creating a cluster).
- Network your cluster will be connected to.
-- Number of hosts for the cluster and the availability zone for each host.
+- Number of hosts for the cluster and the availability zone for each of them.
For detailed instructions, see [{#T}](../../managed-mongodb/quickstart.md).
-#### How many database hosts can a cluster contain? {#how-many-hosts}
+#### How many database hosts can there be in one cluster? {#how-many-hosts}
The minimum number of hosts per cluster depends on the following:
* Selected [platform and host class](../../managed-mongodb/concepts/instance-types.md).
@@ -78,7 +78,7 @@ For more information on MDB technical and organizational limitations, see [Quota
#### How are DB clusters maintained? {#service-window}
-Maintenance in {{ mmg-short-name }} implies:
+In {{ mmg-short-name }}, maintenance implies:
- Automatic installation of DBMS updates and revisions for DB hosts (including disabled clusters).
- Changes to the host class and storage size.
@@ -110,11 +110,11 @@ In {{ mmg-short-name }}, the usage cost is calculated based on the following par
- Selected host class.
- Size of the storage reserved for the database host.
- Size of the database cluster backups. Backup size equal to the storage size is free of charge. Backup storage that exceeds this size is charged at [special rates](../../managed-mongodb/pricing.md).
-- Number of hours of database host operation. Partial hours are rounded to an integer value. You can find the cost per hour of operation for each host class in the [Pricing policy](../../managed-mongodb/pricing.md) section.
+- Number of hours of database host operation. Partial hours are rounded to an integer value. You can find the cost per hour for each host class in the [Pricing policy](../../managed-mongodb/pricing.md) section.
#### How can I change the computing resources and storage size for a database cluster? {#resources-change}
-You can change computing resources and storage size in the management console. All you need to do is choose a different host class for the required cluster.
+You can change computing resources and storage size from the [management console]({{ link-console-main }}). All you need to do is choose a different host class for the required cluster.
The cluster characteristics change within 30 minutes. During this period, other maintenance activities may also be enabled for the cluster, such as installing updates.
@@ -144,7 +144,7 @@ For DB hosts, you can track metrics specific to the corresponding type of DBMS.
- Amount of disk space used.
- Number of connections, and so on.
-Monitoring can be performed with a minimum granularity of 5 seconds.
+Monitoring can be performed with a minimum granularity of five seconds.
#### How do I set up an alert that triggers as soon as a certain percentage of disk space has been used up? {#disk-space-percentage}
@@ -152,8 +152,8 @@ Monitoring can be performed with a minimum granularity of 5 seconds.
For `disk.used_bytes`, use notification thresholds. The recommended values are as follows:
-* `{{ ui-key.yacloud_monitoring.alert.status_alarm }}`: 90% of disk space
-* `{{ ui-key.yacloud_monitoring.alert.status_warn }}`: 70% of disk space
+* `{{ ui-key.yacloud_monitoring.alert.status_alarm }}`: 90% of the disk space
+* `{{ ui-key.yacloud_monitoring.alert.status_warn }}`: 70% of the disk space
Thresholds are set in bytes only. For example, the recommended values for a 100 GB disk are as follows:
diff --git a/en/_qa/partner/contracts.md b/en/_qa/partner/contracts.md
index ff3402bb7d7..469cf2f2bb8 100644
--- a/en/_qa/partner/contracts.md
+++ b/en/_qa/partner/contracts.md
@@ -51,8 +51,8 @@ To invoice your organization:
1. In the [management console]({{ link-console-main }}), click ![image](../../_assets/console-icons/dots-9.svg) **All services**.
1. Select ![image](../../_assets/console-icons/credit-card.svg) [**{{ billing-name }}**]({{ link-console-billing }}).
1. Select a billing account.
-1. Click **{{ ui-key.yacloud.billing.account.dashboard-overview.button_refill }}**.
-1. Enter the payment amount and click **{{ ui-key.yacloud.billing.account.dashboard-overview.popup-refill_button_company-action }}**.
+1. Click **{{ ui-key.yacloud_billing.billing.account.dashboard-overview.button_refill }}**.
+1. Enter the payment amount and click **{{ ui-key.yacloud_billing.billing.account.dashboard-overview.popup-refill_button_company-action }}**.
1. The document will open in a new browser tab and will be saved in `.pdf` format.
#### How to connect to EDM? {#edm}
diff --git a/en/_tutorials/_tutorials_includes/airflow-auto-tasks/airflow-auto-tasks-create-cluster.md b/en/_tutorials/_tutorials_includes/airflow-auto-tasks/airflow-auto-tasks-create-cluster.md
index 5080aac6169..b2728e4763f 100644
--- a/en/_tutorials/_tutorials_includes/airflow-auto-tasks/airflow-auto-tasks-create-cluster.md
+++ b/en/_tutorials/_tutorials_includes/airflow-auto-tasks/airflow-auto-tasks-create-cluster.md
@@ -10,7 +10,7 @@
* One uppercase letter
* One lowercase letter
- * One number
+ * One digit
* One special character
{% note info %}
diff --git a/en/_tutorials/applied/bind-domain-vm.md b/en/_tutorials/applied/bind-domain-vm.md
index 6bf56e578eb..c5f98a96a2d 100644
--- a/en/_tutorials/applied/bind-domain-vm.md
+++ b/en/_tutorials/applied/bind-domain-vm.md
@@ -30,7 +30,7 @@ You can also assign a domain name to a VM with a web server via {{ TF }} using a
The support cost includes:
* Fee for using a public IP address (see [{{ vpc-full-name }} pricing](../../vpc/pricing.md)).
-* Fee for VM computing resources (see [{{ compute-full-name }} pricing](../../compute/pricing.md)).
+* Fee for VM computing resources and disks (see [{{ compute-full-name }} pricing](../../compute/pricing.md)).
* Fee for using a public DNS zone and public DNS requests (see [{{ dns-full-name }} pricing](../../dns/pricing.md)).
@@ -231,17 +231,18 @@ Before you start, prepare a [key pair](../../compute/operations/vm-connect/ssh.m
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select your folder.
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder) to create your VM in.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
1. In the left-hand panel, select ![image](../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**:
+
+ * Go to the **{{ ui-key.yacloud.compute.instances.create.image_value_marketplace }}** tab.
+ * Click **{{ ui-key.yacloud.compute.instances.create.button_show-all-marketplace-products }}**.
+ * In the list of public images, select [LAMP](/marketplace/products/yc/lamp) and click **{{ ui-key.yacloud.marketplace-v2.button_use }}**.
- * In the **{{ ui-key.yacloud.common.name }}** field, specify the name: `mywebserver`.
- * In the **{{ ui-key.yacloud.compute.instances.create.field_zone }}** field, select `{{ region-id }}-b`.
+ 1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select the `{{ region-id }}-b` [availability zone](../../overview/concepts/geo-scope.md).
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, go to the **{{ ui-key.yacloud.compute.instances.create.image_value_marketplace }}** tab and click **{{ ui-key.yacloud.compute.instances.create.button_show-all-marketplace-products }}**.
- 1. In the window that opens, find and select [LAMP](/marketplace/products/yc/lamp).
1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
* In the **{{ ui-key.yacloud.component.compute.network-select.field_subnetwork }}** field, select the `webserver-subnet-{{ region-id }}-b` subnet you created earlier.
@@ -250,9 +251,10 @@ Before you start, prepare a [key pair](../../compute/operations/vm-connect/ssh.m
1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the VM:
- * Enter the username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field: `yc-user`.
- * In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) created earlier.
+ * In the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field, enter the `yc-user` username.
+ * {% include [access-ssh-key](../../_includes/compute/create/access-ssh-key.md) %}
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name: `mywebserver`.
1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
- CLI {#cli}
@@ -327,7 +329,7 @@ Before you start, prepare a [key pair](../../compute/operations/vm-connect/ssh.m
{% endlist %}
-This will create the `mywebserver` VM in your folder. To [connect](../../compute/operations/vm-connect/ssh.md#vm-connect) to the VM over SSH, use the `yc-user` username and the VM's public IP address. If you plan to use the created web server over a long period of time, [make](../../vpc/operations/set-static-ip.md) the VM public IP address static.
+This will create the `mywebserver` VM in your folder. To [connect](../../compute/operations/vm-connect/ssh.md#vm-connect) to the VM over SSH, use the `yc-user` username and the VM’s public IP address. If you plan to use the created web server over a long period of time, [make](../../vpc/operations/set-static-ip.md) this VM's public IP address static.
## Create a public DNS zone {#configure-dns}
@@ -341,9 +343,9 @@ This will create the `mywebserver` VM in your folder. To [connect](../../compute
1. Click **{{ ui-key.yacloud.dns.button_zone-create }}**.
1. Specify the [DNS zone](../../dns/concepts/dns-zone.md) settings consistent with your domain:
- 1. **{{ ui-key.yacloud.dns.label_zone }}**: Domain zone. The zone name must end with a dot. For example, the `example.com.` zone name corresponds to the `example.com` domain. You cannot create public top-level domain (TLD) zones. To create a domain zone with non-Latin characters, use [Punycode](https://{{ lang }}.wikipedia.org/wiki/Punycode) encoding.
- 1. **{{ ui-key.yacloud.common.type }}**: `{{ ui-key.yacloud.dns.label_public }}`
- 1. **{{ ui-key.yacloud.common.name }}**: Zone name
+ 1. **{{ ui-key.yacloud.dns.label_zone }}**: Domain zone. The zone name must end with a period. For example, the `example.com.` zone name corresponds to the `example.com` domain. You cannot create public top-level domain (TLD) zones. To create a domain zone with non-Latin characters, use the [Punycode](https://{{ lang }}.wikipedia.org/wiki/Punycode) encoding.
+ 1. **{{ ui-key.yacloud.common.type }}**: `{{ ui-key.yacloud.dns.label_public }}`.
+ 1. **{{ ui-key.yacloud.common.name }}**: Zone name.
1. Click **{{ ui-key.yacloud.common.create }}**.
@@ -361,7 +363,7 @@ This will create the `mywebserver` VM in your folder. To [connect](../../compute
Where:
* `--name`: [DNS zone](../../dns/concepts/dns-zone.md) name.
- * `--zone`: Domain zone. The zone name must end with a dot. For example, the `example.com.` zone name corresponds to the `example.com` domain. You cannot create public top-level domain (TLD) zones. To create a domain zone with non-Latin characters, use [Punycode](https://{{ lang }}.wikipedia.org/wiki/Punycode) encoding.
+ * `--zone`: Domain zone. The zone name must end with a period. For example, the `example.com.` zone name corresponds to the `example.com` domain. You cannot create public top-level domain (TLD) zones. To create a domain zone with non-Latin characters, use the [Punycode](https://{{ lang }}.wikipedia.org/wiki/Punycode) encoding.
Result:
@@ -389,7 +391,7 @@ This will create the `mywebserver` VM in your folder. To [connect](../../compute
## Delegate your domain to {{ dns-name }} {#delegate-domain}
-To delegate your domain to {{ dns-name }}, in your domain name registrar account, specify these DNS server addresses in the domain settings:
+To delegate a domain to {{ dns-name }}, in your account on your domain registrar's website, specify the DNS server addresses in the domain settings:
* `ns1.{{ dns-ns-host-sld }}`
* `ns2.{{ dns-ns-host-sld }}`
@@ -448,7 +450,7 @@ In your DNS zone, create a [type A resource record](../../dns/concepts/resource-
* `--name`: Name of the public DNS zone you created earler.
* `--record`: Parameters of the new resource record:
- * ``: Domain name must end with a dot. For example, for the `example.com` domain, the correct value is `example.com.`.
+ * ``: Domain name that must end with a period. For example, for the `example.com` domain, the correct value is `example.com.`.
* ``: [Public IP address](../../vpc/concepts/address.md#public-addresses) of the web server.
You can find the VM IP address in the **{{ ui-key.yacloud.compute.instance.overview.section_network }}** section on the VM page in the [management console]({{ link-console-main }}) or using this CLI command: `yc compute instance get `.
@@ -506,13 +508,13 @@ To create an infrastructure for assigning a domain name to a VM with a web serve
- Ready-made archive
- 1. Create a directory for the file with the infrastructure description.
+ 1. Create a folder for the file with the infrastructure description.
1. Download the [archive](https://{{ s3-storage-host }}/doc-files/???) (2 KB).
1. Unpack the archive to the directory. As a result, it should contain the `bind-domain-to-vm.tf` configuration file and the `bind-domain-to-vm.auto.tfvars` user data file.
- Creating files manually
- 1. Create a directory for the file with the infrastructure description.
+ 1. Create a folder for the file with the infrastructure description.
1. In the directory, create a configuration file named `bind-domain-to-vm.tf`:
{% cut "bind-domain-to-vm.tf" %}
diff --git a/en/_tutorials/applied/flask.md b/en/_tutorials/applied/flask.md
index 41219d84e76..7140efb4764 100644
--- a/en/_tutorials/applied/flask.md
+++ b/en/_tutorials/applied/flask.md
@@ -135,7 +135,7 @@ Create a security group that allows inbound TCP traffic on ports `5000` and `22`
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_vpc }}**.
1. In the left-hand panel, select ![image](../../_assets/vpc/security-group.svg) **{{ ui-key.yacloud.vpc.switch_security-groups }}**.
1. Click **{{ ui-key.yacloud.vpc.network.security-groups.button_create }}**.
- 1. In the **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-name }}** field, specify the name: `webserver-sg`.
+ 1. In the **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-name }}** field, enter the name: `webserver-sg`.
1. In the **{{ ui-key.yacloud.vpc.network.security-groups.forms.field_sg-network }}** field, select the `webserver-network` network you created earlier.
1. Under **{{ ui-key.yacloud.vpc.network.security-groups.forms.label_section-rules }}**, [create](../../vpc/operations/security-group-add-rule.md) the following traffic management rules:
@@ -214,7 +214,7 @@ Create a security group that allows inbound TCP traffic on ports `5000` and `22`
## Create and set up a virtual machine {#create-setup-vm}
-A [VM](../../compute/concepts/vm.md) is similar to a server in the cloud infrastructure. In {{ yandex-cloud }}, you can create VMs with different hardware characteristics in terms of [performance](../../compute/concepts/performance-levels.md), RAM and [disk space](../../compute/concepts/disk.md#maximum-disk-size), as well as running different [operating systems](../../compute/concepts/image.md#public).
+A [virtual machine](../../compute/concepts/vm.md) is similar to a server in the cloud infrastructure. In {{ yandex-cloud }}, you can create VMs with different hardware characteristics in terms of [performance](../../compute/concepts/performance-levels.md), RAM, and [disk space](../../compute/concepts/disk.md#maximum-disk-size), as well as running different [operating systems](../../compute/concepts/image.md#public).
This web application will be deployed on an [Ubuntu 22.04 LTS](/marketplace/products/yc/ubuntu-22-04-lts) Linux VM.
@@ -226,28 +226,24 @@ This web application will be deployed on an [Ubuntu 22.04 LTS](/marketplace/prod
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select your folder.
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder) to create your VM in.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
1. In the left-hand panel, select ![image](../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
- 1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
-
- * In the **{{ ui-key.yacloud.common.name }}** field, specify the name: `mywebserver`.
- * In the **{{ ui-key.yacloud.compute.instances.create.field_zone }}** field, select `{{ region-id }}-b`.
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, go to the **{{ ui-key.yacloud.compute.instances.create.image_value_marketplace }}** tab and click **{{ ui-key.yacloud.compute.instances.create.button_show-all-marketplace-products }}**.
- 1. In the window that opens, find and select [Ubuntu 22.04 LTS](/marketplace/products/yc/ubuntu-22-04-lts).
+ 1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select the [Ubuntu 22.04 LTS](/marketplace/products/yc/ubuntu-22-04-lts) image.
+ 1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select the `{{ region-id }}-b` [availability zone](../../overview/concepts/geo-scope.md).
1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
- * In the **{{ ui-key.yacloud.component.compute.network-select.field_subnetwork }}** field, select the `webserver-subnet-{{ region-id }}-b` subnet you created earler.
+ * In the **{{ ui-key.yacloud.component.compute.network-select.field_subnetwork }}** field, select the `webserver-subnet-{{ region-id }}-b` subnet you created earlier.
* In the **{{ ui-key.yacloud.component.compute.network-select.field_external }}** field, select `{{ ui-key.yacloud.component.compute.network-select.switch_auto }}`.
* In the **{{ ui-key.yacloud.component.compute.network-select.field_security-groups }}** field, select the `webserver-sg` security group you created earlier.
1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the VM:
- * Enter the `yc-user` username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
- * In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) created earlier.
+ * Enter the username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field: `yc-user`.
+ * {% include [access-ssh-key](../../_includes/compute/create/access-ssh-key.md) %}
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name: `sftp-server`.
1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
- CLI {#cli}
@@ -319,7 +315,7 @@ This web application will be deployed on an [Ubuntu 22.04 LTS](/marketplace/prod
{% endlist %}
- This will create the `mywebserver` VM in your folder. To [connect](../../compute/operations/vm-connect/ssh.md#vm-connect) to the VM over SSH, use the `yc-user` username and the VM's [public IP address](../../vpc/concepts/address.md#public-addresses). If you plan to use the created web server over a long period of time, [make](../../vpc/operations/set-static-ip.md) the VM public IP address static.
+ This will create the `mywebserver` VM in your folder. To [connect](../../compute/operations/vm-connect/ssh.md#vm-connect) to the VM over SSH, use the `yc-user` username and the VM’s [public IP address](../../vpc/concepts/address.md#public-addresses). If you plan to use the created web server over a long period of time, [make](../../vpc/operations/set-static-ip.md) this VM's public IP address static.
1. Create and activate the virtual environment.
@@ -485,7 +481,7 @@ When you open a new terminal window:
At this point, the application can only display a plain text message in the browser. To display the data and controls that the user needs, you need to add HTML templates to your application.
-To render templates, you can use the [`render_template()` helper function](https://flask.palletsprojects.com/en/latest/api/#flask.render_template) enabled by the [Jinja template engine](https://jinja.palletsprojects.com/en/latest/templates/). You will use HTML templates to create the application pages: the main page listing blog posts and the pages for creating, viewing, and editing a post.
+To use templates in the app, you can use [the `render_template()` helper function](https://flask.palletsprojects.com/en/latest/api/#flask.render_template) enabled by the [Jinja template engine](https://jinja.palletsprojects.com/en/latest/templates/). You will use HTML templates to create the application pages: the main page listing blog posts and the pages for creating, viewing, and editing a post.
### Create the main page HTML template {#create-html-template}
@@ -596,7 +592,7 @@ To render templates, you can use the [`render_template()` helper function](https
}
```
- This CSS code changes the formatting of the text wrapped by `
`:
+ This CSS code changes the formatting of the text wrapped by the `
` HTML tags:
* `border` adds a border.
* `color` changes the text color.
* `text-align` sets text alignment.
@@ -610,7 +606,7 @@ To render templates, you can use the [`render_template()` helper function](https
nano templates/index.html
```
-1. Add a link to `style.css` inside ``:
+1. Add a link to `style.css` inside the `` section:
```html
...
@@ -683,11 +679,11 @@ In other HTML templates, you will need to reuse most of the HTML code from the `
```
- This file contains HTML code as well as additional code required by Bootstrap. The `` tags contain browser information, the `` tag binds CSS Bootstrap files, and the `
@@ -108,9 +108,10 @@ To create a bucket to place the HTML page of your service in and configure it fo
1. Click **{{ ui-key.yacloud.storage.bucket.button_empty-create }}**.
1. Specify the previously prepared `index.html` file.
1. Click **{{ ui-key.yacloud.storage.button_upload }}**.
- 1. In the left-hand panel, select the **{{ ui-key.yacloud.storage.bucket.switch_website }}** tab.
- 1. Select **{{ ui-key.yacloud.storage.bucket.website.switch_hosting }}**.
- 1. Specify the website's home page: `index.html`.
+ 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_settings }}**.
+ 1. On the **{{ ui-key.yacloud.storage.bucket.switch_website }}** tab:
+ * Select `{{ ui-key.yacloud.storage.bucket.website.switch_hosting }}`.
+ * Specify the website's home page: `index.html`.
1. Click **{{ ui-key.yacloud.storage.bucket.website.button_save }}**.
{% endlist %}
@@ -360,8 +361,8 @@ To publish the service via {{ api-gw-name }}:
get:
x-yc-apigateway-integration:
type: object_storage
- bucket: # <-- bucket name
- object: index.html # <-- html file name
+ bucket: #<-- bucket name
+ object: index.html # <-- HTML file name
presigned_redirect: false
service_account: # <-- service account ID
operationId: static
@@ -391,8 +392,8 @@ To publish the service via {{ api-gw-name }}:
{% endcut %}
Edit the specification code:
- * Replace `` with the ID of the previously created service account.
- * Replace `` with the ID of the previously created function.
+ * Replace `` with the ID of the previously created service account.
+ * Replace `` with the ID of the previously created function.
* Replace `` with the name of the previously created bucket.
1. Click **{{ ui-key.yacloud.serverless-functions.gateways.form.button_create-gateway }}**.
1. Click the name of the API gateway you created.
diff --git a/en/_tutorials/tracker/tracker-cloud-function.md b/en/_tutorials/tracker/tracker-cloud-function.md
index f2f191317f8..58c8ac0d556 100644
--- a/en/_tutorials/tracker/tracker-cloud-function.md
+++ b/en/_tutorials/tracker/tracker-cloud-function.md
@@ -56,8 +56,8 @@ If you no longer need the resources you created, [delete them](#clear-out).
1. Go to [{{ tracker-name }}](https://tracker.yandex.ru/). Click **Logging in to Yandex Tracker**.
1. In the right-hand panel, click **Administration**.
-1. Under **{{ ui-key.startrek.ui_components_page-admin_PageAdmin.access-and-payment }}**, click **{{ ui-key.startrek.ui_components_page-admin_PageAdmin.menu-item-orgs }}**.
-1. Under **{{ ui-key.startrek.ui_components_page-admin_OrgPanes_DirectoryOrgPane.source-title }}**, copy and save your organization ID. You will need it to create a function.
+1. Under **{{ ui-key.startrek.ui_Common_smart-components_page-admin_PageAdmin.access-and-payment }}**, click **{{ ui-key.startrek.ui_Common_smart-components_page-admin_PageAdmin.menu-item-orgs }}**.
+1. Under **{{ ui-key.startrek.ui_Common_smart-components_page-admin_OrgPanes_DirectoryOrgPane.source-title }}**, copy and save your organization ID. You will need it to create a function.
## Create a {{ sf-name }} function {#create-function}
@@ -87,17 +87,17 @@ If you no longer need the resources you created, [delete them](#clear-out).
### Create a queue
-1. On the left-hand panel, select ![](../../_assets/console-icons/layers-3-diagonal.svg) **{{ ui-key.startrek.ui_components_TrackerSearch.queues }}** → **Create queue**.
+1. On the left-hand panel, select ![](../../_assets/console-icons/layers-3-diagonal.svg) **{{ ui-key.startrek.ui_Common_smart-components_TrackerSearch.queues }}** → **Create queue**.
1. Select a queue template, e.g., **Basic development model**.
1. Enter a name, e.g., `Function Test`.
1. Click **Create**.
### Create a trigger
-1. In the top-right corner of the queue page, click ![](../../_assets/console-icons/gear.svg) **{{ ui-key.startrek.ui_components_PageQueue_header.settings }}**.
+1. In the top-right corner of the queue page, click ![](../../_assets/console-icons/gear.svg) **{{ ui-key.startrek.ui_Queues_pages_PageQueue_header.settings }}**.
1. On the left-hand panel, select **Automation** → **Triggers** and click **Create trigger**.
1. In the **Name** field, enter a trigger name, e.g., `timeupdater`.
-1. Under **Trigger conditions**, select **{{ ui-key.startrek.ui_components_page-queue-admin_QueueAdminPageContent.menu-item-timetracking }}** → **Time spent**.
+1. Under **Trigger conditions**, select **{{ ui-key.startrek.ui_Queues_pages_page-queue-admin_QueueAdminPageContent.menu-item-timetracking }}** → **Time spent**.
1. Under **Trigger actions**, select **HTTP request**.
1. In the form that opens, in the **Address** field, enter:
```
@@ -119,14 +119,14 @@ If you no longer need the resources you created, [delete them](#clear-out).
1. In the form that opens, in the **Issue name** field, enter an issue name, e.g., `Parent Task`.
1. Click **Create**.
1. Create sub-issues:
- 1. In the top-right corner of the `Parent Task` issue page, in the **{{ ui-key.startrek.ui_components_issue-actions_IssueMenu.title }}** menu, select **{{ ui-key.startrek.ui_components_issue-actions_IssueMenu.create-subissue }}**.
+ 1. In the top-right corner of the `Parent Task` issue page, in the **{{ ui-key.startrek.ui_Issues_smart-components_issue-actions_IssueMenu.title }}** menu, select **{{ ui-key.startrek.ui_Issues_smart-components_issue-actions_IssueMenu.create-subissue }}**.
1. In the form that opens, in the **Issue name** field, enter a sub-issue name, e.g., `Subtask-1`.
1. In the same way, create another sub-issue or multiple sub-issues named `Subtask-2`, `Subtask-3`, etc.
### Enter time spent values for the sub-issues
-1. In the top-right corner of the `Subtask-1` sub-issue page, in the **{{ ui-key.startrek.ui_components_issue-actions_IssueMenu.title }}** menu, select **{{ ui-key.startrek.ui_components_issue-actions_IssueMenu.add-worklog }}**.
-1. In the dialog that opens, in the **{{ ui-key.startrek.ui_components_issue-actions_worklog_AddWorklogDialog.duration-label }}** field, enter any time value, e.g., `1h25m`.
+1. In the top-right corner of the `Subtask-1` sub-issue page, in the **{{ ui-key.startrek.ui_Issues_smart-components_issue-actions_IssueMenu.title }}** menu, select **{{ ui-key.startrek.ui_Issues_smart-components_issue-actions_IssueMenu.add-worklog }}**.
+1. In the dialog that opens, in the **{{ ui-key.startrek.ui_Issues_smart-components_issue-actions_worklog_AddWorklogDialog.duration-label }}** field, enter any time value, e.g., `1h25m`.
1. In the same way, add time spent values for the other sub-issues.
### Check if the function works correctly
diff --git a/en/_tutorials/windows/s3-disk-connect.md b/en/_tutorials/windows/s3-disk-connect.md
index 99de09ff375..b42337a0a61 100644
--- a/en/_tutorials/windows/s3-disk-connect.md
+++ b/en/_tutorials/windows/s3-disk-connect.md
@@ -137,7 +137,7 @@ The cost for bucket support includes:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where you want to create your bucket.
+ 1. In the [management console]({{ link-console-main }}), select the folder you want to create a bucket in.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
1. At the top right, click **{{ ui-key.yacloud.storage.buckets.button_create }}**.
1. In the **{{ ui-key.yacloud.storage.bucket.settings.field_name }}** field, enter a name for the bucket consistent with the [naming conventions](../../storage/concepts/bucket.md#naming).
@@ -155,6 +155,7 @@ The cost for bucket support includes:
```
Result:
+
```text
make_bucket:
```
@@ -312,5 +313,5 @@ You can also configure the service to be run by a system user (for more informat
To stop paying for the resources you created:
-* [Delete objects](../../storage/operations/objects/delete-all.md) from the bucket.
+* [Delete the objects](../../storage/operations/objects/delete-all.md) from the bucket.
* [Delete the bucket](../../storage/operations/buckets/delete.md).
diff --git a/en/application-load-balancer/api-ref/grpc/BackendGroup/addBackend.md b/en/application-load-balancer/api-ref/grpc/BackendGroup/addBackend.md
index 6fac9a2e780..c5248ee9b3a 100644
--- a/en/application-load-balancer/api-ref/grpc/BackendGroup/addBackend.md
+++ b/en/application-load-balancer/api-ref/grpc/BackendGroup/addBackend.md
@@ -9,7 +9,7 @@ Adds backends to the specified backend group.
## gRPC request
-**rpc AddBackend ([AddBackendRequest](#yandex.cloud.apploadbalancer.v1.AddBackendRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc AddBackend ([AddBackendRequest](#yandex.cloud.apploadbalancer.v1.AddBackendRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## AddBackendRequest {#yandex.cloud.apploadbalancer.v1.AddBackendRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/BackendGroup/create.md b/en/application-load-balancer/api-ref/grpc/BackendGroup/create.md
index b66c5382aa8..75f4539fd57 100644
--- a/en/application-load-balancer/api-ref/grpc/BackendGroup/create.md
+++ b/en/application-load-balancer/api-ref/grpc/BackendGroup/create.md
@@ -9,7 +9,7 @@ Creates a backend group in the specified folder.
## gRPC request
-**rpc Create ([CreateBackendGroupRequest](#yandex.cloud.apploadbalancer.v1.CreateBackendGroupRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Create ([CreateBackendGroupRequest](#yandex.cloud.apploadbalancer.v1.CreateBackendGroupRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## CreateBackendGroupRequest {#yandex.cloud.apploadbalancer.v1.CreateBackendGroupRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/BackendGroup/delete.md b/en/application-load-balancer/api-ref/grpc/BackendGroup/delete.md
index 6cded6572fd..7823d5d2934 100644
--- a/en/application-load-balancer/api-ref/grpc/BackendGroup/delete.md
+++ b/en/application-load-balancer/api-ref/grpc/BackendGroup/delete.md
@@ -9,7 +9,7 @@ Deletes the specified backend group.
## gRPC request
-**rpc Delete ([DeleteBackendGroupRequest](#yandex.cloud.apploadbalancer.v1.DeleteBackendGroupRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Delete ([DeleteBackendGroupRequest](#yandex.cloud.apploadbalancer.v1.DeleteBackendGroupRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## DeleteBackendGroupRequest {#yandex.cloud.apploadbalancer.v1.DeleteBackendGroupRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/BackendGroup/removeBackend.md b/en/application-load-balancer/api-ref/grpc/BackendGroup/removeBackend.md
index b3ed75e2591..88aff0e1cb9 100644
--- a/en/application-load-balancer/api-ref/grpc/BackendGroup/removeBackend.md
+++ b/en/application-load-balancer/api-ref/grpc/BackendGroup/removeBackend.md
@@ -9,7 +9,7 @@ Removes backends from the specified backend group.
## gRPC request
-**rpc RemoveBackend ([RemoveBackendRequest](#yandex.cloud.apploadbalancer.v1.RemoveBackendRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc RemoveBackend ([RemoveBackendRequest](#yandex.cloud.apploadbalancer.v1.RemoveBackendRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## RemoveBackendRequest {#yandex.cloud.apploadbalancer.v1.RemoveBackendRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/BackendGroup/update.md b/en/application-load-balancer/api-ref/grpc/BackendGroup/update.md
index 090665aac13..ccfcb96b63a 100644
--- a/en/application-load-balancer/api-ref/grpc/BackendGroup/update.md
+++ b/en/application-load-balancer/api-ref/grpc/BackendGroup/update.md
@@ -9,7 +9,7 @@ Updates the specified backend group.
## gRPC request
-**rpc Update ([UpdateBackendGroupRequest](#yandex.cloud.apploadbalancer.v1.UpdateBackendGroupRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Update ([UpdateBackendGroupRequest](#yandex.cloud.apploadbalancer.v1.UpdateBackendGroupRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateBackendGroupRequest {#yandex.cloud.apploadbalancer.v1.UpdateBackendGroupRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/BackendGroup/updateBackend.md b/en/application-load-balancer/api-ref/grpc/BackendGroup/updateBackend.md
index b2efe5aa94c..cd2e1188cb7 100644
--- a/en/application-load-balancer/api-ref/grpc/BackendGroup/updateBackend.md
+++ b/en/application-load-balancer/api-ref/grpc/BackendGroup/updateBackend.md
@@ -9,7 +9,7 @@ Updates the specified backend.
## gRPC request
-**rpc UpdateBackend ([UpdateBackendRequest](#yandex.cloud.apploadbalancer.v1.UpdateBackendRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc UpdateBackend ([UpdateBackendRequest](#yandex.cloud.apploadbalancer.v1.UpdateBackendRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateBackendRequest {#yandex.cloud.apploadbalancer.v1.UpdateBackendRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/HttpRouter/create.md b/en/application-load-balancer/api-ref/grpc/HttpRouter/create.md
index 0659d3a3263..32c88ef2386 100644
--- a/en/application-load-balancer/api-ref/grpc/HttpRouter/create.md
+++ b/en/application-load-balancer/api-ref/grpc/HttpRouter/create.md
@@ -9,7 +9,7 @@ Creates an HTTP router in the specified folder.
## gRPC request
-**rpc Create ([CreateHttpRouterRequest](#yandex.cloud.apploadbalancer.v1.CreateHttpRouterRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Create ([CreateHttpRouterRequest](#yandex.cloud.apploadbalancer.v1.CreateHttpRouterRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## CreateHttpRouterRequest {#yandex.cloud.apploadbalancer.v1.CreateHttpRouterRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/HttpRouter/delete.md b/en/application-load-balancer/api-ref/grpc/HttpRouter/delete.md
index 7de32329953..cf335d740c0 100644
--- a/en/application-load-balancer/api-ref/grpc/HttpRouter/delete.md
+++ b/en/application-load-balancer/api-ref/grpc/HttpRouter/delete.md
@@ -9,7 +9,7 @@ Deletes the specified HTTP router.
## gRPC request
-**rpc Delete ([DeleteHttpRouterRequest](#yandex.cloud.apploadbalancer.v1.DeleteHttpRouterRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Delete ([DeleteHttpRouterRequest](#yandex.cloud.apploadbalancer.v1.DeleteHttpRouterRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## DeleteHttpRouterRequest {#yandex.cloud.apploadbalancer.v1.DeleteHttpRouterRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/HttpRouter/update.md b/en/application-load-balancer/api-ref/grpc/HttpRouter/update.md
index 7c457f5fbca..3ad7f93a9df 100644
--- a/en/application-load-balancer/api-ref/grpc/HttpRouter/update.md
+++ b/en/application-load-balancer/api-ref/grpc/HttpRouter/update.md
@@ -9,7 +9,7 @@ Updates the specified HTTP router.
## gRPC request
-**rpc Update ([UpdateHttpRouterRequest](#yandex.cloud.apploadbalancer.v1.UpdateHttpRouterRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Update ([UpdateHttpRouterRequest](#yandex.cloud.apploadbalancer.v1.UpdateHttpRouterRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateHttpRouterRequest {#yandex.cloud.apploadbalancer.v1.UpdateHttpRouterRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/addListener.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/addListener.md
index abd1dacd4c8..fed6d49aa16 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/addListener.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/addListener.md
@@ -9,7 +9,7 @@ Adds a listener to the specified application load balancer.
## gRPC request
-**rpc AddListener ([AddListenerRequest](#yandex.cloud.apploadbalancer.v1.AddListenerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc AddListener ([AddListenerRequest](#yandex.cloud.apploadbalancer.v1.AddListenerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## AddListenerRequest {#yandex.cloud.apploadbalancer.v1.AddListenerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/addSniMatch.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/addSniMatch.md
index d1c08db67f7..6ccbf2c2fdd 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/addSniMatch.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/addSniMatch.md
@@ -11,7 +11,7 @@ This request does not allow to add [TlsListener.defaultHandler](/docs/applicatio
## gRPC request
-**rpc AddSniMatch ([AddSniMatchRequest](#yandex.cloud.apploadbalancer.v1.AddSniMatchRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc AddSniMatch ([AddSniMatchRequest](#yandex.cloud.apploadbalancer.v1.AddSniMatchRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## AddSniMatchRequest {#yandex.cloud.apploadbalancer.v1.AddSniMatchRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/create.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/create.md
index bf13052792f..f24342c6273 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/create.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/create.md
@@ -9,7 +9,7 @@ Creates an application load balancer in the specified folder.
## gRPC request
-**rpc Create ([CreateLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.CreateLoadBalancerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Create ([CreateLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.CreateLoadBalancerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## CreateLoadBalancerRequest {#yandex.cloud.apploadbalancer.v1.CreateLoadBalancerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/delete.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/delete.md
index dca67ec14eb..0b64d7325b1 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/delete.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/delete.md
@@ -9,7 +9,7 @@ Deletes the specified application load balancer.
## gRPC request
-**rpc Delete ([DeleteLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.DeleteLoadBalancerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Delete ([DeleteLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.DeleteLoadBalancerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## DeleteLoadBalancerRequest {#yandex.cloud.apploadbalancer.v1.DeleteLoadBalancerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeListener.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeListener.md
index b0ba605e409..e88738c467b 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeListener.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeListener.md
@@ -9,7 +9,7 @@ Deletes the specified listener.
## gRPC request
-**rpc RemoveListener ([RemoveListenerRequest](#yandex.cloud.apploadbalancer.v1.RemoveListenerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc RemoveListener ([RemoveListenerRequest](#yandex.cloud.apploadbalancer.v1.RemoveListenerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## RemoveListenerRequest {#yandex.cloud.apploadbalancer.v1.RemoveListenerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeSniMatch.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeSniMatch.md
index 67c5d87e74b..eb13747494e 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeSniMatch.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/removeSniMatch.md
@@ -11,7 +11,7 @@ This request does not allow to delete [TlsListener.defaultHandler](/docs/applica
## gRPC request
-**rpc RemoveSniMatch ([RemoveSniMatchRequest](#yandex.cloud.apploadbalancer.v1.RemoveSniMatchRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc RemoveSniMatch ([RemoveSniMatchRequest](#yandex.cloud.apploadbalancer.v1.RemoveSniMatchRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## RemoveSniMatchRequest {#yandex.cloud.apploadbalancer.v1.RemoveSniMatchRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/start.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/start.md
index 369567415af..a194d039033 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/start.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/start.md
@@ -9,7 +9,7 @@ Starts the specified application load balancer.
## gRPC request
-**rpc Start ([StartLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.StartLoadBalancerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Start ([StartLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.StartLoadBalancerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## StartLoadBalancerRequest {#yandex.cloud.apploadbalancer.v1.StartLoadBalancerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/stop.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/stop.md
index a74b171db30..f4a9c2ed90e 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/stop.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/stop.md
@@ -9,7 +9,7 @@ Stops the specified application load balancer.
## gRPC request
-**rpc Stop ([StopLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.StopLoadBalancerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Stop ([StopLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.StopLoadBalancerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## StopLoadBalancerRequest {#yandex.cloud.apploadbalancer.v1.StopLoadBalancerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/update.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/update.md
index f081e2cbc3a..f1fcb20039f 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/update.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/update.md
@@ -9,7 +9,7 @@ Updates the specified application load balancer.
## gRPC request
-**rpc Update ([UpdateLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.UpdateLoadBalancerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Update ([UpdateLoadBalancerRequest](#yandex.cloud.apploadbalancer.v1.UpdateLoadBalancerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateLoadBalancerRequest {#yandex.cloud.apploadbalancer.v1.UpdateLoadBalancerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateListener.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateListener.md
index 8f4bf9532a6..ced75f29321 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateListener.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateListener.md
@@ -9,7 +9,7 @@ Updates the specified listener of the specified application load balancer.
## gRPC request
-**rpc UpdateListener ([UpdateListenerRequest](#yandex.cloud.apploadbalancer.v1.UpdateListenerRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc UpdateListener ([UpdateListenerRequest](#yandex.cloud.apploadbalancer.v1.UpdateListenerRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateListenerRequest {#yandex.cloud.apploadbalancer.v1.UpdateListenerRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateSniMatch.md b/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateSniMatch.md
index 511787f496b..f2ff0e2458f 100644
--- a/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateSniMatch.md
+++ b/en/application-load-balancer/api-ref/grpc/LoadBalancer/updateSniMatch.md
@@ -11,7 +11,7 @@ This request does not allow to update [TlsListener.defaultHandler](/docs/applica
## gRPC request
-**rpc UpdateSniMatch ([UpdateSniMatchRequest](#yandex.cloud.apploadbalancer.v1.UpdateSniMatchRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc UpdateSniMatch ([UpdateSniMatchRequest](#yandex.cloud.apploadbalancer.v1.UpdateSniMatchRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateSniMatchRequest {#yandex.cloud.apploadbalancer.v1.UpdateSniMatchRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/TargetGroup/addTargets.md b/en/application-load-balancer/api-ref/grpc/TargetGroup/addTargets.md
index 84e1b563f78..761444d7a13 100644
--- a/en/application-load-balancer/api-ref/grpc/TargetGroup/addTargets.md
+++ b/en/application-load-balancer/api-ref/grpc/TargetGroup/addTargets.md
@@ -9,7 +9,7 @@ Adds targets to the specified target group.
## gRPC request
-**rpc AddTargets ([AddTargetsRequest](#yandex.cloud.apploadbalancer.v1.AddTargetsRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc AddTargets ([AddTargetsRequest](#yandex.cloud.apploadbalancer.v1.AddTargetsRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## AddTargetsRequest {#yandex.cloud.apploadbalancer.v1.AddTargetsRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/TargetGroup/create.md b/en/application-load-balancer/api-ref/grpc/TargetGroup/create.md
index a11fdf37f71..89cbce63384 100644
--- a/en/application-load-balancer/api-ref/grpc/TargetGroup/create.md
+++ b/en/application-load-balancer/api-ref/grpc/TargetGroup/create.md
@@ -9,7 +9,7 @@ Creates a target group in the specified folder.
## gRPC request
-**rpc Create ([CreateTargetGroupRequest](#yandex.cloud.apploadbalancer.v1.CreateTargetGroupRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Create ([CreateTargetGroupRequest](#yandex.cloud.apploadbalancer.v1.CreateTargetGroupRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## CreateTargetGroupRequest {#yandex.cloud.apploadbalancer.v1.CreateTargetGroupRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/TargetGroup/delete.md b/en/application-load-balancer/api-ref/grpc/TargetGroup/delete.md
index 839e51f88db..32651bc9130 100644
--- a/en/application-load-balancer/api-ref/grpc/TargetGroup/delete.md
+++ b/en/application-load-balancer/api-ref/grpc/TargetGroup/delete.md
@@ -9,7 +9,7 @@ Deletes the specified target group.
## gRPC request
-**rpc Delete ([DeleteTargetGroupRequest](#yandex.cloud.apploadbalancer.v1.DeleteTargetGroupRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Delete ([DeleteTargetGroupRequest](#yandex.cloud.apploadbalancer.v1.DeleteTargetGroupRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## DeleteTargetGroupRequest {#yandex.cloud.apploadbalancer.v1.DeleteTargetGroupRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/TargetGroup/removeTargets.md b/en/application-load-balancer/api-ref/grpc/TargetGroup/removeTargets.md
index 4516bb52d5a..758b8e55b1d 100644
--- a/en/application-load-balancer/api-ref/grpc/TargetGroup/removeTargets.md
+++ b/en/application-load-balancer/api-ref/grpc/TargetGroup/removeTargets.md
@@ -9,7 +9,7 @@ Removes targets from the specified target group.
## gRPC request
-**rpc RemoveTargets ([RemoveTargetsRequest](#yandex.cloud.apploadbalancer.v1.RemoveTargetsRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc RemoveTargets ([RemoveTargetsRequest](#yandex.cloud.apploadbalancer.v1.RemoveTargetsRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## RemoveTargetsRequest {#yandex.cloud.apploadbalancer.v1.RemoveTargetsRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/TargetGroup/update.md b/en/application-load-balancer/api-ref/grpc/TargetGroup/update.md
index ee729d7e0fc..3458fa9f6c4 100644
--- a/en/application-load-balancer/api-ref/grpc/TargetGroup/update.md
+++ b/en/application-load-balancer/api-ref/grpc/TargetGroup/update.md
@@ -9,7 +9,7 @@ Updates the specified target group.
## gRPC request
-**rpc Update ([UpdateTargetGroupRequest](#yandex.cloud.apploadbalancer.v1.UpdateTargetGroupRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Update ([UpdateTargetGroupRequest](#yandex.cloud.apploadbalancer.v1.UpdateTargetGroupRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateTargetGroupRequest {#yandex.cloud.apploadbalancer.v1.UpdateTargetGroupRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/VirtualHost/create.md b/en/application-load-balancer/api-ref/grpc/VirtualHost/create.md
index 61c7e1eacc5..5cf58939776 100644
--- a/en/application-load-balancer/api-ref/grpc/VirtualHost/create.md
+++ b/en/application-load-balancer/api-ref/grpc/VirtualHost/create.md
@@ -9,7 +9,7 @@ Creates a virtual host in the specified HTTP router.
## gRPC request
-**rpc Create ([CreateVirtualHostRequest](#yandex.cloud.apploadbalancer.v1.CreateVirtualHostRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Create ([CreateVirtualHostRequest](#yandex.cloud.apploadbalancer.v1.CreateVirtualHostRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## CreateVirtualHostRequest {#yandex.cloud.apploadbalancer.v1.CreateVirtualHostRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/VirtualHost/delete.md b/en/application-load-balancer/api-ref/grpc/VirtualHost/delete.md
index 6d5c93a6c87..a22ee91c02d 100644
--- a/en/application-load-balancer/api-ref/grpc/VirtualHost/delete.md
+++ b/en/application-load-balancer/api-ref/grpc/VirtualHost/delete.md
@@ -9,7 +9,7 @@ Deletes the specified virtual host.
## gRPC request
-**rpc Delete ([DeleteVirtualHostRequest](#yandex.cloud.apploadbalancer.v1.DeleteVirtualHostRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Delete ([DeleteVirtualHostRequest](#yandex.cloud.apploadbalancer.v1.DeleteVirtualHostRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## DeleteVirtualHostRequest {#yandex.cloud.apploadbalancer.v1.DeleteVirtualHostRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/VirtualHost/removeRoute.md b/en/application-load-balancer/api-ref/grpc/VirtualHost/removeRoute.md
index 14b3d0c121d..7913953d765 100644
--- a/en/application-load-balancer/api-ref/grpc/VirtualHost/removeRoute.md
+++ b/en/application-load-balancer/api-ref/grpc/VirtualHost/removeRoute.md
@@ -9,7 +9,7 @@ Deletes the specified route from the specified virtual host.
## gRPC request
-**rpc RemoveRoute ([RemoveRouteRequest](#yandex.cloud.apploadbalancer.v1.RemoveRouteRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc RemoveRoute ([RemoveRouteRequest](#yandex.cloud.apploadbalancer.v1.RemoveRouteRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## RemoveRouteRequest {#yandex.cloud.apploadbalancer.v1.RemoveRouteRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/VirtualHost/update.md b/en/application-load-balancer/api-ref/grpc/VirtualHost/update.md
index 940c5e38f9a..b0546a036aa 100644
--- a/en/application-load-balancer/api-ref/grpc/VirtualHost/update.md
+++ b/en/application-load-balancer/api-ref/grpc/VirtualHost/update.md
@@ -9,7 +9,7 @@ Updates the specified virtual host of the specified HTTP router.
## gRPC request
-**rpc Update ([UpdateVirtualHostRequest](#yandex.cloud.apploadbalancer.v1.UpdateVirtualHostRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc Update ([UpdateVirtualHostRequest](#yandex.cloud.apploadbalancer.v1.UpdateVirtualHostRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateVirtualHostRequest {#yandex.cloud.apploadbalancer.v1.UpdateVirtualHostRequest}
diff --git a/en/application-load-balancer/api-ref/grpc/VirtualHost/updateRoute.md b/en/application-load-balancer/api-ref/grpc/VirtualHost/updateRoute.md
index 4ab5e21acf3..83abb1508ae 100644
--- a/en/application-load-balancer/api-ref/grpc/VirtualHost/updateRoute.md
+++ b/en/application-load-balancer/api-ref/grpc/VirtualHost/updateRoute.md
@@ -9,7 +9,7 @@ Updates the specified route of the specified virtual host.
## gRPC request
-**rpc UpdateRoute ([UpdateRouteRequest](#yandex.cloud.apploadbalancer.v1.UpdateRouteRequest)) returns ([operation.Operation](/docs/application-load-balancer/api-ref/grpc/HttpRouter/get#yandex.cloud.apploadbalancer.v1.HeaderModification.operation))**
+**rpc UpdateRoute ([UpdateRouteRequest](#yandex.cloud.apploadbalancer.v1.UpdateRouteRequest)) returns ([operation.Operation](#yandex.cloud.operation.Operation))**
## UpdateRouteRequest {#yandex.cloud.apploadbalancer.v1.UpdateRouteRequest}
diff --git a/en/application-load-balancer/operations/target-group-create.md b/en/application-load-balancer/operations/target-group-create.md
index 647c33eda09..3a6417c4a30 100644
--- a/en/application-load-balancer/operations/target-group-create.md
+++ b/en/application-load-balancer/operations/target-group-create.md
@@ -13,7 +13,7 @@ To create a [target group](../concepts/target-group.md):
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where you want to create your target group.
+ 1. In the [management console]({{ link-console-main }}), select the folder to create your target group in.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_application-load-balancer }}**.
1. In the left-hand panel, select ![image](../../_assets/console-icons/target.svg) **{{ ui-key.yacloud.alb.label_target-groups }}**.
1. Click **{{ ui-key.yacloud.alb.button_target-group-create }}**.
@@ -175,4 +175,10 @@ To create a [target group](../concepts/target-group.md):
Use the [create](../api-ref/TargetGroup/create.md) REST API method for the [TargetGroup](../api-ref/TargetGroup/index.md) resource or the [TargetGroupService/Create](../api-ref/grpc/TargetGroup/create.md) gRPC API call.
-{% endlist %}
\ No newline at end of file
+{% endlist %}
+
+#### See also {#see-also}
+
+* [{#T}](../tutorials/application-load-balancer-website.md)
+* [{#T}](../tutorials/logging.md)
+* [{#T}](../tutorials/alb-with-ddos-protection/console.md)
diff --git a/en/application-load-balancer/quickstart-wizard.md b/en/application-load-balancer/quickstart-wizard.md
index a0744dff509..d9605a688f1 100644
--- a/en/application-load-balancer/quickstart-wizard.md
+++ b/en/application-load-balancer/quickstart-wizard.md
@@ -97,9 +97,9 @@ As an example, let's create a balancer with a node in the same subnet and same a
1. Enter the load balancer name: `test-load-balancer`.
1. Under **{{ ui-key.yacloud.mdb.forms.section_network-settings }}**, select the network whose subnet will host the load balancer node.
1. Toggle **{{ ui-key.yacloud.alb.label_detailed-settings }}** on.
- 1. Under **{{ ui-key.yacloud.alb.section_allocation-settings }}**, select a subnet in a single [availability zone](../overview/concepts/geo-scope.md) and enable traffic in this subnet.
+ 1. Under **{{ ui-key.yacloud.alb.section_allocation-settings }}**, select a subnet in one [availability zone](../overview/concepts/geo-scope.md) and enable incoming traffic in this subnet.
- Remove all other availability zones by clicking ![xmark](../_assets/console-icons/xmark.svg) in the relevant row.
+ Remove the other availability zones by clicking ![xmark](../_assets/console-icons/xmark.svg) in the relevant row.
1. Under **{{ ui-key.yacloud.alb.label_listeners }}**, enter the listener name: `test-listener`.
@@ -113,16 +113,16 @@ As an example, let's create a balancer with a node in the same subnet and same a
In the terminal, run the following command:
```bash
-curl -v :80
+curl --verbose :80
```
-The response must return the `200` HTTP status code and an HTML-formatted list of folders from the test VM folder.
+The response must return the HTTP status code `200` and an HTML list of folders from the test VM folder.
After that, you can add other VMs to the target group, create new backends for your application, and build routes to the application endpoints.
## How to delete the resources you created {#clear-out}
-To stop paying for the resources created, delete them in the following order:
+To stop paying for the resources you created, delete them in the following order:
{% list tabs group=instructions %}
diff --git a/en/application-load-balancer/quickstart.md b/en/application-load-balancer/quickstart.md
index 4bed9651924..b957271f849 100644
--- a/en/application-load-balancer/quickstart.md
+++ b/en/application-load-balancer/quickstart.md
@@ -203,7 +203,7 @@ As an example, let's create a balancer with a node in the same subnet and same a
In the terminal, run the following command:
```bash
-curl -v :80
+curl --verbose :80
```
The response must return the HTTP status code `200` and an HTML list of folders from the test VM folder.
diff --git a/en/audit-trails/api-ref/Trail/list.md b/en/audit-trails/api-ref/Trail/list.md
index 5142bdd86b1..30f2ab5cb6c 100644
--- a/en/audit-trails/api-ref/Trail/list.md
+++ b/en/audit-trails/api-ref/Trail/list.md
@@ -29,7 +29,7 @@ Default value: 100. ||
|| pageToken | **string**
Page token. To get the next page of results, set `page_token` to the
-[ListTrailsRequest.nextPageToken](#yandex.cloud.audittrails.v1.ListTrailsResponse) returned by a previous list request. ||
+[ListTrailsRequest.next_page_token] returned by a previous list request. ||
|| filter | **string**
A filter expression that filters subscription locks listed in the response.
diff --git a/en/audit-trails/api-ref/Trail/listOperations.md b/en/audit-trails/api-ref/Trail/listOperations.md
index 18fbf88af44..39e713f2901 100644
--- a/en/audit-trails/api-ref/Trail/listOperations.md
+++ b/en/audit-trails/api-ref/Trail/listOperations.md
@@ -35,7 +35,7 @@ Default value: 100. ||
|| pageToken | **string**
Page token. To get the next page of results, set `page_token` to the
-[ListTrailOperationsRequest.nextPageToken](/docs/audit-trails/api-ref/Trail/list#yandex.cloud.audittrails.v1.ListTrailsResponse) returned by a previous list request. ||
+[ListTrailOperationsRequest.next_page_token] returned by a previous list request. ||
|#
## Response {#yandex.cloud.audittrails.v1.ListTrailOperationsResponse}
@@ -77,8 +77,8 @@ List of operations for the specified trail. ||
|| nextPageToken | **string**
This token allows you to get the next page of results for list requests. If the number of results
-is larger than [ListTrailOperationsResponse.pageSize](/docs/audit-trails/api-ref/Trail/list#yandex.cloud.audittrails.v1.ListTrailsRequest), use the `next_page_token` as the value
-for the [ListTrailOperationsResponse.pageToken](/docs/audit-trails/api-ref/Trail/list#yandex.cloud.audittrails.v1.ListTrailsRequest) query parameter in the next list request.
+is larger than [ListTrailOperationsResponse.page_size], use the `next_page_token` as the value
+for the [ListTrailOperationsResponse.page_token] query parameter in the next list request.
Each subsequent list request will have its own `next_page_token` to continue paging through the results. ||
|#
diff --git a/en/audit-trails/api-ref/grpc/Trail/list.md b/en/audit-trails/api-ref/grpc/Trail/list.md
index 725b95b836f..9f02521a05a 100644
--- a/en/audit-trails/api-ref/grpc/Trail/list.md
+++ b/en/audit-trails/api-ref/grpc/Trail/list.md
@@ -37,7 +37,7 @@ Default value: 100. ||
|| pageToken | **string**
Page token. To get the next page of results, set `page_token` to the
-[ListTrailsRequest.nextPageToken](#yandex.cloud.audittrails.v1.ListTrailsResponse) returned by a previous list request. ||
+[ListTrailsRequest.next_page_token] returned by a previous list request. ||
|| filter | **string**
A filter expression that filters subscription locks listed in the response.
diff --git a/en/audit-trails/api-ref/grpc/Trail/listOperations.md b/en/audit-trails/api-ref/grpc/Trail/listOperations.md
index 121507999e8..c669d45af48 100644
--- a/en/audit-trails/api-ref/grpc/Trail/listOperations.md
+++ b/en/audit-trails/api-ref/grpc/Trail/listOperations.md
@@ -35,7 +35,7 @@ Default value: 100. ||
|| pageToken | **string**
Page token. To get the next page of results, set `page_token` to the
-[ListTrailOperationsRequest.nextPageToken](/docs/audit-trails/api-ref/grpc/Trail/list#yandex.cloud.audittrails.v1.ListTrailsResponse) returned by a previous list request. ||
+[ListTrailOperationsRequest.next_page_token] returned by a previous list request. ||
|#
## ListTrailOperationsResponse {#yandex.cloud.audittrails.v1.ListTrailOperationsResponse}
@@ -69,8 +69,8 @@ List of operations for the specified trail. ||
|| nextPageToken | **string**
This token allows you to get the next page of results for list requests. If the number of results
-is larger than [ListTrailOperationsResponse.pageSize](/docs/audit-trails/api-ref/grpc/Trail/list#yandex.cloud.audittrails.v1.ListTrailsRequest), use the `next_page_token` as the value
-for the [ListTrailOperationsResponse.pageToken](/docs/audit-trails/api-ref/grpc/Trail/list#yandex.cloud.audittrails.v1.ListTrailsRequest) query parameter in the next list request.
+is larger than [ListTrailOperationsResponse.page_size], use the `next_page_token` as the value
+for the [ListTrailOperationsResponse.page_token] query parameter in the next list request.
Each subsequent list request will have its own `next_page_token` to continue paging through the results. ||
|#
diff --git a/en/audit-trails/tutorials/export-logs-to-arcsight.md b/en/audit-trails/tutorials/export-logs-to-arcsight.md
index 1388127665d..82cbbb8762e 100644
--- a/en/audit-trails/tutorials/export-logs-to-arcsight.md
+++ b/en/audit-trails/tutorials/export-logs-to-arcsight.md
@@ -4,7 +4,7 @@ Create a trail to upload management event audit logs of resources in an individu
To complete the tutorial successfully, you must have an ArcSight instance installed.
-The solution described in the tutorial follows the procedure below:
+The solution described in the tutorial follows the steps below:
1. A [trail](../concepts/trail.md) uploads logs to an {{ objstorage-name }} bucket.
1. A [bucket](../../storage/concepts/bucket.md) is mounted via a [FUSE](https://en.wikipedia.org/wiki/Filesystem_in_Userspace) interface to a folder on an intermediate VM.
1. [SmartConnector](https://www.microfocus.com/documentation/arcsight/arcsight-smartconnectors/AS_SmartConn_getstart_HTML/) collects logs from the folder and delivers them to ArcSight for analysis.
@@ -38,7 +38,7 @@ The infrastructure support cost includes:
* Fee for using VM instances (see [{{ compute-short-name }} pricing](../../compute/pricing.md)).
* Fee for storing data in a bucket (see [{{ objstorage-name }} pricing](../../storage/pricing.md#prices-storage)).
-* Fee for data operations (see [{{ objstorage-name }} pricing](../../storage/pricing.md#prices-operations)).
+* Fee for operations with data (see [{{ objstorage-name }} pricing](../../storage/pricing.md#prices-operations)).
* Fee for using {{ kms-short-name }} keys (see [{{ kms-name }} pricing](../../kms/pricing.md#prices)).
## Prepare the environment {#prepare-environment}
@@ -48,7 +48,7 @@ The infrastructure support cost includes:
You can use a VM that has access to an ArcSight instance or create a new one:
1. [Create a VM](../../compute/operations/vm-create/create-linux-vm.md) from a Linux image based on [Ubuntu 20.04](/marketplace/products/yc/ubuntu-20-04-lts).
-1. [Connect to the VM](../../compute/operations/vm-connect/ssh.md#vm-connect) via SSH.
+1. [Connect to the VM](../../compute/operations/vm-connect/ssh.md#vm-connect) over SSH.
### Create a bucket for audit logs {#create-backet}
@@ -56,10 +56,10 @@ You can use a VM that has access to an ArcSight instance or create a new one:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder to create a bucket in, e.g., `example-folder`.
- 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
- 1. Click **{{ ui-key.yacloud.storage.buckets.button_empty-create }}**.
- 1. On the bucket creation page:
+ 1. In the [management console]({{ link-console-main }}), select the folder where you want to create a bucket, e.g., `example-folder`.
+ 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
+ 1. Click **{{ ui-key.yacloud.storage.buckets.button_empty-create }}**.
+ 1. On the bucket creation page:
1. Enter a name for the bucket according to the [naming requirements](../../storage/concepts/bucket.md#naming).
1. Limit the maximum bucket size, if required.
@@ -77,13 +77,13 @@ You can use a VM that has access to an ArcSight instance or create a new one:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
- 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_kms }}**.
- 1. Click **{{ ui-key.yacloud.kms.symmetric-keys.button_empty-create }}** and specify:
- * **{{ ui-key.yacloud.common.name }}**: `arcsight-kms`
- * **{{ ui-key.yacloud.kms.symmetric-key.form.field_algorithm }}**: `AES-256`
- * Leave the other parameters at their default settings.
- 1. Click **{{ ui-key.yacloud.common.create }}**.
+ 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
+ 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_kms }}**.
+ 1. Click **{{ ui-key.yacloud.kms.symmetric-keys.button_empty-create }}** and specify:
+ * **{{ ui-key.yacloud.common.name }}**: `arcsight-kms`.
+ * **{{ ui-key.yacloud.kms.symmetric-key.form.field_algorithm }}**: `AES-256`.
+ * Leave the other parameters at their default settings.
+ 1. Click **{{ ui-key.yacloud.common.create }}**.
{% endlist %}
@@ -93,10 +93,11 @@ You can use a VM that has access to an ArcSight instance or create a new one:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), go to the previously created bucket.
- 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_encryption }}**.
- 1. In the **{{ ui-key.yacloud.storage.bucket.encryption.field_key }}** field, select the `arcsight-kms` key.
- 1. Click **{{ ui-key.yacloud.storage.bucket.encryption.button_save }}**.
+ 1. In the [management console]({{ link-console-main }}), go to the previously created bucket.
+ 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_security }}**.
+ 1. Open the **{{ ui-key.yacloud.storage.bucket.switch_encryption }}** tab.
+ 1. In the **{{ ui-key.yacloud.storage.bucket.encryption.field_key }}** field, select `arcsight-kms`.
+ 1. Click **{{ ui-key.yacloud.storage.bucket.encryption.button_save }}**.
{% endlist %}
@@ -104,26 +105,26 @@ You can use a VM that has access to an ArcSight instance or create a new one:
You need to create two accounts: one for a trail and one for a bucket.
-Create the `sa-arcsight` service account:
+Create a service account named `sa-arcsight`:
{% list tabs group=instructions %}
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
- 1. At the top of the screen, go to the **{{ ui-key.yacloud.iam.folder.switch_service-accounts }}** tab.
- 1. Click **{{ ui-key.yacloud.iam.folder.service-accounts.button_add }}**.
- 1. Enter a name for the service account according to the naming requirements:
-
- {% include [name-format](../../_includes/name-format.md) %}
-
- For example, `sa-arcsight`.
-
- 1. Click **{{ ui-key.yacloud.iam.folder.service-account.popup-robot_button_add }}**.
-
+ 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
+ 1. At the top of the screen, go to the **{{ ui-key.yacloud.iam.folder.switch_service-accounts }}** tab.
+ 1. Click **{{ ui-key.yacloud.iam.folder.service-accounts.button_add }}**.
+ 1. Enter a name for the service account according to the naming requirements:
+
+ {% include [name-format](../../_includes/name-format.md) %}
+
+ Example: `sa-arcsight`.
+
+ 1. Click **{{ ui-key.yacloud.iam.folder.service-account.popup-robot_button_add }}**.
+
{% endlist %}
-Create the `sa-arcsight-bucket` service account the same way.
+Similarly, create a service account named `sa-arcsight-bucket`.
### Create a static key {#create-access-key}
@@ -133,13 +134,13 @@ You will need the key ID and secret key when mounting the bucket.
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
- 1. At the top of the screen, go to the **{{ ui-key.yacloud.iam.folder.switch_service-accounts }}** tab.
- 1. Choose `sa-arcsight-bucket` and click the row with its name.
- 1. Click **{{ ui-key.yacloud.iam.folder.service-account.overview.button_create-key-popup }}** on the top panel.
- 1. Select **{{ ui-key.yacloud.iam.folder.service-account.overview.button_create_service-account-key }}**.
- 1. Enter a description for the key and click **{{ ui-key.yacloud.iam.folder.service-account.overview.popup-key_button_create }}**.
- 1. Save the ID and private key.
+ 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
+ 1. At the top of the screen, go to the **{{ ui-key.yacloud.iam.folder.switch_service-accounts }}** tab.
+ 1. Select the `sa-arcsight-bucket` service account and click the row with its name.
+ 1. Click **{{ ui-key.yacloud.iam.folder.service-account.overview.button_create-key-popup }}** on the top panel.
+ 1. Select **{{ ui-key.yacloud.iam.folder.service-account.overview.button_create_service-account-key }}**.
+ 1. Enter a description for the key and click **{{ ui-key.yacloud.iam.folder.service-account.overview.popup-key_button_create }}**.
+ 1. Save the ID and private key.
{% note alert %}
@@ -149,7 +150,7 @@ You will need the key ID and secret key when mounting the bucket.
- CLI {#cli}
- 1. Create an access key for `sa-arcsight-bucket`:
+ 1. Create an access key for the `sa-arcsight-bucket` service account:
```bash
yc iam access-key create --service-account-name sa-arcsight-bucket
@@ -166,75 +167,75 @@ You will need the key ID and secret key when mounting the bucket.
secret: JyT*******zMP1
```
- 1. Save the ID (`key_id`) and secret key (`secret`). You will not be able to get the key value again.
+ 1. Save the ID (`key_id`) and secret key (`secret`). You will not be able to get the key value again.
{% endlist %}
## Assign roles to the service accounts {#add-roles}
-Assign `sa-arcsight` the `audit-trails.viewer`, `storage.uploader`, and `kms.keys.encrypterDecrypter` roles:
+Assign the `audit-trails.viewer`, `storage.uploader`, and `kms.keys.encrypterDecrypter` roles to the `sa-arcsight` service account:
{% list tabs group=instructions %}
- CLI {#cli}
- 1. The `audit-trails.viewer` [role](../../audit-trails/security/#roles) to the folder:
-
+ 1. `audit-trails.viewer` [role](../../audit-trails/security/#roles) for the folder:
+
```
yc resource-manager folder add-access-binding \
--role audit-trails.viewer \
--id \
--service-account-id
```
-
+
Where:
-
+
* `--role`: Role being assigned.
- * `--id`: ID of `example-folder`.
- * `--service-account-id`: ID of the `sa-arcsight` service account.
+ * `--id`: `example-folder` ID.
+ * `--service-account-id`: `sa-arcsight` service account ID.
For more information about the `yc resource-manager folder add-access-binding` command, see the [CLI reference](../../cli/cli-ref/managed-services/resource-manager/folder/add-access-binding.md).
-
- 1. The `storage.uploader` [role](../../storage/security/#storage-uploader) to the folder with a bucket:
-
+
+ 1. Assign the `storage.uploader` [role](../../storage/security/#storage-uploader) for the folder the bucket is in:
+
```
yc resource-manager folder add-access-binding \
--role storage.uploader \
--id \
--service-account-id
```
-
+
Where:
-
+
* `--role`: Role being assigned.
- * `--id`: ID of `example-folder`.
- * `--service-account-id`: ID of the `sa-arcsight` service account.
-
- 1. The `kms.keys.encrypterDecrypter` [role](../../kms/security/#service) to the `arcsight-kms` encryption key:
+ * `--id`: `example-folder` ID.
+ * `--service-account-id`: `sa-arcsight` service account ID.
+ 1. `kms.keys.encrypterDecrypter` [role](../../kms/security/#service) for the `arcsight-kms` encryption key:
+
```
yc kms symmetric-key add-access-binding \
--role kms.keys.encrypterDecrypter \
--id \
--service-account-id
```
-
+
Where:
-
+
* `--role`: Role being assigned.
* `--id`: ID of the `arcsight-kms` {{ kms-short-name }} key.
- * `--service-account-id`: ID of the `sa-arcsight` service account.
+ * `--service-account-id`: `sa-arcsight` service account ID.
{% endlist %}
-Assign `sa-arcsight-bucket` the `storage.viewer` and `kms.keys.encrypterDecrypter` roles:
+Assign the `storage.viewer` and `kms.keys.encrypterDecrypter` roles to the `sa-arcsight-bucket` service account:
{% list tabs group=instructions %}
- CLI {#cli}
- 1. The `storage.viewer` role to the folder:
-
+ 1. `storage.viewer` role for the folder:
+
```
yc resource-manager folder add-access-binding \
--id \
@@ -243,26 +244,26 @@ Assign `sa-arcsight-bucket` the `storage.viewer` and `kms.keys.encrypterDecrypte
```
Where:
-
- * `--id`: ID of `example-folder`.
+
+ * `--id`: `example-folder` ID.
* `--role`: Role being assigned.
- * `--service-account-id`: ID of `sa-arcsight-bucket`.
-
- 1. The `kms.keys.encrypterDecrypter` role to the `arcsight-kms` encryption key:
-
+ * `--service-account-id`: `sa-arcsight-bucket` service account ID.
+
+ 1. `kms.keys.encrypterDecrypter` role for the `arcsight-kms` encryption key:
+
```
yc kms symmetric-key add-access-binding \
--role kms.keys.encrypterDecrypter \
--id \
--service-account-id
```
-
+
Where:
-
+
* `--role`: Role being assigned.
* `--id`: ID of the `arcsight-kms` {{ kms-short-name }} key.
- * `--service-account-id`: ID of the `sa-arcsight-bucket` service account.
-
+ * `--service-account-id`: `sa-arcsight-bucket` service account ID.
+
{% endlist %}
## Create a trail {#create-trail}
@@ -271,46 +272,46 @@ Assign `sa-arcsight-bucket` the `storage.viewer` and `kms.keys.encrypterDecrypte
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
- 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_audit-trails }}**.
- 1. Click **{{ ui-key.yacloud.audit-trails.button_create-trail }}** and specify:
+ 1. In the [management console]({{ link-console-main }}), go to `example-folder`.
+ 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_audit-trails }}**.
+ 1. Click **{{ ui-key.yacloud.audit-trails.button_create-trail }}** and specify:
- * **{{ ui-key.yacloud.common.name }}**: Name of the trail being created, e.g., `arcsight-trail`.
- * **{{ ui-key.yacloud.common.description }}**: Description of the trail (optional).
+ * **{{ ui-key.yacloud.common.name }}**: Name of the trail you want to create, e.g., `arcsight-trail`.
+ * **{{ ui-key.yacloud.common.description }}**: Trail description (optional).
- 1. Under **{{ ui-key.yacloud.audit-trails.label_destination }}**, set up the destination object:
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_destination }}**, configure the destination object:
- * **{{ ui-key.yacloud.audit-trails.label_destination }}**: `{{ ui-key.yacloud.audit-trails.label_objectStorage }}`.
- * **{{ ui-key.yacloud.audit-trails.label_bucket }}**: Bucket name.
- * **{{ ui-key.yacloud.audit-trails.label_object-prefix }}**: Optional parameter used in the [full name](../../audit-trails/concepts/format.md#log-file-name) of the audit log file.
+ * **{{ ui-key.yacloud.audit-trails.label_destination }}**: `{{ ui-key.yacloud.audit-trails.label_objectStorage }}`
+ * **{{ ui-key.yacloud.audit-trails.label_bucket }}**: Bucket name.
+ * **{{ ui-key.yacloud.audit-trails.label_object-prefix }}**: Optional parameter used in the [full name](../../audit-trails/concepts/format.md#log-file-name) of the audit log file.
+
+ {% include [note-bucket-prefix](../../_includes/audit-trails/note-bucket-prefix.md) %}
- {% include [note-bucket-prefix](../../_includes/audit-trails/note-bucket-prefix.md) %}
+ * **{{ ui-key.yacloud.audit-trails.title_kms-key }}**: Specify the `arcsight-kms` encryption key used to [encrypt](../../storage/concepts/encryption.md) the bucket.
+
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_service-account }}**, select `sa-arcsight`.
- * **{{ ui-key.yacloud.audit-trails.title_kms-key }}**: Specify the `arcsight-kms` encryption key the bucket is [encrypted](../../storage/concepts/encryption.md) with.
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_path-filter-section }}**, configure the collection of management event audit logs:
- 1. Under **{{ ui-key.yacloud.audit-trails.label_service-account }}**, select `sa-arcsight`.
+ * **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}**: Select `{{ ui-key.yacloud.common.enabled }}`.
+ * **{{ ui-key.yacloud.audit-trails.label_resource-type }}**: Select `{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}`.
+ * **{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}**: Automatically populated field containing the name of the current folder.
- 1. Under **{{ ui-key.yacloud.audit-trails.label_path-filter-section }}**, set up the collection of management event audit logs:
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_event-filter-section }}**, select `{{ ui-key.yacloud.common.disabled }}` in the **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}** field.
+ 1. Click **{{ ui-key.yacloud.common.create }}**.
- * **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}**: Select `{{ ui-key.yacloud.common.enabled }}`.
- * **{{ ui-key.yacloud.audit-trails.label_resource-type }}**: Select `{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}`.
- * **{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}**: Automatically populated field containing the name of the current folder.
-
- 1. Under **{{ ui-key.yacloud.audit-trails.label_event-filter-section }}**, select `{{ ui-key.yacloud.common.disabled }}` in the **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}** field.
- 1. Click **{{ ui-key.yacloud.common.create }}**.
-
- {% note warning %}
-
- The solution will delete the logs from the bucket after they are exported to ArcSight. If you need to keep the logs in the bucket, create a separate bucket and trail.
-
- {% endnote %}
+ {% note warning %}
+
+ The solution will delete the logs from the bucket after they are exported to ArcSight. If you need to keep the logs in the bucket, create a separate bucket and trail.
+
+ {% endnote %}
{% endlist %}
## Mount a bucket {#mount-bucket}
A bucket is mounted on an intermediate VM where ArcSight SmartConnector is installed.
-To mount the bucket, create a file with the `sa-arcsight-bucket` service account static access key.
+To mount the bucket, create a file with the static access key of the `sa-arcsight-bucket` service account.
1. On the intermediate VM, create a file with the static access key:
@@ -325,7 +326,7 @@ To mount the bucket, create a file with the `sa-arcsight-bucket` service account
sudo apt install s3fs
```
-1. Create a directory where the bucket will be mounted. For example: `mybucket` in the home directory:
+1. Create a directory to mount the bucket to, e.g., `mybucket`, in your home directory:
```bash
sudo mkdir ${HOME}/mybucket
@@ -352,17 +353,17 @@ To complete this stage of the tutorial, you need an ArcSight SmartConnector dist
{% endnote %}
1. On the intermediate VM, [install](https://www.microfocus.com/documentation/arcsight/arcsight-smartconnectors/AS_smartconn_install/) `ArcSight SmartConnector`:
- 1. When installing it, select **ArcSight FlexConnector JSON Folder Follower** and specify the path to the `mybucket` folder.
- 1. Specify **JSON configuration filename prefix**: `yc`.
+ 1. When installing it, select **ArcSight FlexConnector JSON Folder Follower** and specify the path to the `mybucket` folder.
+ 1. Specify **JSON configuration filename prefix**: `yc`.
1. [Download](https://github.com/yandex-cloud-examples/yc-export-auditlogs-to-arcsight/tree/main/arcsight_content) the `arcsight_content` files.
-1. Copy the `yc.jsonparser.properties` file from the `flex` folder to the `/current/user/agent/flexagent` folder.
-1. Copy the `map.0.properties` file from the `flex` folder to the `/current/user/agent/map` folder.
-1. Edit the file `/current/user/agent/agent.properties`:
+1. Copy the `yc.jsonparser.properties` file from the `flex` folder to the folder with this address: `/current/user/agent/flexagent`.
+1. Copy the `map.0.properties` file from the `flex` folder to the folder with this address: `/current/user/agent/map`.
+1. Edit the `/current/user/agent.properties` file:
- ```bash
- agents[0].mode=DeleteFile
- agents[0].proccessfoldersrecursively=true
- ```
+ ```bash
+ agents[0].mode=DeleteFile
+ agents[0].proccessfoldersrecursively=true
+ ```
1. Start the connector and make sure that events are received by ArcSight:
@@ -373,5 +374,5 @@ To complete this stage of the tutorial, you need an ArcSight SmartConnector dist
Some resources are not free of charge. To avoid paying for them, delete the resources you no longer need:
1. [Delete](../../storage/operations/buckets/delete.md) the {{ objstorage-name }} bucket.
-1. [Destroy](../../kms/operations/key.md#delete) the {{ kms-name }} key.
+1. [Delete](../../kms/operations/key.md#delete) the {{ kms-name }} key.
1. [Delete](../../compute/operations/vm-control/vm-delete.md) the intermediate VM if you created it in {{ compute-short-name }}.
diff --git a/en/audit-trails/tutorials/export-logs-to-splunk.md b/en/audit-trails/tutorials/export-logs-to-splunk.md
index dabc3b99a19..d3b938c4bce 100644
--- a/en/audit-trails/tutorials/export-logs-to-splunk.md
+++ b/en/audit-trails/tutorials/export-logs-to-splunk.md
@@ -38,7 +38,7 @@ The infrastructure support cost includes:
* Fee for using VM instances (see [{{ compute-short-name }} pricing](../../compute/pricing.md)).
* Fee for storing data in a bucket (see [{{ objstorage-name }} pricing](../../storage/pricing.md#prices-storage)).
-* Fee for data operations (see [{{ objstorage-name }} pricing](../../storage/pricing.md#prices-operations)).
+* Fee for operations with data (see [{{ objstorage-name }} pricing](../../storage/pricing.md#prices-operations)).
* Fee for using KMS keys (see [{{ kms-name }} pricing](../../kms/pricing.md#prices)).
## Prepare the environment {#prepare-environment}
@@ -49,10 +49,10 @@ The infrastructure support cost includes:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where you want to create a [bucket](../../storage/concepts/bucket.md).
- 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
- 1. Click **{{ ui-key.yacloud.storage.buckets.button_empty-create }}**.
- 1. On the bucket creation page:
+ 1. In the [management console]({{ link-console-main }}), select the folder where you want to create a [bucket](../../storage/concepts/bucket.md).
+ 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
+ 1. Click **{{ ui-key.yacloud.storage.buckets.button_empty-create }}**.
+ 1. On the bucket creation page:
1. Enter a name for the bucket according to the [naming requirements](../../storage/concepts/bucket.md#naming).
By default, a bucket with a dot in the name is only available over HTTP. To provide HTTPS support for your bucket, [upload your own security certificate](../../storage/operations/hosting/certificate.md) to {{ objstorage-name }}.
@@ -73,16 +73,16 @@ The infrastructure support cost includes:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder containing your bucket.
- 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_kms }}**.
- 1. Click **{{ ui-key.yacloud.kms.symmetric-keys.button_empty-create }}** and set the key attributes:
+ 1. In the [management console]({{ link-console-main }}), select the folder containing your bucket.
+ 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_kms }}**.
+ 1. Click **{{ ui-key.yacloud.kms.symmetric-keys.button_empty-create }}** and set the key attributes:
- * Any name and optional description.
- * Encryption algorithm, e.g., AES-256.
- * [Rotation](../../kms/concepts/index.md#rotation) period (how often to change key versions).
- * Click **{{ ui-key.yacloud.common.create }}**.
+ * Any name and optional description.
+ * Encryption algorithm, e.g., AES-256.
+ * [Rotation](../../kms/concepts/index.md#rotation) period (how often to change key versions).
+ * Click **{{ ui-key.yacloud.common.create }}**.
- The key is created together with its first version: click the key in the list to open a page with its attributes.
+ The key is created together with its first version: click the key in the list to open a page with its attributes.
{% endlist %}
@@ -92,13 +92,14 @@ The infrastructure support cost includes:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the bucket for which you want to configure encryption.
- 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_encryption }}**.
- 1. In the **{{ ui-key.yacloud.storage.bucket.encryption.field_key }}** field, select an existing key or create a new one:
+ 1. In the [management console]({{ link-console-main }}), select the bucket you want to configure encryption for.
+ 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_security }}**.
+ 1. Open the **{{ ui-key.yacloud.storage.bucket.switch_encryption }}** tab.
+ 1. In the **{{ ui-key.yacloud.storage.bucket.encryption.field_key }}** field, select an existing key or create a new one:
- {% include [storage-create-kms](../../storage/_includes_service/storage-create-kms.md) %}
+ {% include [storage-create-kms](../../storage/_includes_service/storage-create-kms.md) %}
- 1. Click **{{ ui-key.yacloud.storage.bucket.encryption.button_save }}**.
+ 1. Click **{{ ui-key.yacloud.storage.bucket.encryption.button_save }}**.
{% endlist %}
@@ -108,14 +109,14 @@ The infrastructure support cost includes:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where you want to create a service account.
- 1. At the top of the screen, go to the **{{ ui-key.yacloud.iam.folder.switch_service-accounts }}** tab.
- 1. Click **{{ ui-key.yacloud.iam.folder.service-accounts.button_add }}**.
- 1. Enter a name for the service account. The naming requirements are as follows:
+ 1. In the [management console]({{ link-console-main }}), select the folder where you want to create a service account.
+ 1. At the top of the screen, go to the **{{ ui-key.yacloud.iam.folder.switch_service-accounts }}** tab.
+ 1. Click **{{ ui-key.yacloud.iam.folder.service-accounts.button_add }}**.
+ 1. Enter a name for the service account. The naming requirements are as follows:
{% include [name-format](../../_includes/name-format.md) %}
- 1. Click **{{ ui-key.yacloud.iam.folder.service-account.popup-robot_button_add }}**.
+ 1. Click **{{ ui-key.yacloud.iam.folder.service-account.popup-robot_button_add }}**.
{% endlist %}
@@ -125,106 +126,106 @@ The infrastructure support cost includes:
- CLI {#cli}
- 1. Assign the [audit-trails.viewer](../../audit-trails/security/#roles) role to the folder whose resources will be polled for audit logs:
-
+ 1. Assign the [audit-trails.viewer](../../audit-trails/security/#roles) role to the folder whose resources will be polled for audit logs:
+
```
yc resource-manager folder add-access-binding \
--role audit-trails.viewer \
--id \
--service-account-id
```
-
+
Where:
-
- * `--role`: Role being assigned.
+
+ * `--role`: Role you want to assign.
* `--id`: ID of the folder from which audit logs will be collected.
* `--service-account-id`: Service account ID.
-
- 1. Assign the [storage.uploader](../../storage/security/#storage-uploader) role to the folder to host the trail:
-
+
+ 1. Assign the [storage.uploader](../../storage/security/#storage-uploader) role to the folder to host the trail:
+
```
yc resource-manager folder add-access-binding \
--role storage.uploader \
--id \
--service-account-id
```
-
+
Where:
-
- * `--role`: Role being assigned.
+
+ * `--role`: Role you want to assign.
* `--id`: ID of the folder to host the trail.
* `--service-account-id`: Service account ID.
-
- 1. Assign the [kms.keys.encrypterDecrypter](../../kms/security/#service) role to the encryption key:
-
+
+ 1. Assign the [kms.keys.encrypterDecrypter](../../kms/security/#service) role to the encryption key:
+
```
yc kms symmetric-key add-access-binding \
--role kms.keys.encrypterDecrypter \
--id \
--service-account-id
```
-
+
Where:
-
- * `--role`: Role being assigned.
+
+ * `--role`: Role you want to assign.
* `--id`: KMS key ID.
* `--service-account-id`: Service account ID.
-
+
{% endlist %}
## Create a trail {#create-trail}
To create the trail, make sure you have the following roles:
-* `iam.serviceAccounts.user` for the service account.
-* `audit-trails.editor` for the folder to host the trail.
-* `audit-trails.viewer` for the folder from which audit logs will be collected.
-* `storage.viewer` for the bucket or folder.
+ * `iam.serviceAccounts.user` for the service account.
+ * `audit-trails.editor` for the folder to host the trail.
+ * `audit-trails.viewer` for the folder to collect audit logs from.
+ * `storage.viewer` for the bucket or folder.
{% list tabs group=instructions %}
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where you want to create the trail.
- 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_audit-trails }}**.
- 1. Click **{{ ui-key.yacloud.audit-trails.button_create-trail }}** and specify:
-
- * **{{ ui-key.yacloud.common.name }}**: Name of the trail being created.
- * **{{ ui-key.yacloud.common.description }}**: Description of the trail (optional).
+ 1. In the [management console]({{ link-console-main }}), select the folder where you want to create the trail.
+ 1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_audit-trails }}**.
+ 1. Click **{{ ui-key.yacloud.audit-trails.button_create-trail }}** and specify:
- 1. Under **{{ ui-key.yacloud.audit-trails.label_destination }}**, configure the destination object:
+ * **{{ ui-key.yacloud.common.name }}**: Name of the new trail.
+ * **{{ ui-key.yacloud.common.description }}**: Trail description (optional).
- * **{{ ui-key.yacloud.audit-trails.label_destination }}**: `{{ ui-key.yacloud.audit-trails.label_objectStorage }}`.
- * **{{ ui-key.yacloud.audit-trails.label_bucket }}**: Name of the [bucket](../../storage/operations/buckets/create.md) to which you want to upload audit logs.
- * **{{ ui-key.yacloud.audit-trails.label_object-prefix }}**: Optional parameter used in the [full name](../../audit-trails/concepts/format.md#log-file-name) of the audit log file.
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_destination }}**, configure the destination object:
- {% include [note-bucket-prefix](../../_includes/audit-trails/note-bucket-prefix.md) %}
+ * **{{ ui-key.yacloud.audit-trails.label_destination }}**: `{{ ui-key.yacloud.audit-trails.label_objectStorage }}`.
+ * **{{ ui-key.yacloud.audit-trails.label_bucket }}**: Name of the [bucket](../../storage/operations/buckets/create.md) to which you want to upload audit logs.
+ * **{{ ui-key.yacloud.audit-trails.label_object-prefix }}**: Optional parameter used in the [full name](../../audit-trails/concepts/format.md#log-file-name) of the audit log file.
+
+ {% include [note-bucket-prefix](../../_includes/audit-trails/note-bucket-prefix.md) %}
* **{{ ui-key.yacloud.audit-trails.title_kms-key }}**: Specify the encryption key the bucket is [encrypted](../../storage/concepts/encryption.md) with.
+
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_service-account }}**, select the service account that the trail will use to upload audit log files to the bucket.
- 1. Under **{{ ui-key.yacloud.audit-trails.label_service-account }}**, select the service account that the trail will use to upload audit log files to the bucket.
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_path-filter-section }}**, configure the collection of management event audit logs:
- 1. Under **{{ ui-key.yacloud.audit-trails.label_path-filter-section }}**, configure the collection of management event audit logs:
+ * **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}**: Select `{{ ui-key.yacloud.common.enabled }}`.
+ * **{{ ui-key.yacloud.audit-trails.label_resource-type }}**: Select `{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}`.
+ * **{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}**: Automatically populated field containing the name of the current folder.
- * **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}**: Select `{{ ui-key.yacloud.common.enabled }}`.
- * **{{ ui-key.yacloud.audit-trails.label_resource-type }}**: Select `{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}`.
- * **{{ ui-key.yacloud.audit-trails.label_resource-manager.folder }}**: Automatically populated field containing the name of the current folder.
+ 1. Under **{{ ui-key.yacloud.audit-trails.label_event-filter-section }}**, select `{{ ui-key.yacloud.common.disabled }}` in the **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}** field.
- 1. Under **{{ ui-key.yacloud.audit-trails.label_event-filter-section }}**, select `{{ ui-key.yacloud.common.disabled }}` in the **{{ ui-key.yacloud.audit-trails.label_collecting-logs }}** field.
+ 1. Click **{{ ui-key.yacloud.common.create }}**.
- 1. Click **{{ ui-key.yacloud.common.create }}**.
-
- {% note warning %}
-
- The solution will delete the logs from the bucket after they are exported to Splunk. If you need to keep the logs in the bucket, create a separate bucket and trail.
-
- {% endnote %}
+ {% note warning %}
+
+ The solution will delete the logs from the bucket after they are exported to Splunk. If you need to keep the logs in the bucket, create a separate bucket and trail.
+
+ {% endnote %}
{% endlist %}
## Set up Splunk for import {#prepare-splunk}
-Enable `HTTPEventCollector` and get an `Event Collector` token by following this [guide](https://docs.splunk.com/Documentation/SplunkCloud/8.2.2105/Data/UsetheHTTPEventCollector#Configure_HTTP_Event_Collector_on_Splunk_Cloud_Platform).
+Enable `HTTPEventCollector` and follow this [guide](https://docs.splunk.com/Documentation/SplunkCloud/8.2.2105/Data/UsetheHTTPEventCollector#Configure_HTTP_Event_Collector_on_Splunk_Cloud_Platform) to get the `Event Collector` token.
## Set up a NAT gateway for the subnet with the intermediate VM {#enable-nat}
@@ -232,18 +233,18 @@ Enable `HTTPEventCollector` and get an `Event Collector` token by following this
- Management console {#console}
- 1. Create a NAT gateway:
+ 1. Create a NAT gateway:
1. In the [management console]({{ link-console-main }}), select the folder containing the subnet for the intermediate VM.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_vpc }}**.
1. In the left-hand panel, select **{{ ui-key.yacloud.vpc.switch_gateways }}**.
1. Click **{{ ui-key.yacloud.common.create }}**.
1. Enter a name for the gateway. The naming requirements are as follows:
- {% include [name-format](../../_includes/name-format.md) %}
-
+ {% include [name-format](../../_includes/name-format.md) %}
+
1. The default gateway type is `{{ ui-key.yacloud.vpc.gateways.value_gateway-type-egress-nat }}`.
1. Click **{{ ui-key.yacloud.common.save }}**.
- 1. Create a route table:
+ 1. Create a route table:
1. In the left-hand panel, select ![image](../../_assets/console-icons/route.svg) **{{ ui-key.yacloud.vpc.network.switch_route-table }}**.
1. Click **{{ ui-key.yacloud.common.create }}** to [add](../../vpc/operations/static-route-create.md) a new table, or select an existing one.
1. Click **{{ ui-key.yacloud.vpc.route-table-form.label_add-static-route }}**.
@@ -251,9 +252,9 @@ Enable `HTTPEventCollector` and get an `Event Collector` token by following this
1. In the **{{ ui-key.yacloud.vpc.add-static-route.value_gateway }}** field, select the NAT gateway you created. The destination prefix will be propagated automatically.
1. Click **{{ ui-key.yacloud.vpc.add-static-route.button_add }}**.
1. Click **{{ ui-key.yacloud.vpc.route-table.edit.button_edit }}**.
- 1. Link the route table to the subnet where you want to deploy the intermediate VM, to forward its traffic via the NAT gateway:
+ 1. Link the route table to the subnet where you want to deploy the intermediate VM, to forward its traffic via the NAT gateway:
1. In the left-hand panel, select ![image](../../_assets/console-icons/nodes-right.svg) **{{ ui-key.yacloud.vpc.switch_networks }}**.
- 1. In the required subnet row, click ![image](../../_assets/console-icons/ellipsis.svg).
+ 1. In the row with the subnet you need, click ![image](../../_assets/console-icons/ellipsis.svg).
1. In the menu that opens, select **{{ ui-key.yacloud.vpc.subnetworks.button_action-add-route-table }}**.
1. In the window that opens, select the created table from the list.
1. Click **{{ ui-key.yacloud.vpc.subnet.add-route-table.button_add }}**.
@@ -266,54 +267,54 @@ Enable `HTTPEventCollector` and get an `Event Collector` token by following this
- {{ TF }} {#tf}
- 1. {% include [terraform-install](../../_includes/terraform-install.md) %}
- 1. Clone a [repository](https://github.com/yandex-cloud-examples/yc-export-auditlogs-to-splunk) from [{{ yandex-cloud }} Security Solution Library](https://github.com/yandex-cloud-examples/yc-security-solutions-library):
-
- ```
- git clone https://github.com/yandex-cloud-examples/yc-export-auditlogs-to-splunk.git
- ```
-
- 1. Create a subfolder in `/yc-export-auditlogs-to-splunk/terraform/` and go there.
- 1. Create a configuration file to invoke the `yc-splunk-trail` module:
-
- ```
- module "yc-splunk-trail" {
- source = "../modules/yc-splunk-trail/"
- folder_id =
- splunk_token =
- splunk_server = :8088
- bucket_name =
- bucket_folder =
- sa_id =
- coi_subnet_id =
- }
- ```
- Where:
-
- * `folder_id`: Folder ID.
- * `splunk_token`: Event Collector token retrieved from Splunk.
- * `splunk_server`: Address of your Splunk server as `https://`.
- * `bucket_name`: Bucket name.
- * `bucket_folder`: Name of the root folder in the bucket.
- * `sa_id`: Service account ID.
- * `coi_subnet_id`: ID of the subnet where you set up the NAT gateway.
-
- 1. Make sure that the configuration files are correct:
-
- ```
- terraform plan
- ```
-
- If the configuration is described correctly, the terminal will display a list of created resources and their parameters. If the configuration contains any errors, {{ TF }} will point them out.
-
- 1. Deploy cloud resources.
- 1. If the configuration does not contain any errors, run this command:
-
- ```
- terraform apply
- ```
-
- 1. Confirm resource creation: enter `yes` in the terminal and press **Enter**.
+ 1. {% include [terraform-install](../../_includes/terraform-install.md) %}
+ 1. Clone a [repository](https://github.com/yandex-cloud-examples/yc-export-auditlogs-to-splunk) from [{{ yandex-cloud }} Security Solution Library](https://github.com/yandex-cloud-examples/yc-security-solutions-library):
+
+ ```
+ git clone https://github.com/yandex-cloud-examples/yc-export-auditlogs-to-splunk.git
+ ```
+
+ 1. Create a subfolder in `/yc-export-auditlogs-to-splunk/terraform/` and go there.
+ 1. Create a configuration file to invoke the `yc-splunk-trail` module:
+
+ ```
+ module "yc-splunk-trail" {
+ source = "../modules/yc-splunk-trail/"
+ folder_id =
+ splunk_token =
+ splunk_server = :8088
+ bucket_name =
+ bucket_folder =
+ sa_id =
+ coi_subnet_id =
+ }
+ ```
+ Where:
+
+ * `folder_id`: Folder ID.
+ * `splunk_token`: Event Collector token retrieved from Splunk.
+ * `splunk_server`: Address of your Splunk server as `https://`.
+ * `bucket_name`: Bucket name.
+ * `bucket_folder`: Name of the root folder in the bucket.
+ * `sa_id`: Service account ID.
+ * `coi_subnet_id`: ID of the subnet where you set up the NAT gateway.
+
+ 1. Make sure that the configuration files are correct:
+
+ ```
+ terraform plan
+ ```
+
+ If the configuration is described correctly, the terminal will display a list of created resources and their parameters. If the configuration contains any errors, {{ TF }} will point them out.
+
+ 1. Deploy cloud resources.
+ 1. If the configuration does not contain any errors, run this command:
+
+ ```
+ terraform apply
+ ```
+
+ 1. Confirm resource creation: enter `yes` in the terminal and press **Enter**.
{% endlist %}
@@ -325,7 +326,7 @@ Enable `HTTPEventCollector` and get an `Event Collector` token by following this
index="main" authentication.subject_type="SERVICE_ACCOUNT" | stats count by event_type
```
-1. To visualize the results, select the **Visualization** tab and select a suitable format (`LineChart`, `PieChart`, and so on):
+1. To visualize the results, go to the **Visualization** tab and select a suitable format (`LineChart`, `PieChart`, etc.):
Data visualization example:
diff --git a/en/backup/backup/api-ref/Backup/list.md b/en/backup/backup/api-ref/Backup/list.md
index c6e2c1d5b87..d078e8b7193 100644
--- a/en/backup/backup/api-ref/Backup/list.md
+++ b/en/backup/backup/api-ref/Backup/list.md
@@ -59,6 +59,13 @@ Supported parameters are:
Supported logic operators:
* AND ||
+|| type | **enum** (ResourceType)
+
+Type of resource. Could be compute VM or baremetal server.
+
+- `RESOURCE_TYPE_UNSPECIFIED`
+- `COMPUTE`: Resource is Compute Cloud VM
+- `BMS`: Resource is baremetal server ||
|#
## ArchiveParameters {#yandex.cloud.backup.v1.ListBackupsRequest.ArchiveParameters}
diff --git a/en/backup/backup/api-ref/grpc/Backup/list.md b/en/backup/backup/api-ref/grpc/Backup/list.md
index 0d85e6b1390..b31a9b32a37 100644
--- a/en/backup/backup/api-ref/grpc/Backup/list.md
+++ b/en/backup/backup/api-ref/grpc/Backup/list.md
@@ -30,7 +30,8 @@ List backups using filters.
"policyId": "string",
// end of the list of possible fields
"orderBy": "string",
- "filter": "string"
+ "filter": "string",
+ "type": "ResourceType"
}
```
@@ -78,6 +79,13 @@ Supported parameters are:
Supported logic operators:
* AND ||
+|| type | enum **ResourceType**
+
+Type of resource. Could be compute VM or baremetal server.
+
+- `RESOURCE_TYPE_UNSPECIFIED`
+- `COMPUTE`: Resource is Compute Cloud VM
+- `BMS`: Resource is baremetal server ||
|#
## ArchiveParameters {#yandex.cloud.backup.v1.ListBackupsRequest.ArchiveParameters}
diff --git a/en/backup/concepts/index.md b/en/backup/concepts/index.md
index f0741f4ec48..60ba1aa7ea2 100644
--- a/en/backup/concepts/index.md
+++ b/en/backup/concepts/index.md
@@ -1,6 +1,10 @@
# {{ backup-full-name }} overview
-{{ backup-full-name }} is a service for creating backups and restoring {{ yandex-cloud }} resources and their data. Backup and recovery is available for [{{ compute-name }} VMs](../../compute/concepts/vm.md) VMs with [supported operating systems](vm-connection.md#os).
+{{ backup-full-name }} is a service for creating backups and restoring {{ yandex-cloud }} resources and their data. Backup and recovery is available for [{{ compute-name }}](../../compute/concepts/vm.md) VMs with [supported operating systems](vm-connection.md#os).
+
+{% include [baremetal-note](../../_includes/backup/baremetal-note.md) %}
+
+{% include [baremetal-note](../../_includes/backup/baremetal-note.md) %}
VM backups are application-consistent: they save not only the data stored on disks but also the data already sent but not yet fully written. This allows you to resume applications that were running at the time of creating a backup directly after recovering a VM. This is important for VMs forming a part of data storage systems, e.g., those hosting a DBMS.
diff --git a/en/backup/concepts/policy.md b/en/backup/concepts/policy.md
index b853c201e87..e80f9fa8df5 100644
--- a/en/backup/concepts/policy.md
+++ b/en/backup/concepts/policy.md
@@ -10,7 +10,7 @@ By default, VMs in {{ backup-name }} are not linked to any backup policies. To s
The backup policy specifies:
-* Backup frequency: By hour, day, week, or month. The time is provided for the [UTC±00:00](https://{{ lang }}.wikipedia.org/wiki/UTC±00:00) time zone.
+* Backup frequency: By hour, day, week, or month. All times are now [UTC±00:00](https://{{ lang }}.wikipedia.org/wiki/UTC±00:00).
* Backup type: Full or incremental. For more information, see [{#T}](backup.md#types).
* Settings for [storing backups](#retention).
diff --git a/en/backup/concepts/vm-connection.md b/en/backup/concepts/vm-connection.md
index 3d3248a4ee6..5c7e6e41ee2 100644
--- a/en/backup/concepts/vm-connection.md
+++ b/en/backup/concepts/vm-connection.md
@@ -2,6 +2,8 @@
To back up your [{{ compute-full-name }}](../../compute/) [VM](../../compute/concepts/vm.md) using {{ backup-name }}, you need to connect it to this service and set it up properly.
+{% include [baremetal-note](../../_includes/backup/baremetal-note.md) %}
+
To connect your VM to {{ backup-name }}, make sure it has one of the [supported operating systems](#os) installed. For more information on connecting VMs, see [this guide](../operations/index.md#connect-vm).
For the connection to work properly, assign a [service account](#sa) with the `backup.editor` role to your VM and configure [network access](#vm-network-access) for the VM.
@@ -10,7 +12,7 @@ After connecting to {{ backup-name }}, [add](../operations/policy-vm/attach-and-
{% include [vm-running](../../_includes/backup/vm-running.md) %}
-You can also link a policy to a virtual machine while creating it. Policy is linked asynchronously after you create and initialize a VM, as well as install and configure a backup agent. This may take up to 10-15 minutes. For more information, see [{#T}](../tutorials/vm-with-backup-policy/index.md).
+You can also link a policy to a virtual machine while creating it. A policy is linked asynchronously after you create and initialize a VM, as well as install and configure a backup agent. This may take up to 10-15 minutes. For more information, see [{#T}](../tutorials/vm-with-backup-policy/index.md).
## VM configuration requirements {#requirements}
diff --git a/en/backup/operations/refresh-connection.md b/en/backup/operations/refresh-connection.md
index c91c56f2ed4..a5210c93964 100644
--- a/en/backup/operations/refresh-connection.md
+++ b/en/backup/operations/refresh-connection.md
@@ -87,9 +87,9 @@ To avoid conflicts between the two VMs when making backups, update the outdated
1. In the [management console]({{ link-console-main }}), select the folder where {{ backup-name }} is connected.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_backup }}**.
- 1. On the ![machines](../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.backup.label_instances }}** tab, check that the list does not contain the outdated VM marked as ![irrelevant](../../_assets/console-icons/circle-info-fill.svg).
+ 1. On ![machines](../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.backup.label_instances }}** tab, check that the outdated VM is not listed with the ![irrelevant](../../_assets/console-icons/circle-info-fill.svg) label.
- If the outdated VM is still there, click ![image](../../_assets/console-icons/ellipsis.svg) next to it, select **{{ ui-key.yacloud.common.delete }}**, and confirm the deletion.
+ If the VM is still there, click ![image](../../_assets/console-icons/ellipsis.svg), select **{{ ui-key.yacloud.common.delete }}** and confirm deletion.
{% endlist %}
diff --git a/en/backup/pricing.md b/en/backup/pricing.md
index 61693cc2bce..53027039a13 100644
--- a/en/backup/pricing.md
+++ b/en/backup/pricing.md
@@ -18,7 +18,7 @@ The cost of {{ backup-name }} depends on the number of protected VMs and the tot
You start paying for a VM in {{ backup-name }} as soon as you link it to a [backup policy](./concepts/policy.md). Regardless of the VM status, you will be charged for the VM until you unlink it from the policy.
-If you delete a VM in [{{ compute-full-name }}](../compute/) using the [management console]({{ link-console-main }}), this will unlink such a VM from all policies. If you delete a VM using the CLI, {{ TF }}, or API, it will not be unlinked from policies automatically. You need to unlink it yourself.
+If you delete a VM in [{{ compute-full-name }}](../compute/) using the [management console]({{ link-console-main }}), this will also unlink such a VM from all policies. If you delete a VM using the CLI, {{ TF }}, or API, it will not be unlinked from policies automatically. You need to unlink it yourself.
The minimum billing unit is 1 VM per hour.
diff --git a/en/backup/quickstart.md b/en/backup/quickstart.md
index 7990b99ce0f..c10c1337985 100644
--- a/en/backup/quickstart.md
+++ b/en/backup/quickstart.md
@@ -15,6 +15,8 @@ To get started with {{ backup-name }}:
If you no longer need the resources you created, [delete them](#clear-out).
+{% include [baremetal-note](../_includes/backup/baremetal-note.md) %}
+
## Prepare your cloud {#before-you-begin}
{% include [before-you-begin](../_tutorials/_tutorials_includes/before-you-begin.md) %}
@@ -138,19 +140,12 @@ To activate the service, you need _at least_ the `backup.editor` [role](security
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder you want to create a VM with a {{ backup-name }} connection in.
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../resource-manager/concepts/resources-hierarchy.md#folder) where you want to create a VM with a {{ backup-name }} connection.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
- 1. In the left-hand panel, select ![image](../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}** and click **{{ ui-key.yacloud.compute.instances.button_create }}**.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
-
- 1. Enter the VM name. The naming requirements are as follows:
-
- {% include [name-format](../_includes/name-format.md) %}
-
- 1. Select an [availability zone](../overview/concepts/geo-scope.md) to place your VM in.
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select one of the [supported operating systems](./concepts/vm-connection.md#os), e.g., [Ubuntu 20.04](/marketplace/products/yc/ubuntu-20-04-lts).
-
+ 1. In the left-hand panel, select ![image](../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
+ 1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select an [image](../compute/concepts/image.md) with a [supported OS](./concepts/vm-connection.md#os), e.g., [Ubuntu 20.04](/marketplace/products/yc/ubuntu-20-04-lts).
+ 1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select an [availability zone](../overview/concepts/geo-scope.md) to place your VM in.
1. Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}** and **{{ ui-key.yacloud.compute.instances.create.section_platform }}**, set the preferred VM parameters.
{% include [vm-requirements](../_includes/backup/vm-requirements.md) %}
@@ -162,19 +157,18 @@ To activate the service, you need _at least_ the `backup.editor` [role](security
Instead of assigning a public IP address to your VM, you can link the subnet hosting this VM to a [route table](../vpc/concepts/routing.md#rt-vm) allowing internet access via a [NAT gateway](../vpc/concepts/gateways.md) or a custom router.
- 1. In the **{{ ui-key.yacloud.component.compute.network-select.field_security-groups }}** field, select the security group you [configured previously](#sg-setup).
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data for access to the VM:
+ 1. In the **{{ ui-key.yacloud.component.compute.network-select.field_security-groups }}** field, select the security group you [configured earlier](#sg-setup).
- 1. Select the service account you [created earlier](#prepare-service-account).
- 1. Enter the username into the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
- 1. In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the public key file.
+ 1. {% include [section-access](../_includes/compute/create/section-access.md) %}
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name:
- You will need to create a key pair for the SSH connection yourself; see [{#T}](../compute/operations/vm-connect/ssh.md#creating-ssh-keys) for details.
+ {% include [name-format](../_includes/name-format.md) %}
1. Under **{{ ui-key.yacloud.compute.instances.create.section_additional }}**:
- {% include [backup-enable](../_includes/compute/backup-enable.md) %}
+ 1. Select the service account you [created earlier](#prepare-service-account).
+ 1. Enable **{{ ui-key.yacloud.compute.instances.create.section_backup }}**.
+ 1. Optionally, select a backup policy or click **{{ ui-key.yacloud.common.create }}** to [create](operations/policy-vm/create.md) a new one.
1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
diff --git a/en/backup/toc.yaml b/en/backup/toc.yaml
index ab0e1d7b629..855013fee82 100644
--- a/en/backup/toc.yaml
+++ b/en/backup/toc.yaml
@@ -53,6 +53,8 @@ items:
href: operations/get-stats.md
- name: Tutorials
items:
+ - name: Connecting BareMetal to Cloud Backup
+ href: tutorials/backup-baremetal.md
- name: Linking a backup policy to a VM automatically
items:
- name: Overview
diff --git a/en/backup/tutorials/backup-baremetal.md b/en/backup/tutorials/backup-baremetal.md
new file mode 100644
index 00000000000..beac7e91bff
--- /dev/null
+++ b/en/backup/tutorials/backup-baremetal.md
@@ -0,0 +1,317 @@
+# Connecting a {{ baremetal-full-name }} server to {{ backup-full-name }}
+
+In {{ backup-name }}, you can configure [{{ baremetal-name }} server backup](../../baremetal/concepts/servers.md).
+
+_{{ baremetal-name }} and the server backup feature will be released at the [Preview stage](../../overview/concepts/launch-stages.md) in Q4 2024._
+
+The following server operating systems are supported: {#os-support}
+* Ubuntu 22.04 LTS
+* Ubuntu 20.04 LTS
+* Ubuntu 18.04 LTS
+* Ubuntu 16.04 LTS
+
+To connect a server to {{ backup-full-name }}:
+1. [Prepare your cloud](#before-you-begin).
+1. [Create a service account](#prepare-service-account).
+1. [Activate {{ backup-name }}](#activate-provider).
+1. [Lease a test server](#server-lease).
+1. [Connect to the server](#server-connect).
+1. [Install a backup agent](#agent-install).
+1. [Link your server to a backup policy](#add-policy).
+1. [Take a backup of your server](#execute-policy).
+1. [Restore your server from a backup](#server-recovery).
+
+See also [How to cancel a lease and delete resources](#clear-out).
+
+## Prepare your cloud {#before-you-begin}
+
+{% include [before-you-begin](../../_tutorials/_tutorials_includes/before-you-begin.md) %}
+
+{% include [include](../../_includes/cli-install.md) %}
+
+{% include [default-catalogue](../../_includes/default-catalogue.md) %}
+
+### Required paid resources {#paid-resources}
+
+Currently, {{ baremetal-name }} and the server backup feature are offered at no charge.
+
+## Create a service account {#prepare-service-account}
+
+{% list tabs group=instructions %}
+
+- Management console {#console}
+
+ 1. In the [management console]({{ link-console-main }}), select the folder you want to lease a {{ baremetal-name }} server in.
+ 1. At the top of the page, go to the **{{ ui-key.yacloud.iam.folder.switch_service-accounts }}** tab.
+ 1. Click **{{ ui-key.yacloud.iam.folder.service-accounts.button_add }}**.
+ 1. Enter a name for the [service account](../../iam/concepts/users/service-accounts.md). The name format requirements are as follows:
+
+ {% include [name-format](../../_includes/name-format.md) %}
+
+ 1. Click ![plus-sign](../../_assets/console-icons/plus.svg) **{{ ui-key.yacloud.iam.folder.service-account.label_add-role }}** and select the `backup.editor` [role](../security/index.md#backup-editor).
+ 1. Click **{{ ui-key.yacloud.iam.folder.service-account.popup-robot_button_add }}**.
+ 1. To select the service account you created earlier, click the row with its name.
+ 1. In the top panel, click **{{ ui-key.yacloud.iam.folder.service-account.overview.button_create-key-popup }}**.
+ 1. Select **{{ ui-key.yacloud.iam.folder.service-account.overview.button_create_key }}**.
+ 1. Select an encryption algorithm and click **{{ ui-key.yacloud.iam.folder.service-account.overview.popup-key_button_create }}**.
+ 1. In the window that opens, click **{{ ui-key.yacloud.iam.folder.service-account.overview.action_download-keys-file }}** and then click **{{ ui-key.yacloud.iam.folder.service-account.overview.popup-key_button_close }}**.
+
+ You will need the authorized key of the service account in later steps.
+
+{% endlist %}
+
+## Activate {{ backup-name }} {#activate-provider}
+
+To activate {{ backup-name }}, you need _at least_ the `backup.editor` [role](../security/index.md#backup-editor) for the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder) where you want to lease a server and connect it to {{ backup-name }}.
+
+{% list tabs group=instructions %}
+
+- Management console {#console}
+
+ 1. In the [management console]({{ link-console-main }}), select the folder where you want to lease a server and connect it to {{ backup-name }}.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_backup }}**.
+ 1. If you have not activated {{ backup-name }} yet, click **{{ ui-key.yacloud.backup.button_action-activate }}**.
+
+ If there is no **{{ ui-key.yacloud.backup.button_action-activate }}** button, {{ backup-name }} is already activated. Proceed to the next step.
+
+{% endlist %}
+
+After activation, the system automatically creates the following backup policies:
+* `Default daily`: Daily incremental backup with the last 15 backups retained.
+* `Default weekly`: Weekly incremental backup with the last 15 backups retained.
+* `Default monthly`: Monthly incremental backup with the last 15 backups retained.
+
+## Lease a test server {#server-lease}
+
+If you are already leasing a server with an [appropriate OS](#os-support), go to [Connect to the server](#server-connect). Make sure to check the [network permissions](#ip-access) you need to configure on the server.
+
+{% list tabs group=instructions %}
+
+- Management console {#console}
+
+ 1. In the [management console]({{ link-console-main }}), select the folder you want to lease a server in.
+ 1. In the list of services, select **{{ baremetal-name }}**.
+ 1. Click **Lease server**.
+ 1. Select the `{{ region-id }}-m` [availability zone](../../overview/concepts/geo-scope.md).
+ 1. Select the `{{ region-id }}-m3` pool.
+ 1. Under **{{ ui-key.yacloud.baremetal.title_section-server-config }}**:
+
+ 1. Select the `BA-i103-S-10G` server configuration.
+ 1. Configure the disk layout:
+
+ 1. Click **{{ ui-key.yacloud.baremetal.action_disk-layout-settings }}**.
+ 1. Keep the default layout and click **{{ ui-key.yacloud.common.save }}**.
+
+ 1. Under **{{ ui-key.yacloud.baremetal.title_section-server-product }}**, select the `Ubuntu 22.04 LTS` image.
+ 1. Under **{{ ui-key.yacloud.baremetal.title_section-lease-conditions }}**, specify:
+
+ 1. **{{ ui-key.yacloud.baremetal.field_server-count }}**: `1`
+ 1. **{{ ui-key.yacloud.baremetal.field_server-lease-duration }}**: `{{ ui-key.yacloud.baremetal.label_one-month-duration }}`
+
+ 1. Under **{{ ui-key.yacloud.baremetal.title_section-server-network-settings }}**:
+
+ 1. Click ![image](../../_assets/console-icons/plus.svg) **{{ ui-key.yacloud.baremetal.action-create-subnetwork }}**.
+ 1. Optionally, if you need to enable DHCP to assign IP addresses automatically, use the **Routing settings** section.
+ 1. Enter `bm-subnetwork` for the subnet name and click **Create subnet**.
+ 1. In the **{{ ui-key.yacloud.baremetal.field_needed-public-ip }}** field, select `{{ ui-key.yacloud.baremetal.label_public-ip-auto }}`.
+
+ For the {{ backup-name }} agent to exchange data with the [backup provider](../concepts/index.md#providers) servers, make sure the server has network access to the IP addresses of {{ backup-name }} resources based on the following table: {#ip-access}
+
+ {% include [outgoing traffic](../../_includes/backup/outgoing-rules.md) %}
+
+ 1. Under **{{ ui-key.yacloud.baremetal.title_server-access }}**:
+
+ 1. Generate a password for the root user. To do this, click **Generate** next to the **{{ ui-key.yacloud.baremetal.field_password }}** field.
+
+ {% note warning %}
+
+ Once you lease a server, you will no longer be able to view the password. Make sure to save the password in a secure location right away.
+
+ {% endnote %}
+
+ 1. In the **{{ ui-key.yacloud.baremetal.field_ssh-public-key }}** field, paste the contents of the public key file. You need to [create](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) an SSH key pair yourself.
+
+ 1. Under **{{ ui-key.yacloud.baremetal.title_section-server-info }}**, enter the server **{{ ui-key.yacloud.baremetal.field_name }}**: `bm-server`.
+ 1. Click **Lease server**.
+
+{% endlist %}
+
+Save the server name and ID for use in the later steps.
+
+## Connect to the server {#server-connect}
+
+{% list tabs group=operating_system %}
+
+- KVM console {#console}
+
+ 1. In the [management console]({{ link-console-main }}), select the folder the server belongs to.
+ 1. In the list of services, select **{{ baremetal-name }}**.
+ 1. In the row with the server you need, click ![image](../../_assets/console-icons/ellipsis.svg) and select **Start KVM console**.
+ 1. In the window that opens, click **KVM console**.
+
+- Linux/macOS {#linux-macos}
+
+ To connect to a server, specify its public IP address, which you can find in the management console on the server page (the **{{ ui-key.yacloud.baremetal.field_needed-public-ip }}** field of **{{ ui-key.yacloud.baremetal.title_section-server-network-settings }}**).
+
+ 1. In the terminal, run this command:
+
+ ```bash
+ ssh root@
+ ```
+
+ If this is your first time connecting to the server, you will get an unknown host warning:
+
+ ```text
+ The authenticity of host '51.250.83.243 (51.250.83.243)' can't be established.
+ ED25519 key fingerprint is SHA256:6Mjv93NJDCaf/vu3NYwiLQK4tKI+4cfLtkd********.
+ This key is not known by any other names.
+ Are you sure you want to continue connecting (yes/no/[fingerprint])?
+ ```
+
+ 1. Type `yes` in the terminal and press **Enter**.
+ 1. Enter the password you specified when creating the server and press **Enter**.
+
+- Windows 10/11 {#windows}
+
+ To connect to a server, specify its public IP address, which you can find in the management console on the server page (the **{{ ui-key.yacloud.baremetal.field_needed-public-ip }}** field of **{{ ui-key.yacloud.baremetal.title_section-server-network-settings }}**).
+
+ Make sure the Windows account has read permissions for the folder containing the keys.
+
+ 1. To connect to the server, run the following command in the command line:
+
+ ```shell
+ ssh root@
+ ```
+
+ If this is your first time connecting to the server, you will get an unknown host warning:
+
+ ```text
+ The authenticity of host '89.169.132.223 (89.169.132.223)' can't be established.
+ ECDSA key fingerprint is SHA256:DfjfFB+in0q0MGi0HnqLNMdHssLfm1yRanB********.
+ Are you sure you want to continue connecting (yes/no/[fingerprint])?
+ ```
+
+ 1. Type `yes` in the terminal and press **Enter**.
+ 1. Enter the password you specified when creating the server and press **Enter**.
+
+{% endlist %}
+
+## Install a backup agent {#agent-install}
+
+1. Copy the file with the service account authorized key [you created earlier](#prepare-service-account) to the server. To do this, run this command _on the local machine_:
+
+ ```bash
+ scp \
+ root@:
+ ```
+
+1. Install the [{{ yandex-cloud }} CLI](../../cli/). To do this, run this command _on the server_:
+
+ ```bash
+ curl -sSL https://{{ s3-storage-host-cli }}{{ yc-install-path }} | bash
+ ```
+
+1. Authenticate in the {{ yandex-cloud }} CLI as a service account:
+
+ ```bash
+ yc config set service-account-key
+ ```
+
+1. Get an IAM token:
+
+ ```bash
+ yc iam create-token
+ ```
+
+1. Install the [jq](https://jqlang.github.io/jq/) utility:
+
+ ```bash
+ apt update && apt install -y jq
+ ```
+
+1. Install the backup agent:
+
+ ```bash
+ wget https://{{ s3-storage-host }}/backup-distributions/agent_installer_bms.sh && \
+ bash agent_installer_bms.sh \
+ -i "``-`date +%s`" \
+ -n "``-`date +%Y%m%d.%H%M%S`" \
+ -t "``"
+ ```
+
+ Wait for the message informing you the agent is registered:
+
+ ```text
+ ...
+ Agent registered with id D9CA44FC-716A-4B3B-A702-C6**********
+ ```
+
+## Link your server to a backup policy {#add-policy}
+
+1. Get a list of resources connected to {{ backup-name }}. To do this, run this command _on the local machine_:
+
+ ```bash
+ yc backup resource list
+ ```
+
+ The server connected to {{ backup-name }} will be displayed with `BMS` as its `TYPE`.
+
+ Save the server ID (`INSTANCE ID`).
+
+1. Get a list of backup policies:
+
+ ```bash
+ yc backup policy list
+ ```
+
+ Save the `ID` of the policy you want to link to the server.
+
+1. Link your server to a backup policy:
+
+ ```bash
+ yc backup policy apply \
+ --id \
+ --instance-ids=""
+ ```
+
+## Take a backup of your server {#execute-policy}
+
+To take a server backup at a time other than the scheduled time defined in a backup policy, run this command:
+
+```bash
+yc backup policy execute \
+ --id \
+ --instance-id
+```
+
+Wait for the operation to complete.
+
+Also, you can run the command in asynchronous mode using the `--async` parameter and track the backup process using the [yc backup resource list-tasks](../../cli/cli-ref/managed-services/backup/vm/list-tasks.md) command.
+
+## Restore your server from a backup {#server-recovery}
+
+1. Get a list of server backups:
+
+ ```bash
+ yc backup backup list \
+ --instance-id
+ ```
+
+ Save the backup `ID`.
+
+1. Restore your server from the backup:
+
+ ```bash
+ yc backup backup recover \
+ --source-backup-id="" \
+ --destination-instance-id=""
+ ```
+
+ Wait for the operation to complete.
+
+ Also, you can run the command in asynchronous mode using the `--async` parameter and track the backup process using the [yc backup resource list-tasks](../../cli/cli-ref/managed-services/backup/vm/list-tasks.md) command.
+
+## How to cancel a lease and delete resources {#clear-out}
+
+1. [Cancel](../../baremetal/operations/servers/server-lease-cancel.md) a {{ baremetal-name }} server lease.
+1. Delete the backup in {{ backup-name }} using the CLI.
diff --git a/en/billing/_includes/change-payment-docs.md b/en/billing/_includes/change-payment-docs.md
index 482e7720b45..1f7a255fd4c 100644
--- a/en/billing/_includes/change-payment-docs.md
+++ b/en/billing/_includes/change-payment-docs.md
@@ -2,15 +2,15 @@ Your request should contain:
{% list tabs group=customers %}
-- Individual entrepreneurs {#entrepreneurs}
-
- * Scanned copy of the individual entrepreneur register record sheet or a scanned copy of your registration with the tax office as an individual entrepreneur
- * [Billing account](../../billing/concepts/billing-account.md) ID
-
- Businesses {#businesses}
* Full company name
* Copy of the minutes or resolution on the appointment of the general director
* [Billing account](../../billing/concepts/billing-account.md) ID
+- Individual entrepreneurs {#entrepreneurs}
+
+ * Scanned copy of the individual entrepreneur register record sheet or a scanned copy of your registration with the tax office as an individual entrepreneur
+ * [Billing account](../../billing/concepts/billing-account.md) ID
+
{% endlist %}
\ No newline at end of file
diff --git a/en/billing/_includes/change-payment-method.md b/en/billing/_includes/change-payment-method.md
index 8b137891791..29af97332e2 100644
--- a/en/billing/_includes/change-payment-method.md
+++ b/en/billing/_includes/change-payment-method.md
@@ -1 +1,5 @@
+#### How do I change my payment method? {#payment-method}
+You can only [change](../operations/change-payment-method.md) your payment method if your billing account type is **{{ ui-key.yacloud_billing.billing.account.create-new.account-type_label_company }}**; in this case, along with bank card transfer, you can use [bank account transfer](../payment/payment-methods-business.md).
+
+If your billing account type is **{{ ui-key.yacloud_billing.billing.account.create-new.account-type_label_individual }}**, you cannot change your payment method.
\ No newline at end of file
diff --git a/en/billing/_includes/payment-amount.md b/en/billing/_includes/payment-amount.md
index d1a3c521ef0..4d68e36d7d6 100644
--- a/en/billing/_includes/payment-amount.md
+++ b/en/billing/_includes/payment-amount.md
@@ -1,7 +1,41 @@
The total amount debited depends on whether you used up your [grant](../concepts/bonus-account.md) and topped up your [personal account](../concepts/personal-account.md#balance) during the reporting period.
-
The write-off amount is calculated using the formula:
![image](../../_assets/billing/formula.png)
+
+{% list tabs %}
+
+- Example 1
+
+ The personal account balance at the beginning of the reporting period is 0 dollars.
+ The personal account was never topped up during the reporting period (0 dollars).
+ The grant amount is 10 dollars.
+ The billing threshold is 20 dollars.
+ In the middle of the reporting period, the established billing threshold is reached and the amount for consumed resources is 30 dollars.
+ Total amount: 30 - (0 + 0 + 10) = 20 (dollars).
+
+ In the middle of the reporting period, 20 dollars could be debited from the linked bank card.
+
+- Example 2
+
+ The personal account balance at the beginning of the reporting period is 0 dollars.
+ The personal account was never topped up during the reporting period (0 dollars).
+ The grant amount is 10 dollars.
+ At the end of the reporting period, the amount for consumed resources is 8 dollars.
+ The grant amount at the end of the reporting period is 2 dollars. The personal account balance has not changed.
+ At the beginning of the next reporting month, no funds will be debited from the linked bank card.
+
+- Example 3
+
+ The personal account balance at the beginning of the reporting period is 0 dollars.
+ The personal account was never topped up during the reporting period (0 dollars).
+ The grant amount is 10 dollars.
+ The billing threshold is 20 dollars.
+ At the end of the reporting period, the amount for consumed resources is 23 dollars. The billing threshold has not been reached and the grant has been fully spent.
+ Total amount: 23 - (0 + 0 + 10) = 13 (dollars).
+
+ At the beginning of the next reporting period, 13 dollars are debited from the linked bank card.
+
+{% endlist %}
diff --git a/en/billing/_includes/payment-card-validation.md b/en/billing/_includes/payment-card-validation.md
index c62f23df2bc..ddcaae9d504 100644
--- a/en/billing/_includes/payment-card-validation.md
+++ b/en/billing/_includes/payment-card-validation.md
@@ -1 +1 @@
-To verify your bank card, we will hold a small amount in your account. This amount will not be written off and will be released as soon as the verification is complete. The time required to release the money may vary from bank to bank.
+To verify your bank card, we will hold a small amount (USD 1.30) in your account. This amount will not be written off and will be released as soon as the verification is complete. The time required to release the money may vary from bank to bank.
diff --git a/en/billing/_includes/payment-methods.md b/en/billing/_includes/payment-methods.md
index c7c5baed2f3..199ff04674c 100644
--- a/en/billing/_includes/payment-methods.md
+++ b/en/billing/_includes/payment-methods.md
@@ -9,6 +9,7 @@ The method for crediting funds depends on your legal status ([billing account ty
- Businesses and individual entrepreneurs {#businesses}
- [Wire transfer](../payment/payment-methods-business.md)
-
+
+ - [Bank card transfer](../payment/payment-methods-card-business.md)
{% endlist %}
\ No newline at end of file
diff --git a/en/billing/api-ref/Customer/createResellerServed.md b/en/billing/api-ref/Customer/createResellerServed.md
index a2462e7001d..6cf74f89453 100644
--- a/en/billing/api-ref/Customer/createResellerServed.md
+++ b/en/billing/api-ref/Customer/createResellerServed.md
@@ -36,11 +36,12 @@ POST https://billing.{{ api-host }}/billing/v1/customers:createResellerServedCus
||Field | Description ||
|| resellerId | **string**
-Required field. ID of the reseller that customer will be associated with.
+Required field. ID of the reseller that customer will be associated with.
-Value must match either one of the two regular expressions:
-`^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\|[0-9a-f]{32})$`
-or `^[a-z][-a-zA-Z0-9.]{0,48}[a-zA-Z0-9]$`. ||
+Value must match either one of the three regular expressions:
+- `^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$`
+- `^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{32})$`
+- `^[a-z][-a-zA-Z0-9.]{0,48}[a-zA-Z0-9]$` ||
|| name | **string**
Required field. Name of the customer.
diff --git a/en/billing/api-ref/grpc/Customer/createResellerServed.md b/en/billing/api-ref/grpc/Customer/createResellerServed.md
index 123dad8e054..7357c415829 100644
--- a/en/billing/api-ref/grpc/Customer/createResellerServed.md
+++ b/en/billing/api-ref/grpc/Customer/createResellerServed.md
@@ -34,11 +34,12 @@ Creates new reseller-served customer.
||Field | Description ||
|| resellerId | **string**
-Required field. ID of the reseller that customer will be associated with.
+Required field. ID of the reseller that customer will be associated with.
-Value must match either one of the two regular expressions:
-`^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\|[0-9a-f]{32})$`
-or `^[a-z][-a-zA-Z0-9.]{0,48}[a-zA-Z0-9]$`. ||
+Value must match either one of the three regular expressions:
+- `^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$`
+- `^([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{32})$`
+- `^[a-z][-a-zA-Z0-9.]{0,48}[a-zA-Z0-9]$` ||
|| name | **string**
Required field. Name of the customer.
diff --git a/en/billing/concepts/bill.md b/en/billing/concepts/bill.md
index fc40126a41e..02f625eb4c5 100644
--- a/en/billing/concepts/bill.md
+++ b/en/billing/concepts/bill.md
@@ -23,7 +23,10 @@ Payment invoices can only be sent to the [billing account](billing-account.md) o
{% endnote %}
-Under Section 6 of the [offer]({{ billing-oferta-url }}), a Сustomer qualifying as a legal entity and not using a linked corporate bank card to top up their account must [generate a payment invoice](../operations/pay-the-bill.md#legal-entities) using the management console.
+
+A Сustomer qualifying as a legal entity and not using a linked corporate bank card to top up their account must [generate a payment invoice](../operations/pay-the-bill.md#legal-entities) using the management console. Depending on which company you signed the contract with, you can find more details in «Yandex Legal documents» for [Iron Hive doo Beograd (Serbia)](https://yandex.com/legal/cloud_customer_agreement/) or [Direct Cursus Technology L.L.C. (Dubai)](https://yandex.com/legal/cloud_customer_agreement_uae/).
+
+
A payment invoice is not a primary accounting document. There are no special legal requirements for drafting this document. In accounting, correct charges for services are made based on reports and tax invoices where all the required details are specified. A payment invoice is generated automatically and there is no way to change customer data.
## Payment invoice amount {#payment-amount}
diff --git a/en/billing/concepts/billing-account.md b/en/billing/concepts/billing-account.md
index 170e8ca3377..fe6ff66f4b1 100644
--- a/en/billing/concepts/billing-account.md
+++ b/en/billing/concepts/billing-account.md
@@ -35,8 +35,8 @@ To access the list of billing accounts, navigate to [**{{ billing-name }}**]({{
- Business account {#business}
* For residents of Russia and Kazakhstan and non-residents of Russia and Kazakhstan.
- * Businesses pay for resources they consume by bank transfer from the [corporate bank account](../payment/payment-methods-business.md).
- * Payments for resources are either made based on the [agreement](../concepts/contract.md) against [invoices](bill.md). For more information, see [Billing cycle for legal entities](../payment/billing-cycle-business.md).
+ * Businesses pay for resources they consume by bank transfer from the [corporate bank account](../payment/payment-methods-business.md) or using a [bank card](../payment/payment-methods-card-business.md).
+ * Payments for resources are either made based on the [agreement](../concepts/contract.md) against [invoices](bill.md) or debited automatically from the linked bank card. For more information, see [Billing cycle for legal entities](../payment/billing-cycle-business.md).
* New customers are eligible for a [trial period](trial-period.md).
{% endlist %}
diff --git a/en/billing/concepts/billing-threshold.md b/en/billing/concepts/billing-threshold.md
index 06e4492c009..51f9c8077a6 100644
--- a/en/billing/concepts/billing-threshold.md
+++ b/en/billing/concepts/billing-threshold.md
@@ -19,8 +19,6 @@ The billing threshold amount and the total arrears when you are blocked may be d
The billing threshold is only valid when you select a bank card as your payment method. If you do, when you reach your threshold, an attempt will be made to debit your card to cover what you owe.
-{% include [card-business-nonresidents](../../_includes/billing/card-business-nonresidents.md) %}
-
## Billing threshold amount {#amount}
The billing threshold amount is calculated individually and depends on a combination of factors, including:
diff --git a/en/billing/concepts/contract.md b/en/billing/concepts/contract.md
index 8ae40c08c7d..2d98a20f6e3 100644
--- a/en/billing/concepts/contract.md
+++ b/en/billing/concepts/contract.md
@@ -8,7 +8,7 @@
Once the offer has been accepted, both parties start acting under the agreement in accordance with the Civil Code of the Russian Federation. The agreement stipulates that you must pay for the resources consumed at the end of the reporting period. For more information, see [How to pay for resources](../payment/index.md).
-You can learn more about the terms of the agreement in [Yandex Legal documents]({{ billing-oferta-url }}?lang=en).
+You can learn more about the terms of the agreement in [Yandex Legal documents]({{ billing-oferta-url }}).
{% note info %}
@@ -33,7 +33,7 @@ Companies and individual entrepreneurs can sign a bilateral agreement. For this,
Once the offer has been accepted, both parties start acting under the agreement. The agreement stipulates that you must pay for the resources consumed at the end of the reporting period. For more information, see [How to pay for resources](../payment/index.md).
-You can learn more about the terms of the agreement in [Yandex Legal documents](https://yandex.com/legal/cloud_customer_agreement/?lang=en).
+Depending on which company you signed the contract with, you can review its terms in «Yandex Legal documents» for [Iron Hive doo Beograd (Serbia)](https://yandex.com/legal/cloud_customer_agreement/) or [Direct Cursus Technology L.L.C. (Dubai)](https://yandex.com/legal/cloud_customer_agreement_uae/).
## Agreement number {#id}
@@ -41,4 +41,4 @@ You can find the agreement number in {{ billing-name }} on the ![image](../../_a
## Agreement termination {#termination}
-After you [delete your billing account](../operations/delete-account.md), your agreement will be terminated. In this case, you do not have to notify Yandex.Cloud LLC, Cloud Services Kazakhstan LLP or Iron Hive doo Beograd (Serbia) of the termination.
+After you [delete your billing account](../operations/delete-account.md), your agreement will be terminated. In this case, you do not have to notify Yandex.Cloud LLC, Cloud Services Kazakhstan LLP, Iron Hive doo Beograd (Serbia) or Direct Cursus Technology L.L.C. (Dubai) of the termination.
diff --git a/en/billing/concepts/cvos.md b/en/billing/concepts/cvos.md
index 5310dd5caae..36e4ca84e22 100644
--- a/en/billing/concepts/cvos.md
+++ b/en/billing/concepts/cvos.md
@@ -58,7 +58,7 @@ See details of using and paying for your CVoS below.
4.2. If the actual volume exceeds the CVoS, the difference between the total volume and the CVoS will be additionally charged based on [standard prices](/prices). Go to step 5.
-1. At the beginning of the next billing period, your personal account balance and payments for the services are reviewed. Depending on your [billing account type](../concepts/billing-account.md#ba-types), you may get an invoice. For more information, see [Billing cycle for individuals](../../billing/payment/billing-cycle-individual.md) and [Billing cycle for businesses and individual entrepreneurs](../../billing/payment/billing-cycle-business.md).
+1. At the beginning of the next billing period, your personal account balance and payments for the services are reviewed. Depending on your [billing account type](../concepts/billing-account.md#ba-types), you may get an invoice or have your linked bank card debited. For more information, see [Billing cycle for individuals](../../billing/payment/billing-cycle-individual.md) and [Billing cycle for businesses and individual entrepreneurs](../../billing/payment/billing-cycle-business.md).
## Charged amount {#formula}
diff --git a/en/billing/concepts/glossary.md b/en/billing/concepts/glossary.md
index 867178c80eb..2610cf2f5c4 100644
--- a/en/billing/concepts/glossary.md
+++ b/en/billing/concepts/glossary.md
@@ -59,7 +59,7 @@ Billing account
For more information, refer to the [Billing account](billing-account.md) section for details.
Payer
-: Individual, individual entrepreneur, or business that pays for the {{ yandex-cloud }} services used. Basically, these are payment details used to register agreements and issue invoices.
+: Individual, individual entrepreneur, or business that pays for the {{ yandex-cloud }} services used. Basically, these are payment details used to register agreements, issue invoices, and debit the payer's bank card.
Trial period
: Opportunity to gain hands-on experience with {{ yandex-cloud }} without paying for the resources you consume. Only available for legal entities.
diff --git a/en/billing/concepts/personal-account.md b/en/billing/concepts/personal-account.md
index 6f082b4fd34..9c7448ba3b1 100644
--- a/en/billing/concepts/personal-account.md
+++ b/en/billing/concepts/personal-account.md
@@ -1,6 +1,10 @@
# Personal account
-A personal account is your unique {{ billing-name }} ID used to pay for resources throughout the term of your [agreement](contract.md). It holds the money you add to it via wire transfer (the method depends on your legal status).
+
+{% include [non-residents-functional-access](../../_includes/billing/non-residents-functional-access.md) %}
+
+
+A personal account is your unique {{ billing-name }} ID used to pay for resources throughout the term of your [agreement](contract.md). It holds the money you add to it via your bank card or wire transfer (the method depends on your legal status).
Your personal account money is used only if there are no [grants](bonus-account.md).
@@ -18,6 +22,7 @@ Upon activation of the paid version, your personal account balance will be zero
{% include [personal-account-balance](../_includes/personal-account-balance.md) %}
+Your balance can go negative due to the [billing threshold](billing-threshold.md) applied after you activate the paid version – and only if paying with a bank card.
We recommend that you [keep track](../operations/pay-the-bill.md) and maintain a positive balance at all times.
diff --git a/en/billing/concepts/reporting-period.md b/en/billing/concepts/reporting-period.md
index eabf62d55c9..3891b052efc 100644
--- a/en/billing/concepts/reporting-period.md
+++ b/en/billing/concepts/reporting-period.md
@@ -4,7 +4,7 @@ The reporting period is equal to one calendar month during which you are using {
At the beginning of each month, you are required to pay for the resources consumed during the previous period. If you are in arrears, your use of {{ yandex-cloud }} resources may be suspended. The [payment method](../payment/index.md) depends on your legal status ([billing account type](billing-account.md#ba-types)).
-On the last day of the month, [Yandex Balance](https://balance.yandex.com/) will generate [reporting documents](../payment/documents.md) for businesses and individual entrepreneurs.
+On the last day of the month, [Yandex Balance](https://balance.yandex.com/) will generate [reporting documents](../payment/documents.md) for businesses and individual entrepreneurs. If there is a bank card linked to your billing account, the system [calculates](../payment/payment-methods-card-business.md#payment-amount) the total amount due and debits it from that card.
Learn more about billing cycles:
* [For individuals](../payment/billing-cycle-individual.md)
diff --git a/en/billing/operations/change-data.md b/en/billing/operations/change-data.md
index ad4b2b39599..a849ef756c1 100644
--- a/en/billing/operations/change-data.md
+++ b/en/billing/operations/change-data.md
@@ -42,11 +42,12 @@ You can use [Yandex Balance](https://balance.yandex.ru/) to update payer's conta
## Changing a business or TIN {#change-legal-entity}
You cannot change a business or TIN in the billing account settings. If these details have changed:
-1. [Create](create-new-account.md) a billing account with new details by selecting **{{ ui-key.startrek.ui_components_page-admin_BillingAccountInfo.person-type-company }}** as the payer type.
+1. [Create](create-new-account.md) a billing account with new details by selecting **Legal entity or individual entrepreneur** as the payer type.
1. Wait until the billing account is activated to avoid downtime of resources.
1. Transfer all clouds from the old billing account to the new one. All you have to do is [link](pin-cloud.md) them to the new billing account.
##### See also
+* [Linking a different bank card](pin-card.md)
* [Changing the payment method](change-payment-method.md)
* [Configuring notifications](budgets.md)
\ No newline at end of file
diff --git a/en/billing/operations/change-payment-method.md b/en/billing/operations/change-payment-method.md
index a0774b53cd0..3b4f89c08be 100644
--- a/en/billing/operations/change-payment-method.md
+++ b/en/billing/operations/change-payment-method.md
@@ -1,19 +1,24 @@
-# Change payment method
+---
+title: How to change the payment method in {{ billing-name }}
+description: Follow this guide to change the payment method in {{ billing-name }}.
+---
-The payment method can only be changed for the billing account of the **{{ ui-key.yacloud_billing.billing.account.create-new.account-type_label_company }}**. You can use wire transfer instead of bank card payment.
+# Changing the payment method
+
+The payment method can only be changed for billing accounts of the **{{ ui-key.yacloud_billing.billing.account.create-new.account-type_label_company }}** type. You can use wire transfer instead of your bank card for payments.
To change the payment method:
-1. Draw up a request to change the payment method.
+1. Draw up a request to have your payment method changed.
{% include [change-payment-docs](../_includes/change-payment-docs.md) %}
-1. Send your request to [{{ billing-docs-email }}](mailto:{{ billing-docs-email }}). The request will be reviewed within three business days. Your {{ yandex-cloud }} account manager will notify you of the decision.
+1. Email your request to [{{ billing-docs-email }}](mailto:{{ billing-docs-email }}). The request will be reviewed within three business days. Your {{ yandex-cloud }} account manager will notify you of the decision.
{% note info %}
-Once your card is unlinked from your billing account, you will not be able to add a new one. You will only be able to [top up your billing account](../operations/pay-the-bill.md) using a [wire transfer (via a bank)](../payment/payment-methods-business.md).
+Once your card is unlinked from your billing account, you will not be able to link a new one. You will only be able to [top up your billing account](../operations/pay-the-bill.md) using a [wire transfer (via a bank)](../payment/payment-methods-business.md).
{% endnote %}
diff --git a/en/billing/operations/delete-account.md b/en/billing/operations/delete-account.md
index a9dfa401df5..51e348cfd6a 100644
--- a/en/billing/operations/delete-account.md
+++ b/en/billing/operations/delete-account.md
@@ -23,7 +23,7 @@ To delete a {{ yandex-cloud }} billing account you no longer need:
{% note info %}
-After you delete your billing account, your agreement with Yandex.Cloud LLC, Cloud Services Kazakhstan LLP, or Iron Hive doo Beograd (Serbia) will be terminated accordingly.
+After you delete your billing account, your agreement with Yandex.Cloud LLC, Cloud Services Kazakhstan LLP, Iron Hive doo Beograd (Serbia) or Direct Cursus Technology L.L.C. (Dubai) will be terminated accordingly.
{% endnote %}
diff --git a/en/billing/operations/get-folder-report.md b/en/billing/operations/get-folder-report.md
index 50aa4799eec..4f1709179ed 100644
--- a/en/billing/operations/get-folder-report.md
+++ b/en/billing/operations/get-folder-report.md
@@ -10,10 +10,10 @@ You can get a CSV file with your general or per-resource spending details. You c
1. {% include [move-to-billing-step](../_includes/move-to-billing-step.md) %}
1. Select the account you want to get details for.
- 1. In the left-hand panel, select ![image](../../_assets/console-icons/chart-area-stacked.svg) **{{ ui-key.yacloud.billing.account.switch_detail }}**.
+ 1. In the left-hand panel, select ![image](../../_assets/console-icons/chart-area-stacked.svg) **{{ ui-key.yacloud_billing.billing.account.switch_detail }}**.
1. Click **{{ ui-key.yacloud_billing.billing.account.detail.button_download-csv }}**.
1. Select the time period to get the details for.
- 1. Click **{{ ui-key.yacloud.billing.account.detail.popup-csv_button_download }}**.
+ 1. Click **{{ ui-key.yacloud_billing.billing.account.detail.popup-csv_button_download }}**.
{% endlist %}
diff --git a/en/billing/operations/pay-the-bill.md b/en/billing/operations/pay-the-bill.md
index 62aef95f5bd..42dcd274678 100644
--- a/en/billing/operations/pay-the-bill.md
+++ b/en/billing/operations/pay-the-bill.md
@@ -5,13 +5,17 @@ description: Follow this guide to top up your personal account.
# Top up your personal account
-{% include [card-business-nonresidents](../../_includes/billing/card-business-nonresidents.md) %}
-
{% include [personal-account-balance](../_includes/personal-account-balance.md) %}
+{{ yandex-cloud }} reserves the right to automatically debit your linked card during the current reporting period if your account balance exceeds the established credit limit.
The method for topping up your personal account depends on your legal status.
+{% note info %}
+
+A billing cycle runs automatically for [individuals](../payment/billing-cycle-individual.md) as well as [businesses and individual entrepreneurs](../payment/billing-cycle-business.md) if they have a bank card linked to their billing account.
+
+{% endnote %}
## Individuals {#individuals}
@@ -55,7 +59,10 @@ To top up your personal account:
Before paying, please make sure the following is correct in your payment order:
* Payment amount.
- * Banking information of Yandex.Cloud LLC (Russia), Cloud Services Kazakhstan LLP (Kazakhstan), and Iron Hive doo Beograd (Serbia) for non-residents of Russia and Kazakhstan.
+ * Banking information of Yandex.Cloud LLC (Russia), Cloud Services Kazakhstan LLP (Kazakhstan), Iron Hive doo Beograd (Serbia) or Direct Cursus Technology L.L.C. (Dubai) for non-residents of Russia and Kazakhstan.
+
+ {% include [legal-entity-nonresidents](../../_includes/billing/legal-entity-nonresidents.md) %}
+
* Your company or individual entrepreneur TIN.
* [Personal account number](../concepts/personal-account.md#id) in the payment details.
* [Contract number](../concepts/contract.md) in the payment details.
@@ -64,5 +71,12 @@ To top up your personal account:
{% include [payment-bill-note](../_includes/payment-bill-note.md) %}
+- Bank card {#card}
-{% endlist %}
+ Enter the payment amount and click **{{ ui-key.yacloud_billing.billing.account.dashboard-overview.button_refill }}**. Then enter your card details and click **Pay**.
+
+ {% include [payment-card-types](../../_includes/billing/payment-card-types.md) %}
+
+ Your payment will be processed in real time and completed within 15 minutes.
+
+{% endlist %}
\ No newline at end of file
diff --git a/en/billing/payment/billing-cycle-business.md b/en/billing/payment/billing-cycle-business.md
index a49ed91b5a9..2f6f0228184 100644
--- a/en/billing/payment/billing-cycle-business.md
+++ b/en/billing/payment/billing-cycle-business.md
@@ -1,5 +1,8 @@
# Billing cycle for businesses and individual entrepreneurs
+The diagram shows the cycle of issuing and paying invoices for businesses and individual entrepreneurs, as well as suspending and blocking access to the use of resources.
+
+![image](../../_assets/billing/billing-cycle-business-credit.svg)
1. You [activate the paid version](../operations/activate-commercial.md) before the [trial period](../../billing/concepts/trial-period.md) expires.
@@ -12,28 +15,54 @@
* If the grant amount is greater than zero and the grant has not expired, go back to step 2.
* If the grant has expired or the grant amount is zero, go to step 4.
+1. The payment method is verified:
+
+ * If you are paying for resources from a bank account, go to step 5.
+ * If you are paying for resources with a card, go to step 7.
1. You consume and pay for the use of {{ yandex-cloud }} resources at the end of each reporting period, and a [billing threshold](../concepts/billing-threshold.md) is not provided.
1. Verification is performed to check whether it is past the end of the reporting period:
- * If the reporting period has not ended yet, go back to step 4.
- * If a reporting period has ended, a [report](../concepts/act.md) and an [invoice](../concepts/invoice.md) are generated. Copies of these documents will be sent to the email address of the billing account owner. Go to step 5.1.
+ * If the reporting period has not ended yet, go back to step 5.
+ * If a reporting period has ended, a [report](../concepts/act.md) and an [invoice](../concepts/invoice.md) are generated. Copies of these documents will be sent to the email address of the billing account owner. Go to step 6.1.
1. At the end of the reporting period, your personal account balance is checked:
- * If the balance is positive, go back to step 4.
- * If the balance is negative, go to step 6.
+ * If the balance is positive, go back to step 5.
+ * If the balance is negative, go to step 10.
+
+1. Your [personal account balance](../concepts/personal-account.md#balance) decreases as {{ yandex-cloud }} service resources are consumed.
+
+ 1. Your personal account balance is checked throughout the reporting period.
+
+ * If the balance is positive, go back to step 7.
+ * If the balance is negative, go to step 8.
+
+1. [Your billing threshold](../concepts/billing-threshold.md) is used. Your billing threshold is valid for a calendar month.
+
+ 1. The billing threshold amount and validity period are checked:
+ * If your billing threshold is used up or has expired, go to step 10.
+ * Otherwise, go back to step 9.
+
+1. Verification is performed to check whether it is past the end of the reporting period:
+
+ * If the reporting period has not ended yet, go back to step 8.
+ * If a reporting period has ended, a [report](../concepts/act.md) and an [invoice](../concepts/invoice.md) are generated. Copies of these documents will be sent to the email address of the billing account owner. Go to step 10.
1. Payment is made for consumed {{ yandex-cloud }} resources:
- * [Top up](../operations/pay-the-bill.md) your personal account to a positive value within the deadline stipulated in the agreement.
+ * [Top up](../operations/pay-the-bill.md) your personal account to a positive value within the deadline stipulated in the agreement.
+ * If there is a bank card linked to your billing account, the system [calculates](payment-methods-card-business.md#payment-amount) the total amount due and debits it from that card.
+
+ {% include [pay-by-card-note](../_includes/pay-by-card-note.md) %}
1. Payment for used resources is verified:
- * If you top up your personal account before the deadline stipulated in the agreement, go back to step 2.
- * If you failed to top up your personal account, {{ yandex-cloud }} reserves the right to change the status of your billing account to [SUSPENDED](../concepts/billing-account-statuses.md). Go to step 7.
+ * If you top up your personal account before the deadline stipulated in the agreement or the funds are debited from the linked bank card within one day, go back to step 2.
+ * If your bank card balance is insufficient on the debit date and you fail to [top up](../operations/pay-the-bill.md) your personal account, another attempt to debit the funds will be made later.
+ * If you failed to top up your personal account, have no bank card linked, or the funds cannot be debited from any of your bank cards, {{ yandex-cloud }} reserves the right to change the status of your billing account to [SUSPENDED](../concepts/billing-account-statuses.md). Go to step 11.
{% include [suspended](../_includes/billing-suspended.md) %}
@@ -42,7 +71,7 @@
* Your VM instances and DB clusters will be stopped completely.
* You will not be able to read or download any saved data.
- During the suspension period, you will be charged the cost of data storage services and a late payment fee. Go to step 8.
+ During the suspension period, you will be charged the cost of data storage services and a late payment fee. Go to step 12.
1. Payment of the entire outstanding amount is checked throughout the 60-day suspension period:
@@ -50,10 +79,8 @@
1. Otherwise, access to {{ yandex-cloud }} services may be permanently blocked. All your data, including your [billing account](../concepts/billing-account.md), will be permanently deleted.
-
{% include [blocked-note](../_includes/blocked-note.md) %}
-
#### See also
* [Grant](../concepts/bonus-account.md)
diff --git a/en/billing/payment/index.md b/en/billing/payment/index.md
index 63770ba8d08..b93d9c9f892 100644
--- a/en/billing/payment/index.md
+++ b/en/billing/payment/index.md
@@ -9,6 +9,7 @@ Individuals:
Businesses and individual entrepreneurs:
* [Billing cycle](billing-cycle-business.md)
+* [Paying by bank card](payment-methods-card-business.md)
* [Bank account transfers](payment-methods-business.md)
* [Reporting documents](documents.md)
* [Promo code activation](../operations/activate-promocode.md)
\ No newline at end of file
diff --git a/en/billing/payment/payment-methods-business.md b/en/billing/payment/payment-methods-business.md
index a124c2e5628..168b53e7124 100644
--- a/en/billing/payment/payment-methods-business.md
+++ b/en/billing/payment/payment-methods-business.md
@@ -8,7 +8,10 @@ To have funds transferred, you should first receive a [payment invoice](../conce
* Payment amount.
-* Banking information of Yandex.Cloud LLC (Russia) and Belarus, Cloud Services Kazakhstan LLP (Kazakhstan), and Iron Hive doo Beograd (Serbia) for non-residents of Russia and Kazakhstan.
+* Banking information of Yandex.Cloud LLC (Russia) and Belarus, Cloud Services Kazakhstan LLP (Kazakhstan), Iron Hive doo Beograd (Serbia) or Direct Cursus Technology L.L.C. (Dubai) for non-residents of Russia and Kazakhstan.
+
+ {% include [legal-entity-nonresidents](../../_includes/billing/legal-entity-nonresidents.md) %}
+
* Your company or individual entrepreneur TIN.
* [Personal account number](../concepts/personal-account.md#id) in the payment details.
* [Contract number](../concepts/contract.md) in the payment details.
diff --git a/en/billing/payment/payment-methods-card-business.md b/en/billing/payment/payment-methods-card-business.md
index e9a9fe8fef7..255c70f73ef 100644
--- a/en/billing/payment/payment-methods-card-business.md
+++ b/en/billing/payment/payment-methods-card-business.md
@@ -1,7 +1,5 @@
# Bank card payments for businesses
-{% include [card-business-nonresidents](../../_includes/billing/card-business-nonresidents.md) %}
-
Businesses and individual entrepreneurs can top up their personal accounts and pay for consumed resources using a corporate bank card linked to the billing account.
{% include [payment-card-types](../../_includes/billing/payment-card-types.md) %}
diff --git a/en/billing/pricing.md b/en/billing/pricing.md
index 49ba6c94f3f..59b5b4ee476 100644
--- a/en/billing/pricing.md
+++ b/en/billing/pricing.md
@@ -24,6 +24,7 @@ Billable service costs are calculated based on the amount of consumed resources
* [{{ sf-full-name }}](../functions/pricing.md)
* [{{ interconnect-full-name }}](../interconnect/pricing.md)
* [{{ cloud-logging-full-name }}](../logging/pricing.md)
+* [{{ cns-full-name }}](../notifications/pricing.md)
* [{{ compute-full-name }}](../compute/pricing.md)
* [{{ container-registry-full-name }}](../container-registry/pricing.md)
* [{{ dataproc-full-name }}](../data-proc/pricing.md)
diff --git a/en/cdn/concepts/servers-to-origins-host.md b/en/cdn/concepts/servers-to-origins-host.md
index 5d09a240938..1295fcb037a 100644
--- a/en/cdn/concepts/servers-to-origins-host.md
+++ b/en/cdn/concepts/servers-to-origins-host.md
@@ -9,7 +9,7 @@ To make sure that CDN servers send correct requests to [origins](origins.md), co
* **{{ ui-key.yacloud.cdn.value_host-header-default }}**: First [domain name for content distribution](resource.md#hostnames) specified in the CDN resource settings.
* **{{ ui-key.yacloud.cdn.value_host-header-custom }}**: Arbitrary domain name.
-* **{{ ui-key.yacloud.cdn.value_protocol-match }}**: Same value as that of the `Host` header in the client request to the CDN.
+* **{{ ui-key.yacloud.cdn.value_protocol-match }}**: Same value as the `Host` header value in the client request to CDN.
The `Host` header value is selected when creating a resource. You can change it afterwards along with other basic resource settings. For more information, see these guides:
@@ -18,37 +18,43 @@ The `Host` header value is selected when creating a resource. You can change it
## How to set up the header properly {#best-practices}
-Choosing the right setting for the `Host` header depends on the origins you use in your resource:
+Choosing the correct setting for the `Host` header depends on the origins you use in your resource:
{% list tabs %}
- A single origin
- If the origin is a bucket, select the `{{ ui-key.yacloud.cdn.value_host-header-custom }}` option and specify the `.{{ s3-storage-host }}` (or `.{{ s3-web-host }}` if the bucket is configured for [static website hosting](../../storage/concepts/hosting.md)).
+ If the origin is a bucket, select the `{{ ui-key.yacloud.cdn.value_host-header-custom }}` option and specify `.{{ s3-storage-host }}` as the value. If the bucket is configured for [static website hosting](../../storage/concepts/hosting.md), specify `.{{ s3-web-host }}`.
- In other cases, the setting depends on what requests the origin accepts.
+ In other cases, the setting depends on what requests the origin accepts.
- > For example, in [blue-green and canary deployment scenarios](../tutorials/blue-green-canary-deployment.md), the L7 load balancer is configured to accept requests with two values of the `Host` header. For the CDN resource, the `{{ ui-key.yacloud.cdn.value_protocol-match }}` option is selected.
+ > For example, in [blue-green and canary deployment scenarios](../tutorials/blue-green-canary-deployment.md), the L7 load balancer is configured to accept requests with two values of the `Host` header. For the CDN resource, the `{{ ui-key.yacloud.cdn.value_protocol-match }}` option is selected.
- To check that the origin accepts requests with the selected `Host` header value correctly, run the following command:
+ To check that the origin accepts requests with the selected `Host` header value correctly, run this command:
- ```bash
- curl -Ik -H "Host: "
- ```
+ ```bash
+ curl \
+ --head \
+ --insecure \
+ --header "Host: "
+ ```
- Origin group
- If there is one bucket in the group:
+ If there is one bucket in the group:
- 1. Select the `{{ ui-key.yacloud.cdn.value_host-header-custom }}` option and specify the `.{{ s3-storage-host }}` (or `.{{ s3-web-host }}` if the bucket is configured for [static website hosting](../../storage/concepts/hosting.md)).
- 1. Configure other origins (servers and L7 load balancers) so that they accept requests with the specified header value.
+ 1. Select the `{{ ui-key.yacloud.cdn.value_host-header-custom }}` option and specify `.{{ s3-storage-host }}` as the value. If the bucket is configured for [static website hosting](../../storage/concepts/hosting.md), specify `.{{ s3-web-host }}`.
+ 1. Configure other origins (servers and L7 load balancers) so that they accept requests with the specified header value.
- If there are multiple buckets in the group, we recommend using the L7 load balancer with buckets that act as backends instead (see the configuration example for [blue-green and canary deployment](../tutorials/blue-green-canary-deployment.md)).
+ If there are multiple buckets in the group, we recommend using the L7 load balancer with buckets that act as backends instead (see the configuration example for [blue-green and canary deployment](../tutorials/blue-green-canary-deployment.md)).
- In other cases, the setting depends on what requests the origins accept. To check that the origin accepts requests with the selected `Host` header value correctly, run the following command:
+ In other cases, the setting depends on what requests the origins accept. To check that the origin accepts requests with the selected `Host` header value correctly, run this command:
- ```bash
- curl -Ik -H "Host: "
- ```
+ ```bash
+ curl \
+ --head \
+ --insecure \
+ --header "Host: "
+ ```
{% endlist %}
diff --git a/en/cdn/operations/origin-groups/get-group-info.md b/en/cdn/operations/origin-groups/get-group-info.md
index 0a08ccd21e3..6e8ce212401 100644
--- a/en/cdn/operations/origin-groups/get-group-info.md
+++ b/en/cdn/operations/origin-groups/get-group-info.md
@@ -26,7 +26,7 @@ To get the URL and other details of an origin:
{% include [default-catalogue](../../../_includes/default-catalogue.md) %}
- 1. View a description of the CLI command to get information about an origin:
+ 1. See the description of the CLI command to get information about an origin:
```bash
yc cdn origin get --help
@@ -76,7 +76,7 @@ To get the name, set of origins, and other details of an origin group:
{% include [default-catalogue](../../../_includes/default-catalogue.md) %}
- 1. View a description of the CLI command to get information about an origin group:
+ 1. See the description of the CLI command to get information about an origin group:
```bash
yc cdn origin-group get --help
diff --git a/en/cdn/operations/resources/configure-basics.md b/en/cdn/operations/resources/configure-basics.md
index 32ed6a2b336..4b02fae785a 100644
--- a/en/cdn/operations/resources/configure-basics.md
+++ b/en/cdn/operations/resources/configure-basics.md
@@ -181,7 +181,7 @@ To edit the basic settings of a [resource](../../concepts/resource.md):
terraform apply
```
- 1. Confirm the changes: type `yes` into the terminal and click **Enter**.
+ 1. Confirm the changes: type `yes` into the terminal and press **Enter**.
You can check the changes to the CDN resource in the [management console]({{ link-console-main }}) or using this [CLI](../../../cli/quickstart.md) command:
diff --git a/en/cdn/operations/resources/configure-caching.md b/en/cdn/operations/resources/configure-caching.md
index b25e7b5615b..95d90f6e622 100644
--- a/en/cdn/operations/resources/configure-caching.md
+++ b/en/cdn/operations/resources/configure-caching.md
@@ -34,7 +34,7 @@ To configure the [caching](../../concepts/caching.md) parameters of a [resource]
* Enable **{{ ui-key.yacloud.cdn.label_resource-cache-browser-cache-enabled }}**.
- 1. (Optional) Under **{{ ui-key.yacloud.cdn.label_additional }}**:
+ 1. Optionally, under **{{ ui-key.yacloud.cdn.label_additional }}**:
* Select the option to ignore Cookies.
* Select the option to ignore the Query parameters.
@@ -164,10 +164,10 @@ To configure the [caching](../../concepts/caching.md) parameters of a [resource]
Where:
* `cname`: Primary domain name used for content distribution. This is a required parameter.
- * `active`: Flag indicating access to content for end users. If set to `True`, CDN content will be available to clients. This is an optional parameter. The default value is `true`.
- * `origin_protocol`: Origin protocol. This is an optional parameter. The default value is `http`.
+ * `active`: Flag indicating content availablity to end users. `True`: CDN content will be available to clients. This is an optional parameter. The default value is `true`.
+ * `origin_protocol`: Protocol for origins. This is an optional parameter. The default value is `http`.
* `secondary_hostnames`: Additional domain names. This is an optional parameter.
- * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the origin group description in the `yandex_cdn_origin_group` resource.
+ * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the description of the origin group in the `yandex_cdn_origin_group` resource.
* The `options` section contains additional parameters of CDN resources:
* `browser_cache_settings`: Browser cache lifetime in seconds. This is an optional parameter. The default value is `0`.
* `edge_cache_settings`: Cache lifetime for response codes in seconds. This is an optional parameter. The default value is `345600`.
@@ -203,7 +203,7 @@ To configure the [caching](../../concepts/caching.md) parameters of a [resource]
1. Confirm the changes: type `yes` into the terminal and press **Enter**.
- You can check the CDN resource update in the [management console]({{ link-console-main }}) or using this [CLI](../../../cli/quickstart.md) command:
+ You can check the changes to the CDN resource in the [management console]({{ link-console-main }}) or using this [CLI](../../../cli/quickstart.md) command:
```
yc cdn resource list
diff --git a/en/cdn/operations/resources/configure-cors.md b/en/cdn/operations/resources/configure-cors.md
index d14e92937be..a717c9443af 100644
--- a/en/cdn/operations/resources/configure-cors.md
+++ b/en/cdn/operations/resources/configure-cors.md
@@ -141,10 +141,10 @@ To configure cross-domain requests with [CORS](../../concepts/cors.md) for the [
Where:
* `cname`: Primary domain name used for content distribution. This is a required parameter.
- * `active`: Flag showing whether content is available to end users. When set to `True`, the CDN content will be available to clients. This is an optional parameter. Its default value is `true`.
- * `origin_protocol`: Origin protocol. This is an optional parameter. Its default value is `http`.
+ * `active`: Flag indicating content availablity to end users. `True`: CDN content will be available to clients. This is an optional parameter. The default value is `true`.
+ * `origin_protocol`: Protocol for origins. This is an optional parameter. The default value is `http`.
* `secondary_hostnames`: Additional domain names. This is an optional parameter.
- * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the origin group description in the `yandex_cdn_origin_group` resource.
+ * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the description of the origin group in the `yandex_cdn_origin_group` resource.
* The `options` section contains additional parameters of CDN resources:
* `cors`: Value the CDN will send in the `Access-Control-Allow-Origin` header in response to a [CORS request](../../concepts/cors.md).
* `allowed_http_methods`: HTTP methods allowed for your CDN content. By default, the following methods are allowed: `GET`, `HEAD`, `POST`, `PUT`, `PATCH`, `DELETE`, and `OPTIONS`. If the user is not allowed to use any method, they will get the `405` _Method Not Allowed_ response. For methods that are not supported, the user will get `501` (_Not Implemented_). This is an optional parameter. Its default values are `GET`, `HEAD`, `POST`, and `OPTIONS`.
diff --git a/en/cdn/operations/resources/configure-headers.md b/en/cdn/operations/resources/configure-headers.md
index a1fd23e3018..da90218848a 100644
--- a/en/cdn/operations/resources/configure-headers.md
+++ b/en/cdn/operations/resources/configure-headers.md
@@ -192,7 +192,7 @@ The `Access-Control-Allow-Origin` header for the CORS configuration is configure
terraform apply
```
- 1. Confirm the changes: type `yes` into the terminal and click **Enter**.
+ 1. Confirm the changes: type `yes` into the terminal and press **Enter**.
You can check the changes to the CDN resource in the [management console]({{ link-console-main }}) or using this [CLI](../../../cli/quickstart.md) command:
diff --git a/en/cdn/operations/resources/configure-http.md b/en/cdn/operations/resources/configure-http.md
index f84328e16a3..09586089625 100644
--- a/en/cdn/operations/resources/configure-http.md
+++ b/en/cdn/operations/resources/configure-http.md
@@ -135,10 +135,10 @@ To configure the allowed HTTP client requests methods for a resource:
Where:
* `cname`: Primary domain name used for content distribution. This is a required parameter.
- * `active`: Flag showing whether content is available to end users. When set to `True`, the CDN content will be available to clients. This is an optional parameter. Its default value is `true`.
- * `origin_protocol`: Origin protocol. This is an optional parameter. Its default value is `http`.
+ * `active`: Flag indicating content availablity to end users. `True`: CDN content will be available to clients. This is an optional parameter. The default value is `true`.
+ * `origin_protocol`: Protocol for origins. This is an optional parameter. The default value is `http`.
* `secondary_hostnames`: Additional domain names. This is an optional parameter.
- * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the origin group description in the `yandex_cdn_origin_group` resource.
+ * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the description of the origin group in the `yandex_cdn_origin_group` resource.
* The `options` section contains additional parameters of CDN resources:
* `allowed_http_methods`: HTTP methods allowed for your CDN content. By default, the following methods are allowed: `GET`, `HEAD`, `POST`, `PUT`, `PATCH`, `DELETE`, and `OPTIONS`. If the user is not allowed to use any method, they will get the `405` _Method Not Allowed_ response. For methods that are not supported, the user will get `501` (_Not Implemented_). This is an optional parameter. Its default values are `GET`, `HEAD`, `POST`, and `OPTIONS`.
diff --git a/en/cdn/operations/resources/enable-compression.md b/en/cdn/operations/resources/enable-compression.md
index 3bc67e35e32..30ec77de566 100644
--- a/en/cdn/operations/resources/enable-compression.md
+++ b/en/cdn/operations/resources/enable-compression.md
@@ -139,10 +139,10 @@ Before delivery, the content will be compressed by CDN servers using the GZIP co
Where:
* `cname`: Primary domain name used for content distribution. This is a required parameter.
- * `active`: Flag indicating whether content is available to end users. When set to `True`, CDN content will be available to clients. This is an optional parameter. The default value is `true`.
+ * `active`: Flag indicating content availablity to end users. `True`: CDN content will be available to clients. This is an optional parameter. The default value is `true`.
* `origin_protocol`: Protocol for origins. This is an optional parameter.
* `secondary_hostnames`: Additional domain names. This is an optional parameter.
- * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the origin group description in the `yandex_cdn_origin_group` resource.
+ * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the description of the origin group in the `yandex_cdn_origin_group` resource.
* The `options` section contains additional parameters of CDN resources:
* `gzip_on`: Flag indicating whether compression will be used.
diff --git a/en/cdn/operations/resources/enable-segmentation.md b/en/cdn/operations/resources/enable-segmentation.md
index 59fcc40a625..8625f64f06d 100644
--- a/en/cdn/operations/resources/enable-segmentation.md
+++ b/en/cdn/operations/resources/enable-segmentation.md
@@ -134,10 +134,10 @@ To enable [segmentation](../../concepts/slicing.md) of [resource](../../concepts
Where:
* `cname`: Primary domain name used for content distribution. This is a required parameter.
- * `active`: Flag indicating access to content for end users. If set to `True`, CDN content will be available to clients. This is an optional parameter. The default value is `true`.
- * `origin_protocol`: Origin protocol. This is an optional parameter. The default value is `http`.
+ * `active`: Flag indicating content availablity to end users. `True`: CDN content will be available to clients. This is an optional parameter. The default value is `true`.
+ * `origin_protocol`: Protocol for origins. This is an optional parameter. The default value is `http`.
* `secondary_hostnames`: Additional domain names. This is an optional parameter.
- * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the origin group description in the `yandex_cdn_origin_group` resource.
+ * `origin_group_id`: [Origin group](../../concepts/origins.md) ID. This is a required parameter. Use the ID from the description of the origin group in the `yandex_cdn_origin_group` resource.
* The `options` section contains additional parameters of CDN resources:
* `slice`: Flag indicating whether segmentation will be used. This is an optional parameter. The default value is `false`.
@@ -170,7 +170,7 @@ To enable [segmentation](../../concepts/slicing.md) of [resource](../../concepts
1. Confirm the changes: type `yes` into the terminal and press **Enter**.
- You can check the CDN resource update in the [management console]({{ link-console-main }}) or using this [CLI](../../../cli/quickstart.md) command:
+ You can check the changes to the CDN resource in the [management console]({{ link-console-main }}) or using this [CLI](../../../cli/quickstart.md) command:
```
yc cdn resource list
diff --git a/en/cdn/operations/resources/get-resources-info.md b/en/cdn/operations/resources/get-resources-info.md
index d34122f0e71..c91afed1708 100644
--- a/en/cdn/operations/resources/get-resources-info.md
+++ b/en/cdn/operations/resources/get-resources-info.md
@@ -19,7 +19,7 @@ title: How to get information about a resource in {{ cdn-full-name }}
{% include [default-catalogue](../../../_includes/default-catalogue.md) %}
- 1. View a description of the CLI command to get information about a [resource](../../concepts/resource.md):
+ 1. See the description of the CLI command to get information about a [resource](../../concepts/resource.md):
```bash
yc cdn resource get --help
@@ -121,7 +121,7 @@ title: How to get information about a resource in {{ cdn-full-name }}
1. In the [management console]({{ link-console-main }}), select the folder containing your resource.
1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_cdn }}**.
1. Select the created CDN resource.
- 1. The **{{ ui-key.yacloud.cdn.label_dns-settings_title }}** section on the **{{ ui-key.yacloud.common.overview }}** page will show the `.edgecdn.ru` domain name generated by the service.
+ 1. The **{{ ui-key.yacloud.common.overview }}** section on the **{{ ui-key.yacloud.cdn.label_dns-settings_title }}** page will show the `.edgecdn.ru` domain name generated by the service.
- CLI {#cli}
@@ -129,7 +129,7 @@ title: How to get information about a resource in {{ cdn-full-name }}
{% include [default-catalogue](../../../_includes/default-catalogue.md) %}
- 1. View a description of the CLI command to get information about a resource:
+ 1. See the description of the CLI command to get information about a resource:
```bash
yc cdn resource get-provider-cname --help
diff --git a/en/cdn/operations/resources/prefetch-files.md b/en/cdn/operations/resources/prefetch-files.md
index cfffa70c136..967335e4288 100644
--- a/en/cdn/operations/resources/prefetch-files.md
+++ b/en/cdn/operations/resources/prefetch-files.md
@@ -19,7 +19,7 @@ To [prefetch content](../../concepts/caching.md#prefetch) from [origins](../../c
1. Go to the **{{ ui-key.yacloud.cdn.label_resource-content }}** tab.
- 1. In the top-right corner, click ![image](../../../_assets/console-icons/ellipsis.svg) and select **{{ ui-key.yacloud.cdn.button_resource-content-prefetch-cache }}**.
+ 1. In the top-right corner, click ![image](../../../_assets/console-icons/ellipsis.svg) and choose **{{ ui-key.yacloud.cdn.button_resource-content-prefetch-cache }}**.
1. Enter the file names in the **{{ ui-key.yacloud.cdn.label_resource-content-prefetch-cache-paths }}** field.
@@ -97,4 +97,5 @@ To [prefetch content](../../concepts/caching.md#prefetch) from [origins](../../c
Use the [prefetch](../../api-ref/Cache/prefetch.md) REST API method for the [Cache](../../api-ref/Cache/index.md) resource or the [CacheService/Prefetch](../../api-ref/grpc/Cache/prefetch.md) gRPC API call.
-{% endlist %}
\ No newline at end of file
+{% endlist %}
+
\ No newline at end of file
diff --git a/en/certificate-manager/quickstart/index.md b/en/certificate-manager/quickstart/index.md
index 8ec0196688e..e9198874200 100644
--- a/en/certificate-manager/quickstart/index.md
+++ b/en/certificate-manager/quickstart/index.md
@@ -24,7 +24,7 @@ To get started with {{ certificate-manager-name }}, you need:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder you want to create a [bucket](../../storage/concepts/bucket.md) in.
+ 1. In the [management console]({{ link-console-main }}), select the folder you want to create a bucket in.
1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
1. Click **{{ ui-key.yacloud.storage.buckets.button_create }}**.
1. Enter exactly the same name for the bucket as the domain name.
@@ -42,8 +42,9 @@ To get started with {{ certificate-manager-name }}, you need:
1. In the [management console]({{ link-console-main }}), select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
1. In the **{{ ui-key.yacloud.storage.switch_buckets }}** tab, click the bucket with the same name as the domain.
- 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_website }}**.
- 1. Select **{{ ui-key.yacloud.storage.bucket.website.switch_hosting }}** and specify your website home page.
+ 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_settings }}**.
+ 1. Open the **{{ ui-key.yacloud.storage.bucket.switch_website }}** tab.
+ 1. Select `{{ ui-key.yacloud.storage.bucket.website.switch_hosting }}` and specify the website's homepage.
1. Click **{{ ui-key.yacloud.storage.bucket.website.button_save }}** to complete the operation.
{% endlist %}
@@ -146,8 +147,9 @@ To renew a certificate, you have to perform certain actions. Keep track of the l
1. Log in to the [management console]({{ link-console-main }}).
1. Select **{{ ui-key.yacloud.iam.folder.dashboard.label_storage }}**.
1. In the **{{ ui-key.yacloud.storage.switch_buckets }}** tab, click the bucket with the same name as the domain.
+ 1. In the left-hand panel, select **{{ ui-key.yacloud.storage.bucket.switch_security }}**.
1. Go to the **{{ ui-key.yacloud.storage.bucket.switch_https }}** tab.
- 1. In the right-hand panel that opens, click **{{ ui-key.yacloud.storage.bucket.https.button_action-configure }}**.
+ 1. Click **{{ ui-key.yacloud.storage.bucket.https.button_action-configure }}** at the top right.
1. In the **{{ ui-key.yacloud.storage.bucket.https.field_source }}** field, select `{{ ui-key.yacloud.storage.bucket.https.value_method-certificate-manager }}`.
1. In the **{{ ui-key.yacloud.storage.bucket.https.field_certificate-manager }}** field, select the certificate from the list that opens.
1. Click **{{ ui-key.yacloud.storage.bucket.https.button_save }}**.
diff --git a/en/certificate-manager/release-notes.md b/en/certificate-manager/release-notes.md
new file mode 100644
index 00000000000..b88b4a01490
--- /dev/null
+++ b/en/certificate-manager/release-notes.md
@@ -0,0 +1,11 @@
+---
+title: '{{ certificate-manager-full-name }} release notes'
+description: This section contains {{ certificate-manager-name }} release notes.
+---
+
+# {{ certificate-manager-full-name }} release notes
+
+## Q3 2024 {#q3-2024}
+
+* In the management console, added the feature to [export](operations/managed/cert-get-content.md) a certificate, certificate chain, and private key obtained from Let’s Encrypt. Certificates are saved in Base64 encoded text format:
+* Added the `GetCertificateContent` event to collect audit logs in [{{ at-name }}](../audit-trails/concepts/events-data-plane.md#certificate-manager) by the _Getting SSL certificate contents_ event.
\ No newline at end of file
diff --git a/en/certificate-manager/toc.yaml b/en/certificate-manager/toc.yaml
index c09e033a67e..62e2ad12fdd 100644
--- a/en/certificate-manager/toc.yaml
+++ b/en/certificate-manager/toc.yaml
@@ -21,7 +21,7 @@ items:
href: operations/managed/cert-modify.md
- name: Deleting a certificate
href: operations/managed/cert-delete.md
- - name: Custom certificate
+ - name: User certificate
items:
- name: Adding a certificate
href: operations/import/cert-create.md
@@ -43,7 +43,7 @@ items:
href: operations/domain/domain-modify.md
- name: Deleting a domain
href: operations/domain/domain-delete.md
- - name: Backups
+ - name: Backup
href: operations/cert-backup.md
- name: Adding alerts for certificates
href: operations/alert.md
@@ -57,7 +57,7 @@ items:
href: tutorials/nginx-ingress-certificate-manager.md
- name: Setting up virtual hosting
href: tutorials/virtual-hosting.md
- - name: Hosting a static Gatsby-based website in {{ objstorage-name }}
+ - name: Hosting a static Gatsby website in {{ objstorage-name }}
href: tutorials/gatsby-static-website.md
- name: Terminating TLS connections
items:
@@ -73,7 +73,7 @@ items:
href: concepts/index.md
- name: Certificate from Let's Encrypt
href: concepts/managed-certificate.md
- - name: Custom certificate
+ - name: User certificate
href: concepts/imported-certificate.md
- name: Checking rights for a domain
href: concepts/challenges.md
@@ -191,6 +191,8 @@ items:
href: metrics.md
- name: '{{ at-name }} events'
href: at-ref.md
+ - name: Release notes
+ href: release-notes.md
- name: FAQ
href: qa/index.md
base: en/certificate-manager
diff --git a/en/cli/cli-ref/managed-services/lockbox/secret/add-version.md b/en/cli/cli-ref/managed-services/lockbox/secret/add-version.md
index 7ffe40bd726..4dd32359886 100644
--- a/en/cli/cli-ref/managed-services/lockbox/secret/add-version.md
+++ b/en/cli/cli-ref/managed-services/lockbox/secret/add-version.md
@@ -21,7 +21,7 @@ Syntax:
|`--name`|`string` Secret name.|
|`--async`|Display information about the operation in progress, without waiting for the operation to complete.|
|`--description`|`string` Version description.|
-|`--payload`|`string` YAML or JSON array defining how to change payload from the base version. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/secret_service#PayloadEntryChange For instance, to modify the value of "password" entry from the base version payload: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] the following JSON can be passed: [{"key": "password", "text_value": "another-p@$$w0rd"}] so the resulting payload of the newly added version will be: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "another-p@$$w0rd"}] To remove the entry pass an item containing only the "key" field, e.g.: [..., {"key": "the-key-of-the-entry-to-remove"}, ...] Use - value to pass payload string via stdin.|
+|`--payload`|`string` YAML or JSON array defining how to change payload from the base version. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/Secret/create#yandex.cloud.lockbox.v1.PayloadEntryChange For instance, to modify the value of "password" entry from the base version payload: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] the following JSON can be passed: [{"key": "password", "text_value": "another-p@$$w0rd"}] so the resulting payload of the newly added version will be: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "another-p@$$w0rd"}] To remove the entry pass an item containing only the "key" field, e.g.: [..., {"key": "the-key-of-the-entry-to-remove"}, ...] Use - value to pass payload string via stdin.|
|`--base-version-id`|`string` Base version id. By default, the current one is used.|
#### Global Flags
diff --git a/en/cli/cli-ref/managed-services/lockbox/secret/create.md b/en/cli/cli-ref/managed-services/lockbox/secret/create.md
index fb485017143..bebd11a0828 100644
--- a/en/cli/cli-ref/managed-services/lockbox/secret/create.md
+++ b/en/cli/cli-ref/managed-services/lockbox/secret/create.md
@@ -22,7 +22,7 @@ Syntax:
|`--labels`|`key=value[,key=value...]` A list of label KEY=VALUE pairs to add. For example, to add two labels named 'foo' and 'bar', both with the value 'baz', use '--labels foo=baz,bar=baz'.|
|`--kms-key-id`|`string` KMS key ID will be used to encrypt the secret payload.|
|`--version-description`|`string` Description of the first version.|
-|`--payload`|`string` YAML or JSON array defining the entries of the secret payload. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/secret_service#PayloadEntryChange For instance, the following payload JSON defines a payload containing two text value entries: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] Use - value to pass payload string via stdin.|
+|`--payload`|`string` YAML or JSON array defining the entries of the secret payload. Each item of the array must match the format: https://yandex.cloud/ru/docs/lockbox/api-ref/grpc/Secret/create#yandex.cloud.lockbox.v1.PayloadEntryChange For instance, the following payload JSON defines a payload containing two text value entries: [{"key": "username", "text_value": "alice"}, {"key": "password", "text_value": "p@$$w0rd"}] Use - value to pass payload string via stdin.|
|`--deletion-protection`|Enable deletion protection for the secret.|
|`--async`|Display information about the operation in progress, without waiting for the operation to complete.|
diff --git a/en/cli/operations/profile/profile-activate.md b/en/cli/operations/profile/profile-activate.md
index 8e59dc465e9..1eea0b52490 100644
--- a/en/cli/operations/profile/profile-activate.md
+++ b/en/cli/operations/profile/profile-activate.md
@@ -4,7 +4,7 @@ Multiple profiles let you quickly switch your command execution context.
{% include [profile-name](../../../_includes/cli-profile-name.md) %}
-1. Activate the `test` profile:
+1. Activate the `test` profile:
```bash
yc config profile activate test
diff --git a/en/cloud-desktop/api-ref/Desktop/create.md b/en/cloud-desktop/api-ref/Desktop/create.md
index 73e530bdafc..0f92e350114 100644
--- a/en/cloud-desktop/api-ref/Desktop/create.md
+++ b/en/cloud-desktop/api-ref/Desktop/create.md
@@ -20,7 +20,8 @@ POST https://cloud-desktop.{{ api-host }}/cloud-desktop/v1/desktops
"desktopGroupId": "string",
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -43,6 +44,9 @@ List of users. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
## Response {#yandex.cloud.operation.Operation}
@@ -88,7 +92,8 @@ Required field. Identity of the access binding. ||
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -262,4 +267,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/Desktop/get.md b/en/cloud-desktop/api-ref/Desktop/get.md
index 3e5386fefea..22d2927ca92 100644
--- a/en/cloud-desktop/api-ref/Desktop/get.md
+++ b/en/cloud-desktop/api-ref/Desktop/get.md
@@ -51,7 +51,8 @@ To get the desktop ID use a [DesktopService.List](/docs/cloud-desktop/api-ref/De
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -126,4 +127,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/Desktop/getRdpFile.md b/en/cloud-desktop/api-ref/Desktop/getRdpFile.md
index b34871dabc1..ea258499fad 100644
--- a/en/cloud-desktop/api-ref/Desktop/getRdpFile.md
+++ b/en/cloud-desktop/api-ref/Desktop/getRdpFile.md
@@ -40,6 +40,9 @@ User of the desktop. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
## Response {#yandex.cloud.clouddesktop.v1.api.RdpFileResponse}
diff --git a/en/cloud-desktop/api-ref/Desktop/list.md b/en/cloud-desktop/api-ref/Desktop/list.md
index f6be2e1eb46..ce6a4ed7436 100644
--- a/en/cloud-desktop/api-ref/Desktop/list.md
+++ b/en/cloud-desktop/api-ref/Desktop/list.md
@@ -73,7 +73,8 @@ The default sorting order is ascending. ||
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -168,4 +169,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/Desktop/resetPassword.md b/en/cloud-desktop/api-ref/Desktop/resetPassword.md
index 710d4881498..3fcb8f047a0 100644
--- a/en/cloud-desktop/api-ref/Desktop/resetPassword.md
+++ b/en/cloud-desktop/api-ref/Desktop/resetPassword.md
@@ -27,7 +27,8 @@ Required field. ID of the desktop. ||
```json
{
"user": {
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
}
```
@@ -46,6 +47,9 @@ Required field. User of the desktop. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
## Response {#yandex.cloud.clouddesktop.v1.api.ResetPasswordResponse}
diff --git a/en/cloud-desktop/api-ref/DesktopGroup/listDesktops.md b/en/cloud-desktop/api-ref/DesktopGroup/listDesktops.md
index a4322534712..e25efead77e 100644
--- a/en/cloud-desktop/api-ref/DesktopGroup/listDesktops.md
+++ b/en/cloud-desktop/api-ref/DesktopGroup/listDesktops.md
@@ -77,7 +77,8 @@ The default sorting order is ascending. ||
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -172,4 +173,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/grpc/Desktop/create.md b/en/cloud-desktop/api-ref/grpc/Desktop/create.md
index c06cb4bf23b..1a9e8bee5ff 100644
--- a/en/cloud-desktop/api-ref/grpc/Desktop/create.md
+++ b/en/cloud-desktop/api-ref/grpc/Desktop/create.md
@@ -18,7 +18,8 @@ Creates desktop in the specified folder.
"desktopGroupId": "string",
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -41,6 +42,9 @@ List of users. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
## operation.Operation {#yandex.cloud.operation.Operation}
@@ -78,7 +82,8 @@ Required field. Identity of the access binding. ||
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -214,4 +219,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/grpc/Desktop/get.md b/en/cloud-desktop/api-ref/grpc/Desktop/get.md
index 0470a7b8cc3..47b8a412f48 100644
--- a/en/cloud-desktop/api-ref/grpc/Desktop/get.md
+++ b/en/cloud-desktop/api-ref/grpc/Desktop/get.md
@@ -53,7 +53,8 @@ To get the desktop ID use a [DesktopService.List](/docs/cloud-desktop/api-ref/gr
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -121,4 +122,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/grpc/Desktop/getRdpFile.md b/en/cloud-desktop/api-ref/grpc/Desktop/getRdpFile.md
index 59bc7354ac4..cac0053eb23 100644
--- a/en/cloud-desktop/api-ref/grpc/Desktop/getRdpFile.md
+++ b/en/cloud-desktop/api-ref/grpc/Desktop/getRdpFile.md
@@ -17,7 +17,8 @@ Returns a RDP file for the specified desktop.
{
"desktopId": "string",
"user": {
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
}
```
@@ -41,6 +42,9 @@ User of the desktop. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
## RdpFileResponse {#yandex.cloud.clouddesktop.v1.api.RdpFileResponse}
diff --git a/en/cloud-desktop/api-ref/grpc/Desktop/list.md b/en/cloud-desktop/api-ref/grpc/Desktop/list.md
index 71068d27a04..d9e5b7305bc 100644
--- a/en/cloud-desktop/api-ref/grpc/Desktop/list.md
+++ b/en/cloud-desktop/api-ref/grpc/Desktop/list.md
@@ -79,7 +79,8 @@ The default sorting order is ascending. ||
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -167,4 +168,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/grpc/Desktop/resetPassword.md b/en/cloud-desktop/api-ref/grpc/Desktop/resetPassword.md
index 539bfd66c35..a5219df80b9 100644
--- a/en/cloud-desktop/api-ref/grpc/Desktop/resetPassword.md
+++ b/en/cloud-desktop/api-ref/grpc/Desktop/resetPassword.md
@@ -17,7 +17,8 @@ Reset password
{
"desktopId": "string",
"user": {
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
}
```
@@ -39,6 +40,9 @@ Required field. User of the desktop. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
## ResetPasswordResponse {#yandex.cloud.clouddesktop.v1.api.ResetPasswordResponse}
diff --git a/en/cloud-desktop/api-ref/grpc/Desktop/restart.md b/en/cloud-desktop/api-ref/grpc/Desktop/restart.md
index 462df0d3175..57d0d8a60d3 100644
--- a/en/cloud-desktop/api-ref/grpc/Desktop/restart.md
+++ b/en/cloud-desktop/api-ref/grpc/Desktop/restart.md
@@ -61,7 +61,8 @@ Required field. ID of the desktop. ||
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -197,4 +198,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/api-ref/grpc/DesktopGroup/listDesktops.md b/en/cloud-desktop/api-ref/grpc/DesktopGroup/listDesktops.md
index eacc7528919..533c2082fcb 100644
--- a/en/cloud-desktop/api-ref/grpc/DesktopGroup/listDesktops.md
+++ b/en/cloud-desktop/api-ref/grpc/DesktopGroup/listDesktops.md
@@ -77,7 +77,8 @@ The default sorting order is ascending. ||
],
"users": [
{
- "subjectId": "string"
+ "subjectId": "string",
+ "subjectType": "string"
}
]
}
@@ -165,4 +166,7 @@ Required field. ||
|| subjectId | **string**
Required field. Identity of the access binding. ||
+|| subjectType | **string**
+
+Required field. Type of the access binding, e.g. userAccount, serviceAccount, system. ||
|#
\ No newline at end of file
diff --git a/en/cloud-desktop/concepts/acl.md b/en/cloud-desktop/concepts/acl.md
new file mode 100644
index 00000000000..e97293820ae
--- /dev/null
+++ b/en/cloud-desktop/concepts/acl.md
@@ -0,0 +1,39 @@
+# Access control list (ACL)
+
+{{ cloud-desktop-full-name }} leverages [{{ iam-full-name }} roles](../security/index.md) for access control.
+
+{{ cloud-desktop-name }} ACL is a list of permissions for a given [desktop group](desktops-and-groups.md).
+
+By default, an empty ACL is created for each new desktop group. A user with the `vdi.admin` [role](../security/index.md#vdi-admin) can [edit](../operations/desktop-groups/update-acl.md) an ACL.
+
+Using an ACL, you can grant desktop group access to:
+* [{{ yandex-cloud }} user](../../iam/concepts/users/accounts.md)
+* [Service account](../../iam/concepts/users/service-accounts.md)
+* [{{ org-full-name }} user group](../../organization/concepts/groups.md)
+* [Public group](../../iam/concepts/access-control/public-group.md)
+* [System group](../../iam/concepts/access-control/system-group.md)
+
+Each desktop is assigned to a specific {{ yandex-cloud }} user.
+
+To [connect to a desktop](../operations/desktops/connect.md), the user gets a unique RDP file with a built-in [IAM token](../../iam/concepts/authorization/iam-token.md). This means only a certain user can access the desktop.
+
+The IAM token [lifetime](../../iam/concepts/authorization/iam-token.md#lifetime) is 12 hours. Once it expires, the RDP file is no longer valid. To connect to the desktop, the user needs to request a new RDP file.
+
+If a user is removed from the list of {{ yandex-cloud }} users for any reason, e.g., if they were transferred to a different department or suspected of unauthorized activity, their RDP file becomes invalid regardless of when it was issued.
+
+## Example of access control in {{ cloud-desktop-name }} {#example}
+
+1. The organization administrator (user with the `organization-manager.admin` [role](../../organization/security/index.md#organization-manager-admin) for the [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud)) creates a {{ org-full-name }} [user group](../../organization/concepts/groups.md) for which a desktop group will be deployed.
+1. The {{ cloud-desktop-name }} administrator (user with the `vdi.admin` [role](../security/index.md#vdi-admin) for the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder)) [creates](../operations/desktop-groups/create.md) a desktop group and [grants](../operations/desktop-groups/update-acl.md) permissions for it to a user group.
+
+ The administrator can also create a custom [image](images.md) for the desktop group.
+
+1. The {{ cloud-desktop-name }} administrator [creates](../operations/desktops/create.md) a personal desktop for each memeber in the user group.
+1. A user group member gets authenticated using [Yandex ID](https://yandex.ru/support/id/index.html) or [Single Sign-On (SSO)](../../organization/concepts/add-federation.md) on the [User desktop showcase](showcase.md) page. The showcase displays the desktops available to a given user.
+1. From the showcase, the user group member downloads the RDP file for the appropriate desktop and [connects](../operations/desktops/connect.md) to it.
+
+## See also {#see-also}
+
+* [Getting started with {{ cloud-desktop-name }}](../quickstart.md)
+* [Access management](../security/index.md)
+* [{#T}](../operations/desktop-groups/update-acl.md)
\ No newline at end of file
diff --git a/en/cloud-desktop/concepts/desktops-and-groups.md b/en/cloud-desktop/concepts/desktops-and-groups.md
index 48d29286b27..c67aa787b0a 100644
--- a/en/cloud-desktop/concepts/desktops-and-groups.md
+++ b/en/cloud-desktop/concepts/desktops-and-groups.md
@@ -2,8 +2,10 @@
In {{ cloud-desktop-name }}, the main resource is a _desktop_. This is a virtual [Ubuntu](https://ubuntu.com/)-based workspace deployed in the {{ yandex-cloud }} infrastructure.
-One desktop is assigned to one user within an organization created in [{{ org-name }}](../../organization/). You can establish a desktop connection using the [Remote Desktop Protocol](https://en.wikipedia.org/wiki/Remote_Desktop_Protocol) (RDP).
+One desktop is assigned to one user within an organization created in [{{ org-name }}](../../organization/). Users connect to desktops over the [Remote Desktop Protocol](https://en.wikipedia.org/wiki/Remote_Desktop_Protocol) (RDP).
Each desktop belongs to a _desktop group_. All desktops in the group use the same computing resources and the same [network](../../vpc/concepts/network.md).
-All desktop and desktop group operations are [logged](../operations/logging.md).
\ No newline at end of file
+All desktop and desktop group operations are [logged](../operations/logging.md).
+
+{% include [access-options](../../_includes/cloud-desktop/access-options.md) %}
\ No newline at end of file
diff --git a/en/cloud-desktop/operations/desktop-groups/update-acl.md b/en/cloud-desktop/operations/desktop-groups/update-acl.md
index 1d619923436..ab0624b1de7 100644
--- a/en/cloud-desktop/operations/desktop-groups/update-acl.md
+++ b/en/cloud-desktop/operations/desktop-groups/update-acl.md
@@ -1,17 +1,19 @@
---
-title: Tutorial on changing access rights for a desktop group in {{ cloud-desktop-full-name }}
-description: In this tutorial, you will learn how to change access rights for a desktop group in {{ cloud-desktop-full-name }}.
+title: Tutorial on changing access permissions for a desktop group in {{ cloud-desktop-full-name }}
+description: In this tutorial, you will learn how to change access permissions for a desktop group in {{ cloud-desktop-full-name }}.
---
-# Changing permissions to a desktop group
+# Changing desktop group permissions
+
+{% include [access-options](../../../_includes/cloud-desktop/access-options.md) %}
{% list tabs group=instructions %}
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where the desktop group is located.
- 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_cloud-desktop }}**.
- 1. Click ![image](../../../_assets/console-icons/ellipsis.svg) to the right of the desktop group to change access rights for and select **{{ ui-key.yacloud.vdi.button_acl }}**.
- 1. In the **{{ ui-key.yacloud.component.acl-dialog.label_title }}** window that opens, grant or revoke the appropriate permissions.
+ 1. In the [management console]({{ link-console-main }}), select the folder the desktop group is in.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_cloud-desktop }}**.
+ 1. Click ![image](../../../_assets/console-icons/ellipsis.svg) to the right of the desktop group you want to change access permissions for and select **{{ ui-key.yacloud.vdi.button_acl }}**.
+ 1. In the **{{ ui-key.yacloud.component.acl-dialog.label_title }}** window that opens, grant or revoke the appropriate permissions.
{% endlist %}
diff --git a/en/cloud-desktop/operations/images/delete.md b/en/cloud-desktop/operations/images/delete.md
index 26206c4e3f5..05e548535e4 100644
--- a/en/cloud-desktop/operations/images/delete.md
+++ b/en/cloud-desktop/operations/images/delete.md
@@ -15,10 +15,10 @@ You cannot delete {{ cloud-desktop-name }} [system images](../../concepts/images
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder where you want to create an image.
- 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_cloud-desktop }}**.
- 1. In the left-hand panel, select ![image](../../../_assets/console-icons/layers.svg) **{{ ui-key.yacloud.vdi.label_desktop-images }}**.
- 1. Click ![image](../../../_assets/console-icons/ellipsis.svg) to the right of the custom image you want to delete and select **{{ ui-key.yacloud.common.delete }}**.
- 1. Confirm the deletion.
+ 1. In the [management console]({{ link-console-main }}), select the folder where you want to delete an image.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_cloud-desktop }}**.
+ 1. In the left-hand panel, select ![image](../../../_assets/console-icons/layers.svg) **{{ ui-key.yacloud.vdi.label_desktop-images }}**.
+ 1. Click ![image](../../../_assets/console-icons/ellipsis.svg) to the right of the custom image you want to delete and select **{{ ui-key.yacloud.common.delete }}**.
+ 1. Confirm the deletion.
{% endlist %}
diff --git a/en/cloud-desktop/quickstart.md b/en/cloud-desktop/quickstart.md
index ec0cc058847..db408a903c9 100644
--- a/en/cloud-desktop/quickstart.md
+++ b/en/cloud-desktop/quickstart.md
@@ -1,38 +1,122 @@
---
-title: How to get started with {{ cloud-desktop-name }}
+title: Getting started with {{ cloud-desktop-name }}
description: This guide describes how you can create and set up a desktop group.
---
-# Getting started with {{ cloud-desktop-name }}
+# Getting started with {{ cloud-desktop-full-name }}
{% note info %}
-This guide contains information on how to create and set up a [desktop group](concepts/desktops-and-groups.md). If you received a link to the [user desktop showcase](concepts/showcase.md) from an admin, proceed to [{#T}](#get-credentials).
+This guide contains information on how to create and set up a [desktop group](concepts/desktops-and-groups.md). If you received a link to the [user desktop showcase](concepts/showcase.md) from an administrator, go to [{#T}](#get-credentials).
{% endnote %}
-Create a {{ cloud-desktop-name }} desktop group in your cloud:
+{{ cloud-desktop-name }} is a service to manage virtual Linux-based desktop infrastructure.
+
+Create a {{ org-full-name }} [user group](../organization/concepts/groups.md) and deploy a {{ cloud-desktop-name }} [desktop group](./concepts/desktops-and-groups.md) for it:
1. [Prepare your cloud](#before-you-begin).
-1. [Create a desktop group](#create-desktop-group).
+1. [Create a user group](#create-user-group).
+1. [Deploy a desktop group](#create-desktop-group).
+1. [Configure an ACL for the desktop group](#setup-acl).
1. [Create a desktop](#create-desktop).
1. [Get the connection credentials](#get-credentials).
1. [Connect to the desktop](#connect-desktop).
## Getting started {#before-you-begin}
-1. Log in to or register in the [management console]({{ link-console-main }}). If you do not have an account yet, go to the management console and follow the guide.
-1. On the [**{{ ui-key.yacloud.component.navigation-menu.label_billing }}**]({{ link-console-billing }}) page, make sure you have a [billing account](../billing/concepts/billing-account.md) linked and it has the `ACTIVE` or `TRIAL_ACTIVE` status. If you do not yet have a billing account, [create one](../billing/quickstart/index.md#create_billing_account).
-1. If you do not have any folders yet, [create one](../resource-manager/operations/folder/create.md).
-1. To make sure your desktops have access to the internet, [set up](../vpc/operations/create-nat-gateway.md) a NAT gateway for the [subnets](../vpc/concepts/network.md#subnet) that will host them.
+1. Log in or sign up to the [management console]({{ link-console-main }}). If not signed up yet, navigate to the management console and follow the instructions.
+1. On the [**{{ ui-key.yacloud.component.navigation-menu.label_billing }}**]({{ link-console-billing }}) page, make sure you have a [billing account](../billing/concepts/billing-account.md) linked and it has the `ACTIVE` or `TRIAL_ACTIVE` status. If you do not have a billing account yet, [create one](../billing/quickstart/index.md#create_billing_account).
+1. If you do not have a folder yet, [create one](../resource-manager/operations/folder/create.md).
+1. Make sure you have the following _minimum_ roles:
+ * [organization-manager.admin](../organization/security/index.md#organization-manager-admin) for the [cloud](../resource-manager/concepts/resources-hierarchy.md#cloud): To create a user group.
+ * [vdi.admin](./security/index.md#vdi-admin) for the [folder](../resource-manager/concepts/resources-hierarchy.md#folder): To create a desktop group and assign an [ACL](./concepts/acl.md) to it.
+
+ If you have a primitive [admin](../iam/roles-reference.md#admin) role for a folder, you do not need to assign any additional roles.
+
+1. To make sure your desktops have access to the internet, [set up](../vpc/concepts/network.md#subnet) a NAT gateway for the [subnets](../vpc/operations/create-nat-gateway.md) that will host them.
+
+## Create a user group {#create-user-group}
+
+{% list tabs group=instructions %}
+
+- {{ org-name }} interface {#cloud-org}
+
+ 1. [Log in]({{ link-passport-login }}) as the organization administrator.
+ 1. Go to [{{ org-full-name }}]({{ link-org-main }}).
+ 1. In the left-hand panel, select **{{ ui-key.yacloud_org.pages.groups }}** ![persons](../_assets/console-icons/persons.svg).
+ 1. In the top-right corner, click **{{ ui-key.yacloud_org.entity.group.action_create }}** and enter a name for the user group.
+
+ The name must be unique within the [organization](../overview/roles-and-resources.md) and follow the naming requirements:
+
+ {% include [group-name-format](../_includes/organization/group-name-format.md) %}
+
+ 1. Click **{{ ui-key.yacloud_org.entity.group.action_create }}**.
+ 1. In the **{{ ui-key.yacloud_org.entity.group.title_tab-members }}** tab that opens, click **{{ ui-key.yacloud_org.entity.group.action_add-member }}**.
+ 1. In the **{{ ui-key.yacloud_org.component.subject-select-dialog.title_dialog }}** window, select the users to deploy a desktop group for.
+ 1. Click **{{ ui-key.yacloud_org.component.subject-select-dialog.action_apply }}**.
+
+{% endlist %}
+
+## Deploy a desktop group {#create-desktop-group}
+
+{% list tabs group=instructions %}
+
+- Management console {#console}
-## Create a desktop group {#create-desktop-group}
+ 1. In the [management console]({{ link-console-main }}), select the folder to create your desktop group in.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_cloud-desktop }}**.
+ 1. Click **{{ ui-key.yacloud.vdi.button_empty-create-desktop-group }}**.
+ 1. Enter a name for the desktop group.
+ 1. Select `Ubuntu 20.04 LTS` for the OS [image](./concepts/images.md).
+ 1. Under **{{ ui-key.yacloud.vdi.section_disks }}**:
+ * Select `SSD` for the boot and working [disk](./concepts/disks.md) [types](../compute/concepts/disk.md#disks-types).
+ * Set the boot disk size to `60 GB`.
+ * Set the working disk size to `4 GB`.
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
+ * Set the number of vCPU cores to `2`.
+ * Select `100%` for the [guaranteed vCPU share](../compute/concepts/performance-levels.md).
+ * Set RAM to `8 GB`.
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**, select the [cloud network](../vpc/concepts/network.md#network) and [subnets](../vpc/concepts/network.md#subnet) to host desktops.
+ 1. Click **{{ ui-key.yacloud.common.create }}**.
-{% include [create-desktop-group](../_includes/cloud-desktop/create-desktop-group.md) %}
+{% endlist %}
+
+## Configure an ACL for the desktop group {#setup-acl}
+
+{% include [access-options](../_includes/cloud-desktop/access-options.md) %}
+
+{% list tabs group=instructions %}
+
+- Management console {#console}
+
+ 1. To the right of the desktop group created earlier, click ![image](../_assets/console-icons/ellipsis.svg) and select **{{ ui-key.yacloud.vdi.button_acl }}**.
+ 1. In the **{{ ui-key.yacloud.component.acl-dialog.label_title }}** window that appears, select the user group you created earlier, specify the `vdi.viewer` [role](./security/index.md#vdi-viewer) for it, and click **{{ ui-key.yacloud.common.add }}**.
+ 1. Click **{{ ui-key.yacloud.common.save }}**.
+
+{% endlist %}
## Create a desktop {#create-desktop}
-{% include [create-desktop](../_includes/cloud-desktop/create-desktop.md) %}
+{% list tabs group=instructions %}
+
+- Management console {#console}
+
+ 1. In the left-hand panel, select ![image](../_assets/console-icons/display.svg) **{{ ui-key.yacloud.vdi.label_desktops }}**.
+ 1. Click **{{ ui-key.yacloud.vdi.button_desktop-create }}**.
+ 1. Select the desktop group you created earlier.
+ 1. Specify the subnet to place the desktop in.
+
+ {% note info %}
+
+ To provide your desktop with internet access, make sure to [configure a NAT gateway](../vpc/operations/create-nat-gateway.md) in the subnet.
+
+ {% endnote %}
+
+ 1. Specify the user that the desktop is created for.
+ 1. Click **{{ ui-key.yacloud.common.create }}**.
+
+{% endlist %}
## Get the connection credentials {#get-credentials}
@@ -40,6 +124,6 @@ Create a {{ cloud-desktop-name }} desktop group in your cloud:
## Connect to the desktop {#connect-desktop}
-You can establish a desktop connection using the [Remote Desktop Protocol](https://en.wikipedia.org/wiki/Remote_Desktop_Protocol) (RDP).
+To establish a desktop connection, use the [Remote Desktop Protocol](https://en.wikipedia.org/wiki/Remote_Desktop_Protocol) (RDP).
{% include [desktop-connect](../_includes/cloud-desktop/desktop-connect.md) %}
diff --git a/en/cloud-desktop/security/index.md b/en/cloud-desktop/security/index.md
index 3cfa7a7d900..c3549f437cc 100644
--- a/en/cloud-desktop/security/index.md
+++ b/en/cloud-desktop/security/index.md
@@ -3,7 +3,9 @@ title: Access management in {{ cloud-desktop-full-name }}
description: 'Access management in {{ cloud-desktop-full-name }}. Permissions are granted when assigning a role. You can assign a role for an organization, folder, or cloud: all permissions from a cloud or organization are inherited.'
---
-# Access management in {{ cloud-desktop-name }}
+# Access management in {{ cloud-desktop-full-name }}
+
+In {{ cloud-desktop-name }}, access control is achieved by using {{ iam-full-name }} roles and [access control lists (ACL)](../concepts/acl.md). See the [example of using access control mechanisms](../concepts/acl.md#example).
In this section, you will learn:
* [Which resources you can assign a role for](#resources).
diff --git a/en/cloud-desktop/toc.yaml b/en/cloud-desktop/toc.yaml
index f4123839bd6..be62429ad6c 100644
--- a/en/cloud-desktop/toc.yaml
+++ b/en/cloud-desktop/toc.yaml
@@ -48,6 +48,8 @@ items:
items:
- name: Desktops and their groups
href: concepts/desktops-and-groups.md
+ - name: Access control lists (ACLs)
+ href: concepts/acl.md
- name: Disks
href: concepts/disks.md
- name: Images
diff --git a/en/code-assistant/concepts/index.md b/en/code-assistant/concepts/index.md
index 708daca25ec..99655507195 100644
--- a/en/code-assistant/concepts/index.md
+++ b/en/code-assistant/concepts/index.md
@@ -8,6 +8,8 @@
LLMs that are used in {{ ca-name }} have been fine-tuned based on the open-source code corpus.
+The {{ ca-name }} plugin is available for [Visual Studio Code](https://code.visualstudio.com/) and [JetBrains IDE](https://www.jetbrains.com/ides/) versions 2024.1 and 2024.2.
+
{% note info %}
To work with {{ ca-name }}, you need continuous internet access.
@@ -27,4 +29,5 @@ The code analysis is running using the {{ yandex-cloud }} computing resources, w
## See also {#see-also}
* [{#T}](../quickstart.md)
-* [Terms of Use of {{ ca-full-name }}](https://yandex.com/legal/cloud_terms_code_assistant/)
+* [{{ ca-full-name }} terms of use](https://yandex.com/legal/cloud_terms_code_assistant/)
+
diff --git a/en/code-assistant/qa.md b/en/code-assistant/qa.md
new file mode 100644
index 00000000000..e406f2ceef3
--- /dev/null
+++ b/en/code-assistant/qa.md
@@ -0,0 +1,34 @@
+
+# FAQ about {{ ca-full-name }}
+
+#### Authentication error in Visual Studio Code {#crypto-is-not-defined}
+
+Error message:
+
+```text
+crypto is not defined
+```
+
+This is an error returned by the internal IDE library used for authentication in {{ yandex-cloud }}. To resolve this error, [upgrade](https://code.visualstudio.com/docs/setup/setup-overview#_update-cadence) your Visual Studio Code version.
+
+{% cut "Example of a Visual Studio Code build compatible with the plugin" %}
+
+```text
+Version: 1.92.2 (system setup)
+Commit: fee1edb8d6d72a0ddff41e5f71a671c23ed924b9
+Date: 2024-08-14T17:29:30.058Z
+Electron: 30.1.2
+ElectronBuildId: 9870757
+Chromium: 124.0.6367.243
+Node.js: 20.14.0
+V8: 12.4.254.20-electron.0
+OS: Windows_NT x64 10.0.19045
+```
+
+{% endcut %}
+
+See also [How to find out your IDE version](https://code.visualstudio.com/docs/setup/setup-overview#_how-do-i-know-which-version-im-running).
+
+#### Do I need a billing account to work with {{ ca-name }}? {#billing-account}
+
+You **do not need** a [billing account](../billing/concepts/billing-account.md).
diff --git a/en/code-assistant/quickstart.md b/en/code-assistant/quickstart.md
index 37a681db8d9..a42383923dc 100644
--- a/en/code-assistant/quickstart.md
+++ b/en/code-assistant/quickstart.md
@@ -33,7 +33,7 @@ If your [organization](../overview/roles-and-resources.md) in {{ yandex-cloud }}
1. Download the [{{ ca-name }} plugin]({{ link-ca-vscode }}) for [Visual Studio Code](https://code.visualstudio.com/).
- If you cannot download it for any reason, contact your system administrator so that they open network access to {{ yandex-cloud }} resources.
+ {% include [unable-to-download](../_includes/code-assistant/unable-to-download.md) %}
1. Install the plugin:
1. Open Visual Studio Code.
@@ -56,6 +56,41 @@ If your [organization](../overview/roles-and-resources.md) in {{ yandex-cloud }}
{{ ca-name }} is now enabled, ready to go, and displayed in the bottom panel of the editor as ![image](../_assets/code-assistant/vsc-icon-small.svg).
+- JetBrains IDE {#jb}
+
+ {% note warning %}
+
+ The supported IDE versions are 2024.1 and 2024.2.
+
+ {% endnote %}
+
+ 1. Download the {{ ca-name }} plugin for your [JetBrains IDE](https://www.jetbrains.com/ides/) version:
+ * [2024.1]({{ link-ca-jb-2024-1 }})
+ * [2024.2]({{ link-ca-jb-2024-2 }})
+
+ {% include [unable-to-download](../_includes/code-assistant/unable-to-download.md) %}
+
+ 1. Install the plugin:
+ 1. Open the IDE.
+ 1. Open settings by pressing **Ctrl** + **Alt** + **S** for Windows or Linux or **Command** + **,** for macOS.
+ 1. Go to **Plugins**.
+ 1. Click ![image](../_assets/console-icons/gear.svg) and select **Install Plugin from Disk...**.
+ 1. Select the plugin file you downloaded previously.
+ 1. Confirm that you would like to use a third-party plugin and click **OK**.
+
+ 1. To get started with {{ ca-name }}, get authenticated in {{ yandex-cloud }}:
+ 1. In the **Yandex Code Assistant OAuth** pop-up window, click **Yandex Code Assist: Login**.
+ 1. In your browser, go to the {{ yandex-cloud }} [management console]({{ link-console-main }}).
+ 1. Go back to the IDE.
+
+ The `Code Assist plugin started` message means the plugin is active and ready for use.
+
+ {% note tip %}
+
+ If the plugin failed to start, or you do not see suggestions from {{ ca-name }}, try restarting the IDE.
+
+ {% endnote %}
+
{% endlist %}
## Test the plugin {#work-with-plugin}
@@ -72,61 +107,68 @@ To work with {{ ca-name }}, you will need continuous internet access.
How to work with {{ ca-name }}:
-{% list tabs group=ide %}
+1. Open the IDE and create a test file named `server.cpp` with the following contents:
-- Visual Studio Code {#vscode}
+ ```cpp
+ // simple web-server to work with sockets
- 1. Open Visual Studio Code and create the `server.cpp` test file with the following content:
+ #include
+ #include
+ #include
+ #include
+ #include
- ```cpp
- // simple web-server to work with sockets
+ using namespace std;
- #include
- #include
- #include
- #include
- #include
+ int main() {
- using namespace std;
+ }
+ ```
- int main() {
+1. In the `int main()` section, start typing something, e.g., `//create socket`. See the {{ ca-name }} suggestion:
- }
- ```
+ ```cpp
+ ...
+ int main() {
- 1. In the `int main()` section, start typing something, e.g., `//create socket`. See the {{ ca-name }} suggestion:
+ //create socket
+ int sockfd = socket(AF_INET, SOCK_STREAM, 0);
- ```cpp
- ...
- int main() {
+ }
+ ```
- //create socket
- int sockfd = socket(AF_INET, SOCK_STREAM, 0);
+1. Select an action for the suggestion:
- }
- ```
+ {% list tabs group=ide %}
- Click **Tab** to accept the suggestion.
+ - Visual Studio Code {#vscode}
- To start accepting the suggestion word by word, press **Ctrl** + **→** for Windows or Linux or **Command** + **→** for macOS.
+ * Click **Tab** to accept the suggestion.
+ * To start accepting the suggestion word by word, press **Ctrl** + **→** for Windows or Linux or **Command** + **→** for macOS.
+ * To discard the suggestion, press **Esc**.
+ * If there are multiple suggestions, you can switch between them using **Alt** + **[** and **Alt** + **]** for Windows or Linux or **Option** + **[** and **Option** + **]** for macOS.
- To discard the suggestion, press **Esc**.
+ - JetBrains IDE {#jb}
- If there are various suggestions, you can switch between them using **Alt** + **[** and **Alt** + **]** for Windows or Linux or **Option** + **[** and **Option** + **]** for macOS.
+ * Click **Tab** to accept the suggestion.
+ * To discard the suggestion, press **Esc**.
-{% endlist %}
+ {% endlist %}
You can also watch our {{ ca-name }} video tutorial [here](https://cloud.yandex.ru/services/code-assistant).
## Manage the plugin {#manage-plugin}
-### Enable or disable {{ ca-name }} {#enable-disable-plugin}
+### Enable or disable auto suggestions {#enable-disable-plugin}
+
+You can enable or disable auto suggestions only in Visual Studio Code.
{% list tabs group=ide %}
- Visual Studio Code {#vscode}
- To enable or disable {{ ca-name }}, click ![image](../_assets/code-assistant/vsc-icon-small.svg) on the Visual Studio Code bottom panel.
+ 1. Click ![image](../_assets/code-assistant/vsc-icon-small.svg) in the Visual Studio Code bottom panel.
+ 1. In the list that opens, select ![image](../_assets/console-icons/triangle-right.svg) **Enable autotrigger** or ![image](../_assets/console-icons/stop.svg) **Disable autotrigger**.
{% endlist %}
@@ -138,6 +180,13 @@ You can also watch our {{ ca-name }} video tutorial [here](https://cloud.yandex.
Download the [{{ ca-name }} current version]({{ link-ca-vscode }}) for Visual Studio Code and [install it](#install-plugin).
+- JetBrains IDE {#jb}
+
+ 1. Download the appropriate {{ ca-name }} plugin for your JetBrains IDE version:
+ * [2024.1]({{ link-ca-jb-2024-1 }})
+ * [2024.2]({{ link-ca-jb-2024-2 }})
+ 1. [Install the plugin](#install-plugin).
+
{% endlist %}
### Remove the plugin {#remove-plugin}
@@ -149,6 +198,13 @@ You can also watch our {{ ca-name }} video tutorial [here](https://cloud.yandex.
1. Open the list of installed plugins by pressing **Ctrl** + **Shift** + **X** for Windows or Linux or **Command** + **Shift** + **X** for macOS.
1. In the {{ ca-full-name }} row, click ![image](../_assets/console-icons/gear.svg) and select **Uninstall**.
+- JetBrains IDE {#jb}
+
+ 1. Open settings by pressing **Ctrl** + **Alt** + **S** for Windows or Linux or **Command** + **,** for macOS.
+ 1. Go to the **Plugins** section and select the {{ ca-full-name }} plugin.
+ 1. In the plugin description section, click ![image](../_assets/console-icons/chevron-down.svg) and select **Uninstall**.
+ 1. Confirm deletion and click **OK**.
+
{% endlist %}
### See also {#see-also}
diff --git a/en/code-assistant/toc.yaml b/en/code-assistant/toc.yaml
index 44b60b51eed..11022fff654 100644
--- a/en/code-assistant/toc.yaml
+++ b/en/code-assistant/toc.yaml
@@ -5,14 +5,14 @@ items:
- name: Getting started
href: quickstart.md
- name: Concepts
- items:
- - name: Overview
- href: concepts/index.md
- - name: Quotas and limits
- href: concepts/limits.md
+ href: concepts/index.md
+ - name: Quotas and limits
+ href: concepts/limits.md
- name: Access management
href: security/index.md
- name: Pricing policy
href: pricing.md
+ - name: FAQ
+ href: qa.md
base: en/code-assistant
deepBase: 2
diff --git a/en/compute/_includes_service/create-instance-via-console-dsvm.md b/en/compute/_includes_service/create-instance-via-console-dsvm.md
index 2cc8d392be2..fc04096bc85 100644
--- a/en/compute/_includes_service/create-instance-via-console-dsvm.md
+++ b/en/compute/_includes_service/create-instance-via-console-dsvm.md
@@ -4,49 +4,30 @@ Creating an instance from a public [DSVM](/marketplace/products/f2e4v304qn35mhil
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the folder to create the virtual machine in.
- 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
- 1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
- * Enter a name and description for the VM. The naming requirements are as follows:
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder) to create your VM in.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
+ 1. In the left-hand panel, select ![image](../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
+ 1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, go to the **{{ ui-key.yacloud.compute.instances.create.image_value_marketplace }}** tab and select the [DSVM](/marketplace/products/yc/dsvm) image.
+ 1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select an [availability zone](../../overview/concepts/geo-scope.md) to place your VM in.
+ 1. (Optional) Configure the boot [disk](../concepts/disk.md) in the **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}** section:
- {% include [name-format](../../_includes/name-format.md) %}
-
- {% include [name-fqdn](../../_includes/compute/name-fqdn.md) %}
-
- * Select an [availability zone](../../overview/concepts/geo-scope.md) to put your virtual machine in.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, go to the **{{ ui-key.yacloud.compute.instances.create.image_value_marketplace }}** tab and select the [DSVM](/marketplace/products/yc/dsvm) image.
- 1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, select the **{{ ui-key.yacloud.compute.instances.create.section_disk }}** tab and configure a boot disk:
* Select the [disk type](../concepts/disk.md#disks_types).
* Specify the required disk size.
- 1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, select the **{{ ui-key.yacloud.compute.nfs.label_filesystems }}** tab and attach the [file storage](../concepts/filesystem.md). [Create](../operations/filesystem/create.md) the storages first.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../concepts/vm-platforms.md).
- * Specify the [guaranteed share](../../compute/concepts/performance-levels.md) and the required number of vCPUs as well as the amount of RAM.
- * Make your VM [preemptible](../concepts/preemptible-vm.md), if required.
- * (Optional) Enable a [software-accelerated network](../concepts/software-accelerated-network.md).
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
- * Enter a subnet ID or select a [cloud network](../../vpc/concepts/network.md#network) from the list. You can select the search scope: in the current folder or in all folders. If you do not have a network, click ![image](../../_assets/console-icons/plus.svg) **{{ ui-key.yacloud.component.vpc.network-select.button_create-network }}** to create one:
- * In the window that opens, enter the folder to host the new network, as well as the network name.
- * In the **{{ ui-key.yacloud.vpc.networks.create.field_advanced }}** field, enable **{{ ui-key.yacloud.vpc.networks.create.field_is-default }}** (each network must have at least one [subnet](../../vpc/concepts/network.md#subnet)).
- * Click **{{ ui-key.yacloud.vpc.networks.create.button_create }}**.
- * In the **{{ ui-key.yacloud.component.compute.network-select.field_external }}** field, choose a method for assigning an IP address:
- * `{{ ui-key.yacloud.component.compute.network-select.switch_auto }}`: Assign a random IP address from the {{ yandex-cloud }} IP pool.
- * `{{ ui-key.yacloud.component.compute.network-select.switch_list }}`: Select a public IP address from the list of previously reserved static addresses. For more information, see [{#T}](../../vpc/operations/set-static-ip.md).
- * `{{ ui-key.yacloud.component.compute.network-select.switch_none }}`: Do not assign a public IP address.
- * (Optional) Enable [DDoS protection](../../vpc/ddos-protection/index.md) in the **{{ ui-key.yacloud.component.compute.network-select.field_advanced }}** field, if required.
- * Select the [appropriate security groups](../../vpc/concepts/security-groups.md) in the **{{ ui-key.yacloud.component.compute.network-select.field_security-groups }}** field.
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data required to access the VM:
- * (Optional) Select or create a [service account](../../iam/concepts/index.md#sa). With a service account, you can flexibly configure access rights for your resources.
- * Enter the username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
- * In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../operations/vm-connect/ssh.md#creating-ssh-keys) file.
- * (Optional) Enable access to the [serial console](../operations/index.md#serial-console) in the **{{ ui-key.yacloud.compute.instances.create.field_access-advanced }}** field, if required.
-
- {% include [vm-connect-linux](../../_includes/vm-connect-linux.md) %}
-
- 1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
-
- The virtual machine will appear in the list. When a VM is created, it is assigned an [IP address](../../vpc/concepts/address) and [host name](../../vpc/concepts/address.md#fqdn) (FQDN).
+
+ 1. {% include [section-storages-filesystem](../../_includes/compute/create/section-storages-filesystem.md) %}
+ 1. {% include [section-platform](../../_includes/compute/create/section-platform.md) %}
+ 1. {% include [network-settings](../../_includes/compute/create/section-network.md) %}
+ 1. {% include [section-access](../../_includes/compute/create/section-access.md) %}
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name:
+
+ {% include [name-format](../../_includes/name-format.md) %}
+
+ {% include [name-fqdn](../../_includes/compute/name-fqdn.md) %}
+
+ 1. {% include [section-additional](../../_includes/compute/create/section-additional.md) %}
+ 1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
+
+ The virtual machine will appear in the list. When a VM is created, it is assigned an [IP address](../../vpc/concepts/address) and [host name](../../vpc/concepts/address.md#fqdn) (FQDN).
{% endlist %}
diff --git a/en/compute/_includes_service/create-instance-via-console-linux.md b/en/compute/_includes_service/create-instance-via-console-linux.md
index 1cbb87dd2d5..22f575135d9 100644
--- a/en/compute/_includes_service/create-instance-via-console-linux.md
+++ b/en/compute/_includes_service/create-instance-via-console-linux.md
@@ -1,77 +1,32 @@
1. In the [management console]({{ link-console-main }}), select the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder) to create your VM in.
1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
+1. In the left-hand panel, select ![image](../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
-1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
- * Enter a name and description for the VM. The naming requirements are as follows:
-
- {% include [name-format](../../_includes/name-format.md) %}
-
- {% include [name-fqdn](../../_includes/compute/name-fqdn.md) %}
-
- * Select an [availability zone](../../overview/concepts/geo-scope.md) to place your VM in.
1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select an [image](../concepts/image.md) and a Linux-based OS version.
-1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, select the **{{ ui-key.yacloud.compute.instances.create.section_disk }}** tab and configure a boot [disk](../concepts/disk.md):
- * Select the [disk type](../concepts/disk.md#disks_types).
- * Specify the required disk size.
-
-
- * {% include [encryption-section-boot](../../_includes/compute/encryption-section-boot.md) %}
-
-
- If you want to create a VM from an existing disk, under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, [add a disk](../operations/vm-create/create-from-disks.md):
- * Click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
- * Enter the disk name.
- * Select the [disk type](../concepts/disk.md#disks_types).
- * Specify the required block size.
- * Specify the required disk size.
-
-
- * {% include [encryption-section-secondary](../../_includes/compute/encryption-section-secondary.md) %}
-
-
- * (Optional) Enable the **{{ ui-key.yacloud.compute.field_additional }}** option in the **{{ ui-key.yacloud.compute.field_disk-autodelete }}** field if you need to automatically delete the disk when deleting the VM it will be attached to.
- * In the **{{ ui-key.yacloud.compute.instances.create-disk.field_source }}** field, select `{{ ui-key.yacloud.compute.instances.create-disk.value_source-disk }}`.
- * Click **{{ ui-key.yacloud.compute.instances.create-disk.button_create }}**.
-
-
-1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}**, select the **{{ ui-key.yacloud.compute.nfs.label_filesystems }}** tab and attach the [file storage](../concepts/filesystem.md):
- * Click **{{ ui-key.yacloud.compute.nfs.button_attach-filesystem-to-the-instance }}**.
- * In the window that opens, specify the file storage.
- * Enter the device name.
- * Click **{{ ui-key.yacloud.compute.nfs.button_attach-filesystem-to-the-instance }}**.
-
-
-1. Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../concepts/vm-platforms.md).
- * Specify the [guaranteed share](../../compute/concepts/performance-levels.md) and the required number of vCPUs, as well as the amount of RAM.
- * If required, make your VM [preemptible](../concepts/preemptible-vm.md).
- * (Optional) Enable a [software-accelerated network](../concepts/software-accelerated-network.md).
-
-1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
-
- {% include [network-settings](../../_includes/compute/network-settings.md) %}
-
-
-1. {% include [backup-info](../../_includes/compute/backup-info.md) %}
+ {% include [change-custom-disk-settings-image](../../_includes/compute/create/change-custom-disk-settings-image.md) %}
-1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the instance:
- * (Optional) Select or create a [service account](../../iam/concepts/users/service-accounts.md). With a service account, you can flexibly configure access rights for your resources.
- * Enter the username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
+1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select an [availability zone](../../overview/concepts/geo-scope.md) to place your VM in.
+1. (Optional) Configure the boot [disk](../concepts/disk.md) in the **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}** section:
- {% note alert %}
+ * Select the [disk type](../concepts/disk.md#disks_types).
+ * Specify the required disk size.
+ * {% include [encryption-section-secondary](../../_includes/compute/encryption-section-secondary.md) %}
- Do not use the `root` username or other names reserved by the OS. To perform operations that require superuser permissions, use the `sudo` command.
+ {% include [change-custom-disk-settings-storages](../../_includes/compute/create/change-custom-disk-settings-storages.md) %}
- {% endnote %}
+1. {% include [section-storages-secondary-disk](../../_includes/compute/create/section-storages-secondary-disk.md) %}
+1. {% include [section-storages-filesystem](../../_includes/compute/create/section-storages-filesystem.md) %}
+1. {% include [section-platform](../../_includes/compute/create/section-platform.md) %}
+1. {% include [network-settings](../../_includes/compute/create/section-network.md) %}
+1. {% include [section-access](../../_includes/compute/create/section-access.md) %}
+1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name:
- * In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../operations/vm-connect/ssh.md#creating-ssh-keys) file. You need to [create](../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) a key pair for the SSH connection yourself.
- * If required, grant access to the [serial console](../operations/serial-console/index.md).
- * If you want to add several users with SSH keys to the VM at the same time, [specify](../concepts/vm-metadata.md#how-to-send-metadata) these users' data under **{{ ui-key.yacloud.common.metadata }}**. You can also use metadata to [install additional software](../operations/vm-create/create-with-cloud-init-scripts.md) on a VM when creating it.
+ {% include [name-format](../../_includes/name-format.md) %}
- {% include [vm-connect-linux](../../_includes/vm-connect-linux.md) %}
+ {% include [name-fqdn](../../_includes/compute/name-fqdn.md) %}
-1. (Optional) Under **{{ ui-key.yacloud.compute.instances.create.section_placement }}**, select a VM [placement group](../concepts/placement-groups.md).
+1. {% include [section-additional](../../_includes/compute/create/section-additional.md) %}
1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
The VM appears in the list. Once created, the VM is assigned an [IP address](../../vpc/concepts/address.md) and a [host name](../../vpc/concepts/address.md#fqdn) (FQDN).
\ No newline at end of file
diff --git a/en/compute/api-ref/Disk/create.md b/en/compute/api-ref/Disk/create.md
index d562dfac9e7..49cbebcf7da 100644
--- a/en/compute/api-ref/Disk/create.md
+++ b/en/compute/api-ref/Disk/create.md
@@ -46,7 +46,8 @@ POST https://compute.{{ api-host }}/compute/v1/disks
},
"generation2Features": "object"
// end of the list of possible fields
- }
+ },
+ "kmsKeyId": "string"
}
```
@@ -101,6 +102,9 @@ List of IDs of the snapshot schedules to attach the disk to. ||
Specify the overrides to hardware_generation of a source disk, image or snapshot,
or to the default values if the source does not define it. ||
+|| kmsKeyId | **string**
+
+ID of KMS key for disk encryption. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -200,6 +204,10 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -381,6 +389,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy2}
@@ -422,4 +433,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Disk/get.md b/en/compute/api-ref/Disk/get.md
index 4ad8c8998f4..54b052faf5b 100644
--- a/en/compute/api-ref/Disk/get.md
+++ b/en/compute/api-ref/Disk/get.md
@@ -63,6 +63,10 @@ To get the disk ID use a [DiskService.List](/docs/compute/api-ref/Disk/list#List
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -145,6 +149,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -186,4 +193,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Disk/list.md b/en/compute/api-ref/Disk/list.md
index 0a3f1ee43a2..3b2aceaa927 100644
--- a/en/compute/api-ref/Disk/list.md
+++ b/en/compute/api-ref/Disk/list.md
@@ -88,6 +88,10 @@ The default sorting order is ascending ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -190,6 +194,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -231,4 +238,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Disk/move.md b/en/compute/api-ref/Disk/move.md
index 571a8cd358b..468880916b7 100644
--- a/en/compute/api-ref/Disk/move.md
+++ b/en/compute/api-ref/Disk/move.md
@@ -99,6 +99,10 @@ To get the folder ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -286,6 +290,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -327,4 +334,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Disk/relocate.md b/en/compute/api-ref/Disk/relocate.md
index 642782ac0c6..01c8c9d94c8 100644
--- a/en/compute/api-ref/Disk/relocate.md
+++ b/en/compute/api-ref/Disk/relocate.md
@@ -119,6 +119,10 @@ Placement group ID. ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -306,6 +310,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy2}
@@ -347,4 +354,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Disk/update.md b/en/compute/api-ref/Disk/update.md
index d220250e11f..c07900e47dd 100644
--- a/en/compute/api-ref/Disk/update.md
+++ b/en/compute/api-ref/Disk/update.md
@@ -136,6 +136,10 @@ Placement group ID. ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -317,6 +321,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy2}
@@ -358,4 +365,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/DiskPlacementGroup/listDisks.md b/en/compute/api-ref/DiskPlacementGroup/listDisks.md
index 12c13825efc..a0d8e207867 100644
--- a/en/compute/api-ref/DiskPlacementGroup/listDisks.md
+++ b/en/compute/api-ref/DiskPlacementGroup/listDisks.md
@@ -80,6 +80,10 @@ returned by a previous list request. ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -182,6 +186,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -223,4 +230,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Image/create.md b/en/compute/api-ref/Image/create.md
index 2ea30703a6d..d84d68e61e9 100644
--- a/en/compute/api-ref/Image/create.md
+++ b/en/compute/api-ref/Image/create.md
@@ -214,6 +214,10 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -386,6 +390,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os2}
@@ -432,4 +439,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Image/get.md b/en/compute/api-ref/Image/get.md
index 9807b2ed8a1..ecbdc4a07ab 100644
--- a/en/compute/api-ref/Image/get.md
+++ b/en/compute/api-ref/Image/get.md
@@ -55,6 +55,10 @@ To get the image ID, use a [ImageService.List](/docs/compute/api-ref/Image/list#
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -128,6 +132,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -174,4 +181,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Image/getLatestByFamily.md b/en/compute/api-ref/Image/getLatestByFamily.md
index 60a8b5a449a..ee1c4659591 100644
--- a/en/compute/api-ref/Image/getLatestByFamily.md
+++ b/en/compute/api-ref/Image/getLatestByFamily.md
@@ -56,6 +56,10 @@ Name of the image family to search for. ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -129,6 +133,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -175,4 +182,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Image/list.md b/en/compute/api-ref/Image/list.md
index 74aeba77771..7891c5785b6 100644
--- a/en/compute/api-ref/Image/list.md
+++ b/en/compute/api-ref/Image/list.md
@@ -80,6 +80,10 @@ The default sorting order is ascending ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -173,6 +177,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -219,4 +226,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Image/update.md b/en/compute/api-ref/Image/update.md
index 62c81442cde..f06c3ed78c4 100644
--- a/en/compute/api-ref/Image/update.md
+++ b/en/compute/api-ref/Image/update.md
@@ -112,6 +112,10 @@ Existing set of `labels` is completely replaced by the provided set. ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -284,6 +288,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -330,4 +337,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Instance/attachDisk.md b/en/compute/api-ref/Instance/attachDisk.md
index ddbd1205a4c..f969024f1d3 100644
--- a/en/compute/api-ref/Instance/attachDisk.md
+++ b/en/compute/api-ref/Instance/attachDisk.md
@@ -37,15 +37,16 @@ To get the instance ID, use a [InstanceService.List](/docs/compute/api-ref/Insta
"description": "string",
"typeId": "string",
"size": "string",
- "blockSize": "string",
+ // Includes only one of the fields `imageId`, `snapshotId`
+ "imageId": "string",
+ "snapshotId": "string",
+ // end of the list of possible fields
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "string"
},
- // Includes only one of the fields `imageId`, `snapshotId`
- "imageId": "string",
- "snapshotId": "string"
- // end of the list of possible fields
+ "blockSize": "string",
+ "kmsKeyId": "string"
},
"diskId": "string"
// end of the list of possible fields
@@ -110,12 +111,6 @@ To get a list of available disk types, use the [yandex.cloud.compute.v1.DiskType
|| size | **string** (int64)
Required field. Size of the disk, specified in bytes. ||
-|| blockSize | **string** (int64)
-
-Block size of the disk, specified in bytes. The default is 4096. ||
-|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
-
-Placement policy configuration. ||
|| imageId | **string**
ID of the image to create the disk from.
@@ -126,6 +121,15 @@ Includes only one of the fields `imageId`, `snapshotId`. ||
ID of the snapshot to restore the disk from.
Includes only one of the fields `imageId`, `snapshotId`. ||
+|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
+
+Placement policy configuration. ||
+|| blockSize | **string** (int64)
+
+Block size of the disk, specified in bytes. The default is 4096. ||
+|| kmsKeyId | **string**
+
+ID of KMS key for disk encryption ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
diff --git a/en/compute/api-ref/Instance/create.md b/en/compute/api-ref/Instance/create.md
index 20c3fe5f4c4..d8fdda4b7d8 100644
--- a/en/compute/api-ref/Instance/create.md
+++ b/en/compute/api-ref/Instance/create.md
@@ -47,15 +47,16 @@ POST https://compute.{{ api-host }}/compute/v1/instances
"description": "string",
"typeId": "string",
"size": "string",
- "blockSize": "string",
+ // Includes only one of the fields `imageId`, `snapshotId`
+ "imageId": "string",
+ "snapshotId": "string",
+ // end of the list of possible fields
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "string"
},
- // Includes only one of the fields `imageId`, `snapshotId`
- "imageId": "string",
- "snapshotId": "string"
- // end of the list of possible fields
+ "blockSize": "string",
+ "kmsKeyId": "string"
},
"diskId": "string"
// end of the list of possible fields
@@ -71,15 +72,16 @@ POST https://compute.{{ api-host }}/compute/v1/instances
"description": "string",
"typeId": "string",
"size": "string",
- "blockSize": "string",
+ // Includes only one of the fields `imageId`, `snapshotId`
+ "imageId": "string",
+ "snapshotId": "string",
+ // end of the list of possible fields
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "string"
},
- // Includes only one of the fields `imageId`, `snapshotId`
- "imageId": "string",
- "snapshotId": "string"
- // end of the list of possible fields
+ "blockSize": "string",
+ "kmsKeyId": "string"
},
"diskId": "string"
// end of the list of possible fields
@@ -393,12 +395,6 @@ To get a list of available disk types, use the [yandex.cloud.compute.v1.DiskType
|| size | **string** (int64)
Required field. Size of the disk, specified in bytes. ||
-|| blockSize | **string** (int64)
-
-Block size of the disk, specified in bytes. The default is 4096. ||
-|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
-
-Placement policy configuration. ||
|| imageId | **string**
ID of the image to create the disk from.
@@ -409,6 +405,15 @@ Includes only one of the fields `imageId`, `snapshotId`. ||
ID of the snapshot to restore the disk from.
Includes only one of the fields `imageId`, `snapshotId`. ||
+|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
+
+Placement policy configuration. ||
+|| blockSize | **string** (int64)
+
+Block size of the disk, specified in bytes. The default is 4096. ||
+|| kmsKeyId | **string**
+
+ID of KMS key for disk encryption ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
diff --git a/en/compute/api-ref/Instance/index.md b/en/compute/api-ref/Instance/index.md
index 608d02ce8e8..c38bc32621f 100644
--- a/en/compute/api-ref/Instance/index.md
+++ b/en/compute/api-ref/Instance/index.md
@@ -16,7 +16,7 @@ A set of methods for managing Instance resources.
|| [Create](create.md) | Creates an instance in the specified folder. ||
|| [Update](update.md) | Updates the specified instance. ||
|| [Delete](delete.md) | Deletes the specified instance. ||
-|| [UpdateMetadata](updateMetadata.md) | Updates the metadata of the specified instance. ||
+|| [UpdateMetadata](updateMetadata.md) | Updates the metadata of the specified instance. For more information on metadata, see [VM metadata](/docs/compute/concepts/vm-metadata). ||
|| [GetSerialPortOutput](getSerialPortOutput.md) | Returns the serial port output of the specified Instance resource. ||
|| [Stop](stop.md) | Stops the running instance. ||
|| [Start](start.md) | Starts the stopped instance. ||
diff --git a/en/compute/api-ref/Instance/updateMetadata.md b/en/compute/api-ref/Instance/updateMetadata.md
index c07101c0899..58e9f7be1c4 100644
--- a/en/compute/api-ref/Instance/updateMetadata.md
+++ b/en/compute/api-ref/Instance/updateMetadata.md
@@ -5,7 +5,7 @@ sourcePath: en/_api-ref/compute/v1/api-ref/Instance/updateMetadata.md
# Compute Cloud API, REST: Instance.UpdateMetadata {#UpdateMetadata}
-Updates the metadata of the specified instance.
+Updates the metadata of the specified instance. For more information on metadata, see [VM metadata](/docs/compute/concepts/vm-metadata).
## HTTP request
diff --git a/en/compute/api-ref/Snapshot/create.md b/en/compute/api-ref/Snapshot/create.md
index 3ed1eaefe68..469bf549b3b 100644
--- a/en/compute/api-ref/Snapshot/create.md
+++ b/en/compute/api-ref/Snapshot/create.md
@@ -134,6 +134,10 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -299,6 +303,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration2}
@@ -330,4 +337,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Snapshot/get.md b/en/compute/api-ref/Snapshot/get.md
index d1decb6c467..5c2804a96c9 100644
--- a/en/compute/api-ref/Snapshot/get.md
+++ b/en/compute/api-ref/Snapshot/get.md
@@ -51,6 +51,10 @@ To get the snapshot ID, use a [SnapshotService.List](/docs/compute/api-ref/Snaps
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -114,6 +118,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -145,4 +152,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Snapshot/list.md b/en/compute/api-ref/Snapshot/list.md
index 1803f26a9e8..6d9d049c2f6 100644
--- a/en/compute/api-ref/Snapshot/list.md
+++ b/en/compute/api-ref/Snapshot/list.md
@@ -76,6 +76,10 @@ The default sorting order is ascending ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -159,6 +163,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -190,4 +197,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/Snapshot/update.md b/en/compute/api-ref/Snapshot/update.md
index 3a4e46703c7..6e87efc6cd3 100644
--- a/en/compute/api-ref/Snapshot/update.md
+++ b/en/compute/api-ref/Snapshot/update.md
@@ -105,6 +105,10 @@ Existing set of `labels` is completely replaced by the provided set. ||
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -267,6 +271,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -298,4 +305,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/SnapshotSchedule/listDisks.md b/en/compute/api-ref/SnapshotSchedule/listDisks.md
index 1eb64ca4562..c02dd2869d9 100644
--- a/en/compute/api-ref/SnapshotSchedule/listDisks.md
+++ b/en/compute/api-ref/SnapshotSchedule/listDisks.md
@@ -81,6 +81,10 @@ Page token. To get the next page of results, set `pageToken` to the
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -182,6 +186,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -223,4 +230,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/SnapshotSchedule/listSnapshots.md b/en/compute/api-ref/SnapshotSchedule/listSnapshots.md
index 2d6ff57af10..47bd10864e3 100644
--- a/en/compute/api-ref/SnapshotSchedule/listSnapshots.md
+++ b/en/compute/api-ref/SnapshotSchedule/listSnapshots.md
@@ -69,6 +69,10 @@ Page token. To get the next page of results, set `pageToken` to the
},
"generation2Features": "object"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -151,6 +155,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -182,4 +189,16 @@ Allows switching to PCI_TOPOLOGY_V2 and back.
- `PCI_TOPOLOGY_UNSPECIFIED`
- `PCI_TOPOLOGY_V1`
- `PCI_TOPOLOGY_V2` ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Disk/create.md b/en/compute/api-ref/grpc/Disk/create.md
index c9a78d8adf6..3215eeac205 100644
--- a/en/compute/api-ref/grpc/Disk/create.md
+++ b/en/compute/api-ref/grpc/Disk/create.md
@@ -44,7 +44,8 @@ Method starts an asynchronous operation that can be cancelled while it is in pro
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
- }
+ },
+ "kmsKeyId": "string"
}
```
@@ -99,6 +100,9 @@ List of IDs of the snapshot schedules to attach the disk to. ||
Specify the overrides to hardware_generation of a source disk, image or snapshot,
or to the default values if the source does not define it. ||
+|| kmsKeyId | **string**
+
+ID of KMS key for disk encryption. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -200,6 +204,10 @@ and UEFI boot (with UEFI related features).
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -343,6 +351,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy2}
@@ -394,4 +405,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Disk/get.md b/en/compute/api-ref/grpc/Disk/get.md
index fba864cf277..288245c0fd4 100644
--- a/en/compute/api-ref/grpc/Disk/get.md
+++ b/en/compute/api-ref/grpc/Disk/get.md
@@ -65,6 +65,10 @@ To get the disk ID use a [DiskService.List](/docs/compute/api-ref/grpc/Disk/list
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -140,6 +144,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -191,4 +198,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Disk/list.md b/en/compute/api-ref/grpc/Disk/list.md
index 8c826f86312..2a2842ba62e 100644
--- a/en/compute/api-ref/grpc/Disk/list.md
+++ b/en/compute/api-ref/grpc/Disk/list.md
@@ -94,6 +94,10 @@ The default sorting order is ascending ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -189,6 +193,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -240,4 +247,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Disk/move.md b/en/compute/api-ref/grpc/Disk/move.md
index 17b62ce4bcd..2039baa9c8d 100644
--- a/en/compute/api-ref/grpc/Disk/move.md
+++ b/en/compute/api-ref/grpc/Disk/move.md
@@ -84,6 +84,10 @@ To get the folder ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -233,6 +237,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -284,4 +291,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Disk/relocate.md b/en/compute/api-ref/grpc/Disk/relocate.md
index 82f8a5f3aa2..8076865af38 100644
--- a/en/compute/api-ref/grpc/Disk/relocate.md
+++ b/en/compute/api-ref/grpc/Disk/relocate.md
@@ -104,6 +104,10 @@ Placement group ID. ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -253,6 +257,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy2}
@@ -304,4 +311,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Disk/update.md b/en/compute/api-ref/grpc/Disk/update.md
index c81aa271447..843d4bdb474 100644
--- a/en/compute/api-ref/grpc/Disk/update.md
+++ b/en/compute/api-ref/grpc/Disk/update.md
@@ -114,6 +114,10 @@ Placement group ID. ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -257,6 +261,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy2}
@@ -308,4 +315,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/DiskPlacementGroup/listDisks.md b/en/compute/api-ref/grpc/DiskPlacementGroup/listDisks.md
index e0480bef255..602ac51b23a 100644
--- a/en/compute/api-ref/grpc/DiskPlacementGroup/listDisks.md
+++ b/en/compute/api-ref/grpc/DiskPlacementGroup/listDisks.md
@@ -78,6 +78,10 @@ returned by a previous list request. ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -173,6 +177,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -224,4 +231,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Image/create.md b/en/compute/api-ref/grpc/Image/create.md
index 9d889273d41..1fd1da54673 100644
--- a/en/compute/api-ref/grpc/Image/create.md
+++ b/en/compute/api-ref/grpc/Image/create.md
@@ -214,6 +214,10 @@ and UEFI boot (with UEFI related features).
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -348,6 +352,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os2}
@@ -404,4 +411,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Image/get.md b/en/compute/api-ref/grpc/Image/get.md
index 55b19a1a9e4..edf491e1d2d 100644
--- a/en/compute/api-ref/grpc/Image/get.md
+++ b/en/compute/api-ref/grpc/Image/get.md
@@ -57,6 +57,10 @@ To get the image ID, use a [ImageService.List](/docs/compute/api-ref/grpc/Image/
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -123,6 +127,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -179,4 +186,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Image/getLatestByFamily.md b/en/compute/api-ref/grpc/Image/getLatestByFamily.md
index 302c97a109b..7b9ee390de8 100644
--- a/en/compute/api-ref/grpc/Image/getLatestByFamily.md
+++ b/en/compute/api-ref/grpc/Image/getLatestByFamily.md
@@ -59,6 +59,10 @@ Name of the image family to search for. ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -125,6 +129,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -181,4 +188,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Image/list.md b/en/compute/api-ref/grpc/Image/list.md
index 15a51f16889..b7e73f9d2eb 100644
--- a/en/compute/api-ref/grpc/Image/list.md
+++ b/en/compute/api-ref/grpc/Image/list.md
@@ -86,6 +86,10 @@ The default sorting order is ascending ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -172,6 +176,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -228,4 +235,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Image/update.md b/en/compute/api-ref/grpc/Image/update.md
index 06e2e268e0a..411aeea5281 100644
--- a/en/compute/api-ref/grpc/Image/update.md
+++ b/en/compute/api-ref/grpc/Image/update.md
@@ -90,6 +90,10 @@ Existing set of `labels` is completely replaced by the provided set. ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -224,6 +228,9 @@ When true, indicates there is an image pool for fast creation disks from the ima
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this image as a source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## Os {#yandex.cloud.compute.v1.Os}
@@ -280,4 +287,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Instance/attachDisk.md b/en/compute/api-ref/grpc/Instance/attachDisk.md
index 384e3bd395e..3b0a0e4de17 100644
--- a/en/compute/api-ref/grpc/Instance/attachDisk.md
+++ b/en/compute/api-ref/grpc/Instance/attachDisk.md
@@ -26,15 +26,16 @@ Attaches the disk to the instance.
"description": "string",
"typeId": "string",
"size": "int64",
- "blockSize": "int64",
+ // Includes only one of the fields `imageId`, `snapshotId`
+ "imageId": "string",
+ "snapshotId": "string",
+ // end of the list of possible fields
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "int64"
},
- // Includes only one of the fields `imageId`, `snapshotId`
- "imageId": "string",
- "snapshotId": "string"
- // end of the list of possible fields
+ "blockSize": "int64",
+ "kmsKeyId": "string"
},
"diskId": "string"
// end of the list of possible fields
@@ -103,12 +104,6 @@ To get a list of available disk types, use the [yandex.cloud.compute.v1.DiskType
|| size | **int64**
Required field. Size of the disk, specified in bytes. ||
-|| blockSize | **int64**
-
-Block size of the disk, specified in bytes. The default is 4096. ||
-|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
-
-Placement policy configuration. ||
|| imageId | **string**
ID of the image to create the disk from.
@@ -119,6 +114,15 @@ Includes only one of the fields `imageId`, `snapshotId`. ||
ID of the snapshot to restore the disk from.
Includes only one of the fields `imageId`, `snapshotId`. ||
+|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
+
+Placement policy configuration. ||
+|| blockSize | **int64**
+
+Block size of the disk, specified in bytes. The default is 4096. ||
+|| kmsKeyId | **string**
+
+ID of KMS key for disk encryption ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
diff --git a/en/compute/api-ref/grpc/Instance/create.md b/en/compute/api-ref/grpc/Instance/create.md
index 36888b1e7c9..f365a4c7a42 100644
--- a/en/compute/api-ref/grpc/Instance/create.md
+++ b/en/compute/api-ref/grpc/Instance/create.md
@@ -45,15 +45,16 @@ Method starts an asynchronous operation that can be cancelled while it is in pro
"description": "string",
"typeId": "string",
"size": "int64",
- "blockSize": "int64",
+ // Includes only one of the fields `imageId`, `snapshotId`
+ "imageId": "string",
+ "snapshotId": "string",
+ // end of the list of possible fields
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "int64"
},
- // Includes only one of the fields `imageId`, `snapshotId`
- "imageId": "string",
- "snapshotId": "string"
- // end of the list of possible fields
+ "blockSize": "int64",
+ "kmsKeyId": "string"
},
"diskId": "string"
// end of the list of possible fields
@@ -69,15 +70,16 @@ Method starts an asynchronous operation that can be cancelled while it is in pro
"description": "string",
"typeId": "string",
"size": "int64",
- "blockSize": "int64",
+ // Includes only one of the fields `imageId`, `snapshotId`
+ "imageId": "string",
+ "snapshotId": "string",
+ // end of the list of possible fields
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "int64"
},
- // Includes only one of the fields `imageId`, `snapshotId`
- "imageId": "string",
- "snapshotId": "string"
- // end of the list of possible fields
+ "blockSize": "int64",
+ "kmsKeyId": "string"
},
"diskId": "string"
// end of the list of possible fields
@@ -391,12 +393,6 @@ To get a list of available disk types, use the [yandex.cloud.compute.v1.DiskType
|| size | **int64**
Required field. Size of the disk, specified in bytes. ||
-|| blockSize | **int64**
-
-Block size of the disk, specified in bytes. The default is 4096. ||
-|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
-
-Placement policy configuration. ||
|| imageId | **string**
ID of the image to create the disk from.
@@ -407,6 +403,15 @@ Includes only one of the fields `imageId`, `snapshotId`. ||
ID of the snapshot to restore the disk from.
Includes only one of the fields `imageId`, `snapshotId`. ||
+|| diskPlacementPolicy | **[DiskPlacementPolicy](#yandex.cloud.compute.v1.DiskPlacementPolicy)**
+
+Placement policy configuration. ||
+|| blockSize | **int64**
+
+Block size of the disk, specified in bytes. The default is 4096. ||
+|| kmsKeyId | **string**
+
+ID of KMS key for disk encryption ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
diff --git a/en/compute/api-ref/grpc/Instance/index.md b/en/compute/api-ref/grpc/Instance/index.md
index f2359dcebcd..27c436945da 100644
--- a/en/compute/api-ref/grpc/Instance/index.md
+++ b/en/compute/api-ref/grpc/Instance/index.md
@@ -16,7 +16,7 @@ A set of methods for managing Instance resources.
|| [Create](create.md) | Creates an instance in the specified folder. ||
|| [Update](update.md) | Updates the specified instance. ||
|| [Delete](delete.md) | Deletes the specified instance. ||
-|| [UpdateMetadata](updateMetadata.md) | Updates the metadata of the specified instance. ||
+|| [UpdateMetadata](updateMetadata.md) | Updates the metadata of the specified instance. For more information on metadata, see [VM metadata](/docs/compute/concepts/vm-metadata). ||
|| [GetSerialPortOutput](getSerialPortOutput.md) | Returns the serial port output of the specified Instance resource. ||
|| [Stop](stop.md) | Stops the running instance. ||
|| [Start](start.md) | Starts the stopped instance. ||
diff --git a/en/compute/api-ref/grpc/Instance/updateMetadata.md b/en/compute/api-ref/grpc/Instance/updateMetadata.md
index 04cae171e03..15a642fea61 100644
--- a/en/compute/api-ref/grpc/Instance/updateMetadata.md
+++ b/en/compute/api-ref/grpc/Instance/updateMetadata.md
@@ -5,7 +5,7 @@ sourcePath: en/_api-ref-grpc/compute/v1/api-ref/grpc/Instance/updateMetadata.md
# Compute Cloud API, gRPC: InstanceService.UpdateMetadata {#UpdateMetadata}
-Updates the metadata of the specified instance.
+Updates the metadata of the specified instance. For more information on metadata, see [VM metadata](/docs/compute/concepts/vm-metadata).
## gRPC request
diff --git a/en/compute/api-ref/grpc/Snapshot/create.md b/en/compute/api-ref/grpc/Snapshot/create.md
index dd743dcdbff..3866d7c0721 100644
--- a/en/compute/api-ref/grpc/Snapshot/create.md
+++ b/en/compute/api-ref/grpc/Snapshot/create.md
@@ -134,6 +134,10 @@ and UEFI boot (with UEFI related features).
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -261,6 +265,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration2}
@@ -302,4 +309,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Snapshot/get.md b/en/compute/api-ref/grpc/Snapshot/get.md
index 19450d879b6..5bbb71f7eb4 100644
--- a/en/compute/api-ref/grpc/Snapshot/get.md
+++ b/en/compute/api-ref/grpc/Snapshot/get.md
@@ -53,6 +53,10 @@ To get the snapshot ID, use a [SnapshotService.List](/docs/compute/api-ref/grpc/
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
```
@@ -109,6 +113,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -150,4 +157,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Snapshot/list.md b/en/compute/api-ref/grpc/Snapshot/list.md
index 34435d12d93..1b6a4084035 100644
--- a/en/compute/api-ref/grpc/Snapshot/list.md
+++ b/en/compute/api-ref/grpc/Snapshot/list.md
@@ -82,6 +82,10 @@ The default sorting order is ascending ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -158,6 +162,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -199,4 +206,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/Snapshot/update.md b/en/compute/api-ref/grpc/Snapshot/update.md
index 5ea0c25801d..3874c2257a2 100644
--- a/en/compute/api-ref/grpc/Snapshot/update.md
+++ b/en/compute/api-ref/grpc/Snapshot/update.md
@@ -83,6 +83,10 @@ Existing set of `labels` is completely replaced by the provided set. ||
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
// end of the list of possible fields
@@ -207,6 +211,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -248,4 +255,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/SnapshotSchedule/listDisks.md b/en/compute/api-ref/grpc/SnapshotSchedule/listDisks.md
index 20e69145828..92ef0bec89b 100644
--- a/en/compute/api-ref/grpc/SnapshotSchedule/listDisks.md
+++ b/en/compute/api-ref/grpc/SnapshotSchedule/listDisks.md
@@ -79,6 +79,10 @@ Page token. To get the next page of results, set `pageToken` to the
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -173,6 +177,9 @@ Placement policy configuration. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this disk as a boot one. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## DiskPlacementPolicy {#yandex.cloud.compute.v1.DiskPlacementPolicy}
@@ -224,4 +231,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/api-ref/grpc/SnapshotSchedule/listSnapshots.md b/en/compute/api-ref/grpc/SnapshotSchedule/listSnapshots.md
index 81392b480fe..69d044ee556 100644
--- a/en/compute/api-ref/grpc/SnapshotSchedule/listSnapshots.md
+++ b/en/compute/api-ref/grpc/SnapshotSchedule/listSnapshots.md
@@ -67,6 +67,10 @@ Page token. To get the next page of results, set `pageToken` to the
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
+ },
+ "kmsKey": {
+ "keyId": "string",
+ "versionId": "string"
}
}
],
@@ -142,6 +146,9 @@ ID of the source disk used to create this snapshot. ||
If specified, forces the same HardwareGeneration features to be applied to the instance
created using this snapshot as source for the boot disk. Otherwise the current default will be used. ||
+|| kmsKey | **[KMSKey](#yandex.cloud.compute.v1.KMSKey)**
+
+Key encryption key info. ||
|#
## HardwareGeneration {#yandex.cloud.compute.v1.HardwareGeneration}
@@ -183,4 +190,16 @@ and UEFI boot (with UEFI related features).
#|
||Field | Description ||
|| Empty | > ||
+|#
+
+## KMSKey {#yandex.cloud.compute.v1.KMSKey}
+
+#|
+||Field | Description ||
+|| keyId | **string**
+
+ID of KMS symmetric key ||
+|| versionId | **string**
+
+Version of KMS symmetric key ||
|#
\ No newline at end of file
diff --git a/en/compute/concepts/instance-groups/autohealing.md b/en/compute/concepts/instance-groups/autohealing.md
index 0b8d861028b..081e889dc3a 100644
--- a/en/compute/concepts/instance-groups/autohealing.md
+++ b/en/compute/concepts/instance-groups/autohealing.md
@@ -4,7 +4,7 @@
{% note info %}
-If you [pause processes](stopping-pausing.md) (switch them to the `PAUSED` [status](statuses.md#group-statuses)) in an instance group, your instances will not be healed.
+If you [pause processes](stopping-pausing.md) (`PAUSED` [status](statuses.md#group-statuses)) for an instance group, its instances will not be healed.
{% endnote %}
@@ -14,23 +14,23 @@ To ensure autohealing, {{ ig-name }} performs two types of health checks:
* [Instance operability check](#auto-healthcheck).
* [Application health check on the instance](#functional-healthcheck).
-Do not confuse these checks with those the load balancer performs if an instance group is [integrated with {{ network-load-balancer-full-name }} or {{ alb-full-name }}](balancers.md). The load balancer health check only affects the deployment process: when, at startup, the instance switches to the `OPENING_TRAFFIC` [status](statuses.md), {{ ig-name }} waits until the instance status switches to `HEALTHY` in the load balancer. After that, {{ ig-name }} stops monitoring the instance status in the load balancer. You can also set up instance autohealing for health checks from the load balancer. For more information, see [{#T}](balancers.md#principles-health-checks).
+Do not confuse these checks with those the load balancer performs if an instance group is [integrated with {{ network-load-balancer-full-name }} or {{ alb-full-name }}](balancers.md). The load balancer health check affects only the deployment process: when the instance gets the `OPENING_TRAFFIC` [status](statuses.md) at startup, {{ ig-name }} will wait until its status turns to `HEALTHY` in the load balancer. After that, {{ ig-name }} will stop monitoring the instance status in the load balancer. You can also set up instance autohealing for health checks from the load balancer. For more information, see [{#T}](balancers.md#principles-health-checks).
### Instance operability check {#auto-healthcheck}
-{{ ig-name }} checks the [instance status](../vm-statuses.md) in {{ compute-name }} every few seconds. If an instance stopped or an error occurred (the VM switched to the `STOPPED`, `ERROR`, or `CRASHED` status), {{ ig-name }} will try to restart the instance and create a new one, depending on the [recovery policy](policies/healing-policy.md). The instances will be healed based on the [deployment policy](#healthcheck-and-deploy).
+{{ ig-name }} checks the [instance status](../vm-statuses.md) in {{ compute-name }} every few seconds. If an instance stops or throws an error (`STOPPED`, `ERROR`, or `CRASHED` status), {{ ig-name }} will try to restart the instance or create a new one, depending on the [recovery policy](policies/healing-policy.md). The instances will be healed based on the [deployment policy](#healthcheck-and-deploy).
### Application health check on the instance {#functional-healthcheck}
This check will detect if the app running on your instance has frozen, terminated, or is taking too long to respond. You can [enable the application health check](../../operations/instance-groups/enable-autohealing.md) when creating or editing an instance.
-If you enabled this check, {{ ig-name }} will poll the application status on the instance at preset intervals while the instance group is in the `ACTIVE` [status](statuses.md).
+If you enable this check, {{ ig-name }} will poll the application status on the instance at preset intervals while the instance group is in the `ACTIVE` [status](statuses.md).
#### Recommendations for instance groups with a load balancer {#healthcheck-and-balancer}
-If your instance group is integrated with {{ network-load-balancer-name }} or {{ alb-name }}, use less strict settings for checks in {{ ig-name }} than those for the load balancer health checks (to learn more about health checks, see the [{{ network-load-balancer-name }}](../../../network-load-balancer/concepts/health-check.md) or [{{ alb-name }}](../../../application-load-balancer/concepts/backend-group.md#health) documentation). The load balancer allocates the load on the app, while {{ ig-name }} only monitors the app performance.
+If your instance group is integrated with {{ network-load-balancer-name }} or {{ alb-name }}, use less strict settings for checks in {{ ig-name }} than those for the load balancer health checks (to learn more about health checks, see the [{{ network-load-balancer-name }}](../../../network-load-balancer/concepts/health-check.md) or [{{ alb-name }}](../../../application-load-balancer/concepts/backend-group.md#health) documentation). The load balancer distributes load to the app, while {{ ig-name }} only monitors its performance.
-> For example, if you set the 1-second response timeout in the load balancer, then set 30 seconds in {{ ig-name }}. If the application does not respond for 3 to 5 seconds, it might not be able to handle the current traffic. If it does not respond for more than 30 seconds, it is probably not working at all and you need to heal your instance.
+> For example, if you set the response timeout of 1 second in the load balancer, you should set 30 seconds in {{ ig-name }}. If the application does not respond for 3 to 5 seconds, it might not be able to handle the current traffic. If it does not respond for more than 30 seconds, it is probably not working at all and you need to heal your instance.
#### Settings for application health checks {#settings}
@@ -72,56 +72,60 @@ The fields and options in the management console are located under **{{ ui-key.y
| --- | --- |
| `health_checks_spec` **{{ ui-key.yacloud.compute.groups.create.field_enable-health-check }}** | Settings for application health checks If the key is missing in the YAML specification or the option is disabled in the management console, no health checks are run. |
| `health_checks_specs` | List of health checks. If health checks are enabled, the list should contain at least one health check. You can set up multiple health checks in the YAML specification and only one health check in the management console. |
-| `interval` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-interval }}** | Interval between two consecutive health checks, from 1 to 300 seconds. It must be at least one second longer than the timeout. The default value is `2s`. |
-| `timeout` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-timeout }}** | Check timeout, from 1 to 60 seconds: if the instance fails to respond to the health check during this time, it fails the health check. The default value is `1s`. |
+| `interval` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-interval }}** | Interval between two consecutive health checks, from 1 to 300 seconds. It must be at least one second longer than the timeout. The default value is two seconds (`2s`). |
+| `timeout` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-timeout }}** | Check timeout, from 1 to 60 seconds: if the instance fails to respond to the health check during this time, it fails the health check. The default value is one second (`1s`). |
| `unhealthy_threshold` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-unhealthy-threshold }}** | Number of consecutive failed health checks after which the instance is considered unhealthy and autohealed. Possible values: 0 and from 2 to 10. The default value is 2. The value of 0 is equivalent to the default value. |
| `healthy_threshold` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-healthy-threshold }}** | Number of consecutive successful health checks after which the instance is considered healthy. Possible values: 0 and from 2 to 10. The default value is 2. The value of 0 is equivalent to the default value. |
| `http_options` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-protocol }}**: `HTTP` | Settings for HTTP health checks Health checks are performed over HTTP or TCP. Therefore, the health check description in the YAML specification must contain only one key: either `http_options` or `tcp_options`. |
-| `port` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-port }}** | Port in the range from 1 to 65535 to send health check requests over HTTP to. |
-| `path` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-path }}** | Path to send health check requests over HTTP through. |
+| `port` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-port }}** | Port in the range from 1 to 65535 to send health check requests over HTTP to.
+| `path` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-path }}** | Path to send health check requests over HTTP through.
| `tcp_options` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-protocol }}**: `TCP` | Settings for TCP health checks Health checks are performed over HTTP or TCP. Therefore, the health check description in the YAML specification must contain only one key: either `http_options` or `tcp_options`. |
| `port` **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-port }}** | Port in the range from 1 to 65535 to send health check requests over TCP to. |
-| `max_checking_health_duration` **{{ ui-key.yacloud.compute.groups.create.field_max-healthcheck-duration }}** | Time during which a new instance in the group (added to the group or restarted after being stopped) must pass health checks and get healthy. Possible values: 0 and 1+ sec. The default value is 0 (unlimited). |
+| `max_checking_health_duration` **{{ ui-key.yacloud.compute.groups.create.field_max-healthcheck-duration }}** | Time during which a new instance in the group (added to the group or restarted after being stopped) must pass health checks and get healthy. The possible values are 0 and 1+ sec. The default value is 0 (unlimited). |
-## Auto-healing specifics {#healthcheck-cases}
+## Autohealing features {#healthcheck-cases}
-### Auto-healing and deployment policies {#healthcheck-and-deploy}
+### Autohealing and deployment policies {#healthcheck-and-deploy}
To autoheal instances, {{ ig-name }} may restart them or create new ones. The healing method is defined by the [deployment policies](policies/deploy-policy.md).
-* Creating new instances
- {{ ig-name }} will create new instances to replace those that failed the health check, provided that the deployment policy permits expanding the target size of the instance group. You can set the maximum number of instances that can be allocated to expand the target size of the group by using the `max_expansion` parameter, which may take values from `0` to `100`. In this case, {{ ig-name }} will first create a new instance, wait until it passes all checks, and then undeploy the instance that failed the check.
+* Creating new VMs
+ {{ ig-name }} will create new instances to replace those that have failed the check, provided the deployment policy permits exceeding the group's target size. You use the `max_expansion` parameter to set the maximum number of instances by which the target size of the group can be exceeded. The possible values range from `0` to `100`. In this case, {{ ig-name }} will first create a new instance, wait until it passes all checks, and then delete the instance that failed the check.
-* Restarting the instance
- {{ ig-name }} will restart instances that failed the health check if the deployment policy permits reducing the target size of the instance group. You can use the `max_unavailable` parameter to set the maximum number of instances that can be made unavailable at the same time. The acceptable values range from `0` to `100`. {{ ig-name }} will try not to exceed this value during autohealing.
+ When bringing the number of instances in the group to the target value, instances created under the `max_expansion` quota can remain in the group, while those that existed in the group before may be deleted, even if they passed all checks.
- This restriction does not apply to instances with the `CRASHED`, `ERROR`, and `STOPPED` [statuses](../vm-statuses.md), because, in these cases, the instance is already unavailable and must be restarted immediately.
+* Restarting a VM
+ {{ ig-name }} will restart instances that have failed health check if the deployment policy permits reducing the target group size. You can use the `max_unavailable` parameter to set the maximum number of instances you can make unavailable at the same time. The acceptable values range from `0` to `100`. {{ ig-name }} will try not to exceed this value during autohealing.
+
+ This restriction does not apply to instances with the`CRASHED`, `ERROR`, and `STOPPED` [statuses](../vm-statuses.md), because these mean that the instance is already unavailable and must be restarted immediately.
If you set both `max_expansion` and `max_unavailable`, {{ ig-name }} will use both autohealing methods.
-A fully loaded instance with the `RUNNING_ACTUAL` or `RUNNING_OUTDATED` status is considered running in terms of the `max_unavailable` quota even if it did not pass a health check. To stop such an instance automatically, you need to have unused `max_unavailable` quota.
+A fully booted instance with the `RUNNING_ACTUAL` or `RUNNING_OUTDATED` status is considered running in terms of the `max_unavailable` quota, even if it did not pass the health check. To stop such an instance automatically, you need to have unused `max_unavailable` quota.
-Additional instances under the `max_expansion` quota are created only in case you do not have sufficient `max_unavailable` quota. In other words, restarting an instance takes priority over creating a new one.
+Additional instances are created under the `max_expansion` quota only if the `max_unavailable` quota is not enough. In other words, restarting an instance takes priority over creating a new one.
-> For example, let's assume you set `max_expansion = 1` and `max_unavailable = 1`. When one of the instances fails the check, {{ ig-name }} will restart this instance. If another instance fails the check at the same time, {{ ig-name }} will not be able to restart it due to exceeding the `max_unavailable` parameter. Instead, it will begin to create a new instance while restarting the first one.
+> Let’s assume you specified `max_expansion = 1` and `max_unavailable = 1`. When one of the instances fails the check, {{ ig-name }} will restart this instance. If another instance fails the check at the same time, {{ ig-name }} will not be able to restart it because the `max_unavailable` parameter is exceeded. Instead, it will begin to create a new instance while restarting the first one.
To limit the autohealing and deployment speed, you can also set:
-* Maximum number of instances deployed simultaneously, using the `max_creating` parameter. This includes the instances being created and started with the `CREATING` and `STARTING` statuses.
+* Maximum number of instances deployed simultaneously in the `max_creating` parameter. This includes instances with the `CREATING` and `STARTING` statuses.
- The acceptable values range from `0` to `100`. `0` means any number of instances within the allowed range.
+ The possible values range from `0` to `100`. `0` means any number of instances within the allowed range.
-* Maximum number of instances undeployed simultaneously, using the `max_deleting` parameter. This includes the instances being stopped with the `STOPPING` status, since {{ ig-name }} always stops instances before undeploying them.
+* Maximum number of instances undeployed simultaneously in the `max_deleting` parameter. This includes instances in the `STOPPING` status, since {{ ig-name }} always stops instances before deleting them.
- The acceptable values range from `0` to `100`. `0` means any number of instances within the allowed range.
+ The possible values range from `0` to `100`. `0` means any number of instances within the allowed range.
### Changing instance status during autohealing {#healtcheck-and-vm-state}
{{ ig-name }} will not try to heal an instance if it is no longer needed.
-> For example, if all 10 instances out of 10 in a group are unavailable and `max_unavailable = 3`, {{ ig-name }} will restart the first three instances. If the remaining seven instances become operable again in the meantime, {{ ig-name }} will not restart them.
+> For example, if all 10 instances out of 10 in a group are unavailable and `max_unavailable = 3`, {{ ig-name }} will restart the first three instances. If the remaining seven instances become operational again in the meantime, {{ ig-name }} will not restart them.
+>
+> If `max_expansion = 3`, {{ ig-name }} will start creating three new instances. The old instances will not be deleted until the new ones are created. If all instances in an instance group become operational again during the creation process, {{ ig-name }} will cancel the creation of new instances.
>
-> If `max_expansion = 3`, {{ ig-name }} will start creating three new instances. The old instances will not be deleted until the new ones are created. If all instances in an instance group become operable again during the creation process, {{ ig-name }} will cancel the creation of new instances.
+> When bringing the number of instances in the group to the target value, instances created under the `max_expansion` quota can remain in the group, while those that existed in the group before may be deleted, even if they are operational.
### Healing while updating instance configurations {#healtcheck-and-vm-update}
@@ -135,17 +139,17 @@ Instance healing has a higher priority than instance configuration update.
When the target size of an instance group is reduced, the instances that failed the check, if any, will be deleted first.
-If you increase the target size of the instance group, new instances will be created at the same time as the instances that failed the check, if this is allowed by `max_creating` and `max_expansion`:
+If you increase the instance group's target size, new instances will be created in parallel with the instances that had failed the check, if allowed by `max_creating` and `max_expansion`:
> Let's assume two out of four instances in an instance group failed the [application health check](#functional-healthcheck). At that point, the target size of the instance group has increased to six instances. You have two instances to create and another two to heal.
>
-> If `max_expansion = 1` and `max_creating` is not set, {{ ig-name }} will start creating three instances in parallel: two under the instance group expansion, and one under the autohealing process.
+> If `max_expansion = 1` and `max_creating` is not set, {{ ig-name }} will start creating three instances in parallel: two as part of group expansion, and one as part of autohealing.
### Autohealing preemptible instances {#healthcheck-preemptible-vm}
-[Preemptible instances](../preemptible-vm.md) can only be autohealed if the computing resources in the availability zone allow for this. If the resources are insufficient, {{ ig-name }} will resume autohealing as soon as the resources become available; this, however, may take a long time.
+[Preemptible instances](../preemptible-vm.md) can only be autohealed if there is enough computing resources in the availability zone. If the resources are insufficient, {{ ig-name }} will resume autohealing as soon as the resources become available; this, however, may take a long time.
-Preemptible VMs must be terminated within 24 hours of their launch. In this case, there is a risk that the entire instance group will restart at the same time and stop handling the load of running applications. To avoid this, {{ ig-name }} stops preemptible instances after a random interval of 22 to 24 hours, rather than exactly after 24 hours.
+Preemptible instances must be terminated within 24 hours of their launch. In this case, there is a risk that the entire instance group will restart at the same time and stop handling the load of running applications. To avoid this, {{ ig-name }} stops preemptible instances after a random interval of 22 to 24 hours, rather than exactly after 24 hours.
#### See also {#see-also}
diff --git a/en/compute/concepts/instance-groups/policies/deploy-policy.md b/en/compute/concepts/instance-groups/policies/deploy-policy.md
index d12009de7b1..495808065db 100644
--- a/en/compute/concepts/instance-groups/policies/deploy-policy.md
+++ b/en/compute/concepts/instance-groups/policies/deploy-policy.md
@@ -2,7 +2,7 @@
When creating an instance group, you can choose how the instances will be deployed in the group.
-The deployment policy is a set of restrictions defined in the `deploy_policy` key in the YAML file. Each restriction is set in its own key as a `key-value` pair.
+The deployment policy is a set of restrictions defined in the `deploy_policy` key in the YAML file. Each restriction is set in a separate key as a `key:value` pair.
Here is how a YAML file entry may look like:
@@ -19,26 +19,28 @@ deploy_policy:
Where:
-| Key | Value |
-| ----- | ----- |
-| `max_creating` | Maximum number of instances being started at the same time. Valid values range from 0 to 100. 0 means any number of instances within the allowed range. |
-| `max_deleting` | Maximum number of instances being stopped at the same time. Valid values range from 0 to 100. 0 means any number of instances within the allowed range. |
-| `max_unavailable` | Maximum number of instances in the `RUNNING` status that can be removed to reduce the target size of the group. Valid values range from 0 to 100. |
-| `max_expansion` | Maximum number of instances that can be additionally allocated to expand the target size of the group. If the `max_unavailable` key is not specified or is zero, the `max_expansion` key value must not be zero. Valid values range from 0 to 100. |
-| `startup_duration` | Startup duration of an instance in the group. The instance starts receiving traffic only after the startup time expires and all health checks are passed. Valid values range from 0 to 100. |
+Key | Value
+----- | -----
+`max_creating` | Maximum number of isntances started simultaneously. Acceptable values: 0 to 100. 0 means any number of instances within the allowed range.
+`max_deleting` | Maximum number of instances stopped simultaneously. Acceptable values: 0 to 100. 0 means any number of instances within the allowed range.
+`max_unavailable` | Maximum number of instances in the `RUNNING` status by which the group's target size can be reduced. Acceptable values: 0 to 100.
+`max_expansion` | Maximum number of instances by which the group's target size can be exceeded^1^. If the `max_unavailable` key is not specified or is zero, a non-zero value must be specified for the `max_expansion` key. Acceptable values: 0 to 100.
+`startup_duration` | Startup duration of an instance in the group. The instance starts receiving traffic only after the startup time expires and all the health checks are passed. The acceptable values range from 0 to 3,600 seconds.
+
+^1^ Subsequently, when bringing the number of instances in the group to the target value, instances created under the `max_expansion` quota can remain in the group, while those that existed in the group before may be deleted.
## Strategies for stopping instances {#strategy}
-{{ ig-name }} supports two strategies for stopping instances when updating or [automatically scaling](../scale.md#auto-scale) a group: `PROACTIVE` and `OPPORTUNISTIC`.
+{{ ig-name }} supports two strategies for stopping instances when updating or [automatically scaling](../scale.md#auto-scale) a group: automatic (`PROACTIVE`) and manual (`OPPORTUNISTIC`).
-If you use the proactive strategy, {{ ig-name }} will select which instances to stop on its own.
+If you use the proactive strategy, {{ ig-name }} will select which instances to stop by itself.
With the opportunistic strategy, {{ ig-name }} does not stop the instances but waits until at least one of the following conditions is met:
* User [stops](../../../operations/vm-control/vm-stop-and-start.md#stop) an instance in {{ compute-name }}.
* Application or user stops the instance internally.
* Instance fails the application [health check](../autohealing.md#functional-healthcheck).
-For example, let's assume you created an instance group with automatic scaling based on the [custom metric](../scale.md#custom-metrics) of the number of jobs in the queue. {{ ig-name }} will create an instance group to run the jobs from the queue. As soon as there are no more jobs, {{ ig-name }} must reduce the group size from the actual size to the target one according to the [scaling policy](scale-policy.md).
+For example, you created an instance group with automatic scaling based on the [custom metric](../scale.md#custom-metrics) of the number of jobs in the queue. {{ ig-name }} creates an instance group that executes the jobs from the queue. As soon as there are no more jobs, {{ ig-name }} must reduce the group size from the actual size to the target one according to the [scaling policy](scale-policy.md).
* If you selected the proactive stop, {{ ig-name }} will change the target group size and decrease the actual number of instances in the group to the target amount.
* If you use the opportunistic strategy, {{ ig-name }} will change the target group size but will not stop the instances until they stop by themselves or are stopped by the user.
@@ -53,17 +55,17 @@ deploy_policy:
Where:
-| Key | Value |
-| ----- | ----- |
-| `strategy` | Strategy for stopping instances in a group. Possible values include:
`PROACTIVE`: {{ ig-name }} selects which instances to stop on its own.
`OPPORTUNISTIC`: {{ ig-name }} waits for the instances to stop on their own or until the user stops them.
The default value is `PROACTIVE`. |
+Key | Value
+----- | -----
+`strategy` | Strategy for stopping instances in a group. Possible values:
`PROACTIVE`: {{ ig-name }} selects which instances to stop by itself.
`OPPORTUNISTIC`: {{ ig-name }} waits for the instances to stop by themselves or be stopped by the user.
Default value: `PROACTIVE`.
-## Minimum actions to perform for an instance's update {#minimal-action}
+## Minimum instance update actions {#minimal-action}
-By default, when updating an instance, {{ ig-name }} decides whether to restart or recreate them based on the [rules](../../instance-groups/deploy/instance.md). However, you can also set the minimum action to perform for updating an instance yourself. It will be executed even if the rules do not require that. This may be needed for cleaning up RAM or disks at an instance's update or redeploying the instance.
+By default, when updating an instance, {{ ig-name }} decides whether to restart or recreate them based on the [rules](../../instance-groups/deploy/instance.md). However, you can also set the minimum instance update action yourself. It will be executed even if the rules do not require that. This may be needed for cleaning up RAM or disks at an instance's update or redeploying the instance.
-Please note that the update rules take priority over the minimum actions you set. For example, if you select an instance's restart as the minimum action, the instance may also be deleted if this is required by the rules.
+Please note that the update rules take priority over the minimum actions. For example, if instance restart is selected as the minimum action, the instance may be also deleted if so required by the rules.
-You can manage minimum actions to perform for an instance's update using the [CLI](../../../../cli/quickstart.md) and [API](../../../api-ref/).
+You can manage your minimum instance update actions using the [CLI](../../../../cli/quickstart.md) and [API](../../../api-ref/).
Here is how a YAML file entry may look like:
@@ -76,12 +78,12 @@ deploy_policy:
Where:
-| Key | Value |
-| ----- | ----- |
-| `minimal_action` | Minimum action to perform for an instance's update. The possible values are:
`LIVE_UPDATE`: Update an instance without stopping it.
`RESTART`: Update an instance by restarting it.
`RECREATE`: Update an instance by recreating it.
The default value is `LIVE_UPDATE`. |
+Key | Value
+----- | -----
+`minimal_action` | Minimum instance update action. Possible values:
`LIVE_UPDATE`: Live update.
`RESTART`: Update and restart.
`RECREATE`: Update and recreate.
Default value: `LIVE_UPDATE`.
#### See also {#see-also}
* [{#T}](healing-policy.md)
* [{#T}](scale-policy.md)
-* [{#T}](allocation-policy.md)
+* [{#T}](allocation-policy.md)
\ No newline at end of file
diff --git a/en/compute/concepts/storage-read-write.md b/en/compute/concepts/storage-read-write.md
index 5f03fa3864f..0e8658d305f 100644
--- a/en/compute/concepts/storage-read-write.md
+++ b/en/compute/concepts/storage-read-write.md
@@ -19,7 +19,7 @@ Read and write operations utilize the same disk resource. The more read operatio
![image](../../_assets/compute/max-iops.svg)
Where:
-* ![image](../../_assets/compute/alpha.svg): Share of write operations out of the total number of read and write operations per second. The possible values are: α∈[0,1].
+* ![image](../../_assets/compute/alpha.svg) is the share of write operations out of the total number of read and write operations per second. Possible values: α∈[0,1].
* _WriteIOPS_: IOPS write value obtained using the formula for the actual IOPS value.
* _ReadIOPS_: IOPS read value obtained using the formula for the actual IOPS value.
@@ -47,6 +47,7 @@ You can test the performance of your network disks with [fio](https://fio.readth
1. [Attach](../operations/vm-control/vm-attach-disk.md) a disk to a VM instance.
1. Install [fio](https://fio.readthedocs.io/en/latest/fio_doc.html) on your VM instance.
+
Sample command for Ubuntu:
```bash
@@ -266,7 +267,7 @@ Result:
If a VM exceeds [disk limits](limits.md#compute-limits-disks) at any time, this will trigger throttling.
-_Throttling_ is a feature that intentionally limits performance. When throttled, disk operations are suspended, and the disk operation wait time (`iowait`) is increased. Since all write and read operations are processed in a single thread (vCPU), overloading system disks may cause network problems. This is true for both VMs and physical servers.
+_Throttling_ is a feature that forcibly limits the performance. When throttled, disk operations are suspended, and the disk operation wait time (`iowait`) is increased. Since all write and read operations are processed in a single thread (vCPU), overloading system disks may cause network problems. This is true for both VMs and physical servers.
> For example, let's assume there is a write limit of 300 IPOS. The limit is split into 10 parts and applies once every 100 ms. 300 / 10 = 30 IOPS per write request will be allowed every 100 ms. If you send 30 requests once and then 30 more requests within 100 ms (evenly distributed across the 100 ms interval), this will trigger throttling and only the first 30 requests will be sent. The rest of them will be enqueued and processed within the next 100 ms. If write requests are executed sporadically, throttling may cause significant delays. At times, there will be up to N IOPS of requests within 100 ms.
diff --git a/en/compute/concepts/vm-metadata.md b/en/compute/concepts/vm-metadata.md
index c7372f79f17..95eab221692 100644
--- a/en/compute/concepts/vm-metadata.md
+++ b/en/compute/concepts/vm-metadata.md
@@ -30,7 +30,7 @@ You can provide metadata when creating or [updating](../operations/vm-control/vm
In the CLI, you can provide metadata in any of the three parameters:
- * `--metadata-from-file`: As a configuration file formatted as `--metadata-from-file key=`. Use this method to conveniently deliver a value consisting of several lines.
+ * `--metadata-from-file`: As a configuration file in this format: `--metadata-from-file key=`. Use this method to conveniently deliver a value consisting of several lines.
For example, to add several users to a VM at the same time, describe the configuration in a `YAML` file:
@@ -72,7 +72,7 @@ You can provide metadata when creating or [updating](../operations/vm-control/vm
{% endcut %}
- * Under `metadata`, as a line with user metadata. For a multiline value, use `\n` as a separator. For example:
+ * Under `metadata`, as a line with user metadata. For a multiline value, use `\n` as a separator. Here is an example:
```hcl
...
diff --git a/en/compute/operations/dedicated-host/access.md b/en/compute/operations/dedicated-host/access.md
index adc75c59d31..883d115a931 100644
--- a/en/compute/operations/dedicated-host/access.md
+++ b/en/compute/operations/dedicated-host/access.md
@@ -17,7 +17,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
1. In the [management console]({{ link-console-main }}), select the folder containing the dedicated host group.
1. Select **{{ ui-key.yacloud.compute.label_service }}**.
1. In the left-hand panel, select ![image](../../../_assets/horizontal-ellipsis.svg) → **{{ ui-key.yacloud.compute.switch_host-groups }}**.
- 1. Select a dedicated host group.
+ 1. Select the dedicated host group.
1. Go to the ![image](../../../_assets/console-icons/persons.svg) **{{ ui-key.yacloud.common.resource-acl.label_access-bindings }}** tab.
1. Click **{{ ui-key.yacloud.common.resource-acl.button_new-bindings }}**.
1. In the window that opens, select the group, user, or service account to grant access to the dedicated host group.
@@ -91,7 +91,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
1. In the [management console]({{ link-console-main }}), select the folder containing the dedicated host group.
1. Select **{{ ui-key.yacloud.compute.label_service }}**.
1. In the left-hand panel, select ![image](../../../_assets/horizontal-ellipsis.svg) → **{{ ui-key.yacloud.compute.switch_host-groups }}**.
- 1. Select a dedicated host group.
+ 1. Select the dedicated host group.
1. Go to the ![image](../../../_assets/console-icons/persons.svg) **{{ ui-key.yacloud.common.resource-acl.label_access-bindings }}** tab.
1. Click **{{ ui-key.yacloud.common.resource-acl.button_new-bindings }}**.
1. In the window that opens, select the group, user, or service account to grant access to the dedicated host group.
@@ -151,7 +151,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
{% note alert %}
- The `setAccessBindings` method and the `HostGroupService/SetAccessBindings` call completely rewrite access permissions for the resource. All current resource roles will be deleted.
+ The `setAccessBindings` method and the `HostGroupService/SetAccessBindings` call completely overwrite access permissions for the resource. All current resource roles will be deleted.
{% endnote %}
@@ -166,7 +166,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
1. In the [management console]({{ link-console-main }}), select the folder containing the dedicated host group.
1. Select **{{ ui-key.yacloud.compute.label_service }}**.
1. In the left-hand panel, select ![image](../../../_assets/horizontal-ellipsis.svg) → **{{ ui-key.yacloud.compute.switch_host-groups }}**.
- 1. Select a dedicated host group.
+ 1. Select the dedicated host group.
1. Go to the ![image](../../../_assets/console-icons/persons.svg) **{{ ui-key.yacloud.common.resource-acl.label_access-bindings }}** tab.
1. In the line with the user you need, click ![image](../../../_assets/horizontal-ellipsis.svg) and select **{{ ui-key.yacloud.common.resource-acl.button_assign-binding }}**.
1. Next to the role, click ![image](../../../_assets/cross.svg).
diff --git a/en/compute/operations/dedicated-host/running-host-group-vms.md b/en/compute/operations/dedicated-host/running-host-group-vms.md
index 309d39a3a2f..ad2737531c5 100644
--- a/en/compute/operations/dedicated-host/running-host-group-vms.md
+++ b/en/compute/operations/dedicated-host/running-host-group-vms.md
@@ -107,7 +107,7 @@ Create a VM with the following characteristics:
* Number of vCPUs: 64
* Amount of RAM: 704 GB
* Number of local disks: 2
-* Size of a single local disk: 3,198,924,357,632 B (~ 2.91 TB)
+* Size of a single local disk: 3,198,924,357,632 B (~2.91 TB)
* Operating system: [Ubuntu 22.04 LTS](/marketplace/products/yc/ubuntu-22-04-lts)
To do this, follow these steps:
diff --git a/en/compute/operations/dedicated-host/running-host-vms.md b/en/compute/operations/dedicated-host/running-host-vms.md
index 2500ce83f84..0c61223b2c4 100644
--- a/en/compute/operations/dedicated-host/running-host-vms.md
+++ b/en/compute/operations/dedicated-host/running-host-vms.md
@@ -126,7 +126,7 @@ Create a VM with the following characteristics:
* Number of vCPUs: 64
* Amount of RAM: 704 GB
* Number of local disks: 1
-* Local disk size: 3,198,924,357,632 B (~ 2.91 TB)
+* Local disk size: 3,198,924,357,632 B (~2.91 TB)
* Operating system: [Ubuntu 22.04 LTS](/marketplace/products/yc/ubuntu-22-04-lts)
To do this, follow these steps:
diff --git a/en/compute/operations/disk-control/get-info.md b/en/compute/operations/disk-control/get-info.md
index ef22bf5fdaa..dce5655f6c8 100644
--- a/en/compute/operations/disk-control/get-info.md
+++ b/en/compute/operations/disk-control/get-info.md
@@ -70,7 +70,7 @@ description: Follow this guide to get information about a disk.
Where:
- * `data "yandex_compute_image"`: Describes the [disk](../../concepts/disk.md) as a data source:
+ * `data "yandex_compute_disk"`: Description of the [disk](../../concepts/disk.md) as a data source:
* `disk_id`: Disk ID.
* `output "my_disk_size"`: Output variable that contains information about the disk size:
* `value`: Returned value.
diff --git a/en/compute/operations/disk-create/empty.md b/en/compute/operations/disk-create/empty.md
index 1adc2e4bc6b..00e70946d78 100644
--- a/en/compute/operations/disk-create/empty.md
+++ b/en/compute/operations/disk-create/empty.md
@@ -31,7 +31,8 @@ You can create an empty disk of the specified size.
{% include [snapshot-disk-types](../../../_includes/compute/snapshot-disk-types.md) %}
When creating a disk, you can select only one snapshot schedule. After the disk is created, you can add a few more schedules, if required, by following [this guide](../disk-control/configure-schedule.md#add-schedule).
- 1. Click **{{ ui-key.yacloud.compute.disks.create.button_create }}**.
+
+ 1. Click **{{ ui-key.yacloud.compute.disks.create.button_create }}**.
- CLI {#cli}
diff --git a/en/compute/operations/disk-placement-groups/access.md b/en/compute/operations/disk-placement-groups/access.md
index 37b17fd61e8..41258a2f61d 100644
--- a/en/compute/operations/disk-placement-groups/access.md
+++ b/en/compute/operations/disk-placement-groups/access.md
@@ -98,7 +98,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
* `disk_placement_group_id`: Disk placement group ID.
* `role`: [Role](../../security/index.md#roles-list) to assign.
- * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) getting the role. Specify it as `userAccount:` or `serviceAccount:`.
+ * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the roles are assigned to. Specify it as `userAccount:` or `serviceAccount:`.
For more information about the `yandex_compute_disk_placement_group_iam_binding` resource parameters, see the [provider documentation]({{ tf-provider-resources-link }}/compute_disk_placement_group_iam_binding).
@@ -205,11 +205,11 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
}
```
- Where:
+ Where:
* `disk_placement_group_id`: Disk placement group ID.
* `role`: [Role](../../security/index.md#roles-list) to assign.
- * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) getting the role. Specify it as `userAccount:` or `serviceAccount:`.
+ * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the roles are assigned to. Specify it as `userAccount:` or `serviceAccount:`.
For more information about the `yandex_compute_disk_placement_group_iam_binding` resource parameters, see the [provider documentation]({{ tf-provider-resources-link }}/compute_disk_placement_group_iam_binding).
@@ -229,7 +229,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
{% note alert %}
- The `setAccessBindings` method and the `DiskPlacementGroupService/SetAccessBindings` call completely rewrite the resource access permissions. All current resource roles will be deleted.
+ The `setAccessBindings` method and the `DiskPlacementGroupService/SetAccessBindings` call completely overwrite access permissions for the resource. All current resource roles will be deleted.
{% endnote %}
diff --git a/en/compute/operations/filesystem/filesystem-access.md b/en/compute/operations/filesystem/filesystem-access.md
index 233afbb7dc2..47470b2b87f 100644
--- a/en/compute/operations/filesystem/filesystem-access.md
+++ b/en/compute/operations/filesystem/filesystem-access.md
@@ -96,7 +96,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
* `filesystem_id`: File storage ID.
* `role`: [Role](../../security/index.md#roles-list) to assign.
- * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the role is assigned to. Specify it as `userAccount:` or `serviceAccount:`.
+ * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the roles are assigned to. Specify it as `userAccount:` or `serviceAccount:`.
For more information about the `yandex_compute_filesystem_iam_binding` resource parameters, see the [provider documentation]({{ tf-provider-resources-link }}/compute_filesystem_iam_binding).
@@ -164,7 +164,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
Where:
- * `--access-binding`: Role you want to assign:
+ * `--access-binding`: Role to assign:
* `role`: ID of the role to assign.
* `subject`: Type and ID of the [subject](../../../iam/concepts/access-control/index.md#subject) getting the role.
@@ -206,7 +206,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
* `filesystem_id`: File storage ID.
* `role`: [Role](../../security/index.md#roles-list) to assign.
- * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the role is assigned to. Specify it as `userAccount:` or `serviceAccount:`.
+ * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the roles are assigned to. Specify it as `userAccount:` or `serviceAccount:`.
For more information about the `yandex_compute_filesystem_iam_binding` resource parameters, see the [provider documentation]({{ tf-provider-resources-link }}/compute_filesystem_iam_binding).
diff --git a/en/compute/operations/image-control/access.md b/en/compute/operations/image-control/access.md
index e86a864bb54..6097ba3799e 100644
--- a/en/compute/operations/image-control/access.md
+++ b/en/compute/operations/image-control/access.md
@@ -97,7 +97,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
* `image_id`: Image ID.
* `role`: [Role](../../security/index.md#roles-list) to assign.
- * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) getting the role. Specify it as `userAccount:` or `serviceAccount:`.
+ * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the roles are assigned to. Specify it as `userAccount:` or `serviceAccount:`.
For more information about the `yandex_compute_image_iam_binding` resource parameters, see the [provider documentation]({{ tf-provider-resources-link }}/compute_image_iam_binding).
@@ -204,11 +204,11 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
}
```
- Where:
+ Where:
* `image_id`: Image ID.
* `role`: [Role](../../security/index.md#roles-list) to assign.
- * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) getting the role. Specify it as `userAccount:` or `serviceAccount:`.
+ * `members`: List of types and IDs of [subjects](../../../iam/concepts/access-control/index.md#subject) the roles are assigned to. Specify it as `userAccount:` or `serviceAccount:`.
For more information about the `yandex_compute_image_iam_binding` resource parameters, see the [provider documentation]({{ tf-provider-resources-link }}/compute_image_iam_binding).
@@ -228,7 +228,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
{% note alert %}
- The `setAccessBindings` method and the `ImageService/SetAccessBindings` call completely rewrite the resource access permissions. All current resource roles will be deleted.
+ The `setAccessBindings` method and the `ImageService/SetAccessBindings` call completely overwrite access permissions for the resource. All current resource roles will be deleted.
{% endnote %}
diff --git a/en/compute/operations/image-control/image-control-get-info.md b/en/compute/operations/image-control/image-control-get-info.md
index 7092b8c99c9..90dd5348b1e 100644
--- a/en/compute/operations/image-control/image-control-get-info.md
+++ b/en/compute/operations/image-control/image-control-get-info.md
@@ -67,12 +67,12 @@ title: How to get information about a disk image in {{ compute-full-name }}
Where:
- * `data "yandex_compute_image"`: Describes the disk image as the data source:
+ * `data "yandex_compute_image"`: Description of the disk image as a data source:
* `image_id`: Disk image ID.
* `output "image"`: Output variable that contains information about the minimum disk size:
* `value`: Returned value.
- You can replace `min_disk_size` with any other parameter to get the information you need. For more information about the `yandex_compute_image` data source parameters, see the [relevant provider documentation]({{ tf-provider-datasources-link }}/datasource_compute_image).
+ Instead of `min_disk_size` you can select any other parameter to get the information you need. For more information about the `yandex_compute_image` data source parameters, see the [relevant provider documentation]({{ tf-provider-datasources-link }}/datasource_compute_image).
1. Create resources:
diff --git a/en/compute/operations/image-control/import.md b/en/compute/operations/image-control/import.md
index ef95099a8bf..c05ee369a24 100644
--- a/en/compute/operations/image-control/import.md
+++ b/en/compute/operations/image-control/import.md
@@ -26,7 +26,7 @@ To import an image from another cloud or folder:
{{ yc-compute }} image create --help
```
- 1. To get a list of available images in the source cloud or folder, run the following command: `{{ yc-compute }} image list --folder-name `. For example:
+ 1. To get a list of available images in the source cloud or folder, run the following command: `{{ yc-compute }} image list --folder-name `. Here is an example:
```bash
{{ yc-compute }} image list --folder-name my-source-folder
@@ -44,7 +44,7 @@ To import an image from another cloud or folder:
1. Select `ID` or `NAME` of the image you are importing.
- 1. To import an image, run the following command: `{{ yc-compute }} image create --source-image-id=`. For example:
+ 1. To import an image, run the following command: `{{ yc-compute }} image create --source-image-id=`. Here is an example:
```bash
{{ yc-compute }} image create --source-image-id=fd8o0pt9qfbt********
@@ -66,7 +66,7 @@ To import an image from another cloud or folder:
type: LINUX
```
- 1. Check the result by running the following command: `{{ yc-compute }} image list --folder-name `. For example:
+ 1. Check the result by running the following command: `{{ yc-compute }} image list --folder-name `. Here is an example:
```bash
{{ yc-compute }} image list --folder-name my-destination-folder
diff --git a/en/compute/operations/images-with-pre-installed-software/create.md b/en/compute/operations/images-with-pre-installed-software/create.md
index d8ef9cec66c..995a7765a2b 100644
--- a/en/compute/operations/images-with-pre-installed-software/create.md
+++ b/en/compute/operations/images-with-pre-installed-software/create.md
@@ -12,27 +12,20 @@ To create a [VM](../../concepts/vm.md):
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), open the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) to create your VM in.
- 1. At the top right, click **{{ ui-key.yacloud.iam.folder.dashboard.button_add }}**.
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) to create your VM in.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
+ 1. In the left-hand panel, select ![image](../../../_assets/console-icons/server.svg) **{{ ui-key.yacloud.compute.switch_instances }}**.
+ 1. Click **{{ ui-key.yacloud.compute.instances.button_create }}**.
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a public [image](../../concepts/image.md) with the software you want to use.
+ 1. Under **{{ ui-key.yacloud.k8s.node-groups.create.section_allocation-policy }}**, select an [availability zone](../../../overview/concepts/geo-scope.md) to place your VM in.
+ 1. (Optional) Configure the boot [disk](../../concepts/disk.md) in the **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}** section:
- 1. In the list that opens, select **{{ ui-key.yacloud.iam.folder.dashboard.value_compute }}**.
+ * Select the [disk type](../../concepts/disk.md#disks_types).
+ * Specify the required disk size.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**:
- * Enter the VM name. The naming requirements are as follows:
-
- {% include [name-format](../../../_includes/name-format.md) %}
-
- * Select an [availability zone](../../../overview/concepts/geo-scope.md) to place your VM in.
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a public [image](../../concepts/image.md) with the software you want to use.
- 1. (Optional) If you want to add more [disks](../../concepts/disk.md) to the VM, [select them](../vm-create/create-from-disks.md) under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}** by clicking the **{{ ui-key.yacloud.compute.instances.create.section_disk }}** tab.
-
-
- 1. (Optional) If you want to add more [file stores](../../concepts/filesystem.md) to the VM, add them under **{{ ui-key.yacloud.compute.instances.create.section_storages_ru }}** by clicking the **{{ ui-key.yacloud.compute.nfs.label_filesystems }}** tab. [Create](../filesystem/create.md) the storages first.
-
-
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../../concepts/vm-platforms.md).
- * Specify the [guaranteed share](../../concepts/performance-levels.md) and the required number of vCPUs as well as the amount of RAM.
+ 1. {% include [section-storages-secondary-disk](../../../_includes/compute/create/section-storages-secondary-disk.md) %}
+ 1. {% include [section-storages-filesystem](../../../_includes/compute/create/section-storages-filesystem.md) %}
+ 1. {% include [section-platform](../../../_includes/compute/create/section-platform.md) %}
{% note info %}
@@ -40,69 +33,64 @@ To create a [VM](../../concepts/vm.md):
{% endnote %}
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
-
- {% include [network-settings](../../../_includes/compute/network-settings.md) %}
+ 1. {% include [network-settings](../../../_includes/compute/create/section-network.md) %}
+ 1. {% include [section-access](../../../_includes/compute/create/section-access.md) %}
- 1. Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the instance:
- * (Optional) Select or create a [service account](../../../iam/concepts/index.md#sa). With a service account, you can flexibly configure access rights for your resources.
- * (Optional) [Enable VM access via OS Login](../vm-connect/os-login.md). The option is available for Linux images from [{{ marketplace-name }}](/marketplace) with `OS Login` in their names.
- * Enter the username in the **{{ ui-key.yacloud.compute.instances.create.field_user }}** field.
- * In the **{{ ui-key.yacloud.compute.instances.create.field_key }}** field, paste the contents of the [public key](../vm-connect/ssh.md#creating-ssh-keys) file.
+ {% note info %}
- {% note info %}
+ On VMs with access via OS Login enabled, provide your custom SSH keys through [metadata](../../concepts/vm-metadata.md#how-to-send-metadata).
- On VMs with access via OS Login enabled, provide your custom SSH keys through [metadata](../../concepts/vm-metadata.md#how-to-send-metadata).
+ {% endnote %}
- {% endnote %}
+ 1. Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, specify the VM name:
- * (Optional) Enable access to the [serial console](../index.md#serial-console) in the **{{ ui-key.yacloud.compute.instances.create.field_access-advanced }}** field, if required.
- * If you want to add several users with SSH keys to the VM at the same time, [specify](../../concepts/vm-metadata.md#how-to-send-metadata) these users' data under **{{ ui-key.yacloud.common.metadata }}**.
+ {% include [name-format](../../../_includes/name-format.md) %}
- {% include [vm-connect-linux](../../../_includes/vm-connect-linux.md) %}
+ {% include [name-fqdn](../../../_includes/compute/name-fqdn.md) %}
- 1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
+ 1. {% include [section-additional](../../../_includes/compute/create/section-additional.md) %}
+ 1. Click **{{ ui-key.yacloud.compute.instances.create.button_create }}**.
- VM creation takes several minutes. When the VM status changes to `RUNNING`, proceed to [configuring software](setup.md). You can monitor VM statuses on the list of VMs in the folder.
+ VM creation takes several minutes. When the VM status changes to `RUNNING`, proceed to [configuring software](setup.md). You can monitor VM statuses on the list of VMs in the folder.
- CLI {#cli}
- {% include [cli-install](../../../_includes/cli-install.md) %}
+ {% include [cli-install](../../../_includes/cli-install.md) %}
- {% include [default-catalogue](../../../_includes/default-catalogue.md) %}
+ {% include [default-catalogue](../../../_includes/default-catalogue.md) %}
- 1. View a description of the CLI create VM command:
+ 1. View the description of the CLI command to create a VM:
- ```bash
- yc compute instance create --help
- ```
+ ```bash
+ yc compute instance create --help
+ ```
- 1. Prepare the [key pair](../../operations/vm-connect/ssh.md#creating-ssh-keys) (public and private keys) for SSH access to the VM.
- 1. Select one of the {{ marketplace-full-name }} public [images](../images-with-pre-installed-software/get-list.md).
+ 1. Prepare the public and private [key pair](../../operations/vm-connect/ssh.md#creating-ssh-keys) for SSH access to the VM.
+ 1. Select one of the {{ marketplace-full-name }} public [images](../images-with-pre-installed-software/get-list.md).
- {% include [id-info](../../../_includes/compute/id-info.md) %}
+ {% include [id-info](../../../_includes/compute/id-info.md) %}
- {% include [standard-images](../../../_includes/standard-images.md) %}
+ {% include [standard-images](../../../_includes/standard-images.md) %}
- 1. Select a [subnet](../../../vpc/concepts/network.md#subnet):
+ 1. Select a [subnet](../../../vpc/concepts/network.md#subnet):
- ```bash
- yc vpc subnet list
- ```
+ ```bash
+ yc vpc subnet list
+ ```
- Result:
+ Result:
- ```text
- +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
- | ID | NAME | NETWORK ID | ROUTE TABLE ID | ZONE | RANGE |
- +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
- | b0c6n43f9lgh******** | default-{{ region-id }}-a | enpe3m3fa00u******** | | {{ region-id }}-a | [10.130.0.0/24] |
- | e2l2da8a20b3******** | default-{{ region-id }}-b | enpe3m3fa00u******** | | {{ region-id }}-a | [10.129.0.0/24] |
- | e9bnlm18l70a******** | default-{{ region-id }}-d | enpe3m3fa00u******** | | {{ region-id }}-a | [10.128.0.0/24] |
- +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
- ```
+ ```text
+ +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
+ | ID | NAME | NETWORK ID | ROUTE TABLE ID | ZONE | RANGE |
+ +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
+ | b0c6n43f9lgh******** | default-{{ region-id }}-a | enpe3m3fa00u******** | | {{ region-id }}-a | [10.130.0.0/24] |
+ | e2l2da8a20b3******** | default-{{ region-id }}-b | enpe3m3fa00u******** | | {{ region-id }}-a | [10.129.0.0/24] |
+ | e9bnlm18l70a******** | default-{{ region-id }}-d | enpe3m3fa00u******** | | {{ region-id }}-a | [10.128.0.0/24] |
+ +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
+ ```
- 1. Create a VM in the default [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder):
+ 1. Create a VM in the default [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder):
```bash
yc compute instance create \
@@ -117,139 +105,139 @@ To create a [VM](../../concepts/vm.md):
* `--name`: VM name. The naming requirements are as follows:
- {% include [name-format](../../../_includes/name-format.md) %}
+ {% include [name-format](../../../_includes/name-format.md) %}
- {% include [name-fqdn](../../../_includes/compute/name-fqdn.md) %}
+ {% include [name-fqdn](../../../_includes/compute/name-fqdn.md) %}
- * `--zone`: [Availability zone](../../../overview/concepts/geo-scope.md) that corresponds to the selected subnet.
- * `--network-interface`: VM's [network interface](../../concepts/network.md) settings:
- * `subnet-name`: Name of the selected subnet.
- * `nat-ip-version=ipv4`: [Public IP address](../../../vpc/concepts/address.md#public-addresses). To create a VM without a public IP address, disable this parameter.
+ * `--zone`: [Availability zone](../../../overview/concepts/geo-scope.md) corresponding to the selected subnet.
+ * `--network-interface`: VM [network interface](../../concepts/network.md) settings.
+ * `subnet-name`: Name of the selected subnet.
+ * `nat-ip-version=ipv4`: [Public IP address](../../../vpc/concepts/address.md#public-addresses). To create a VM without a public IP address, disable this parameter.
- {% include [add-several-net-interfaces-notice-cli](../../../_includes/compute/add-several-net-interfaces-notice-cli.md) %}
+ {% include [add-several-net-interfaces-notice-cli](../../../_includes/compute/add-several-net-interfaces-notice-cli.md) %}
* `--create-boot-disk`: VM boot disk settings:
- * `image-family`: [Image family](../../concepts/image.md#family), such as `centos-7`. This option allows you to install the latest version of the OS from the specified family.
+ * `image-family`: [Image family](../../concepts/image.md#family), e.g., `centos-7`. This option allows you to install the latest version of the OS from the specified family.
* `--ssh-key`: Path to the file with the [public SSH key](../vm-connect/ssh.md#creating-ssh-keys). The VM will automatically create a user named `yc-user` for this key.
- {% include [ssh-note](../../../_includes/compute/ssh-note.md) %}
+ {% include [ssh-note](../../../_includes/compute/ssh-note.md) %}
- If you want to add several users with SSH keys to the VM at the same time, [specify](../../concepts/vm-metadata.md#how-to-send-metadata) these users' data using the `--metadata-from-file` parameter.
+ If you want to add several users with SSH keys to the VM at the same time, [specify](../../concepts/vm-metadata.md#how-to-send-metadata) these users' data using the `--metadata-from-file` parameter.
- {% include [vm-create-check](../../../_includes/compute/vm-create-check.md) %}
+ {% include [vm-create-check](../../../_includes/compute/vm-create-check.md) %}
- {% include [ip-fqdn-connection](../../../_includes/ip-fqdn-connection.md) %}
+ {% include [ip-fqdn-connection](../../../_includes/ip-fqdn-connection.md) %}
- {{ TF }} {#tf}
- {% include [terraform-install](../../../_includes/terraform-install.md) %}
-
- 1. In the configuration file, describe the parameters of the resources you want to create:
-
- ```hcl
-
- resource "yandex_compute_disk" "boot-disk" {
- name = ""
- type = ""
- zone = ""
- size = ""
- image_id = ""
- }
-
- resource "yandex_compute_instance" "linux-vm" {
- name = "linux-vm"
- platform_id = "standard-v3"
- zone = ""
-
- resources {
- cores = ""
- memory = ""
- }
-
- boot_disk {
- disk_id = yandex_compute_disk.boot-disk.id
- }
-
- network_interface {
- subnet_id = yandex_vpc_subnet.subnet-1.id
- nat = true
- }
-
- metadata = {
- user-data = "#cloud-config\nusers:\n - name: \n groups: sudo\n shell: /bin/bash\n sudo: 'ALL=(ALL) NOPASSWD:ALL'\n ssh-authorized-keys:\n - ${file("")}"
- }
- }
-
- resource "yandex_vpc_network" "network-1" {
- name = "network1"
- }
-
- resource "yandex_vpc_subnet" "subnet-1" {
- name = "subnet1"
- zone = ""
- v4_cidr_blocks = ["192.168.10.0/24"]
- network_id = yandex_vpc_network.network-1.id
- }
- ```
+ {% include [terraform-install](../../../_includes/terraform-install.md) %}
- Where:
+ 1. In the configuration file, describe the parameters of the resources you want to create:
- * `yandex_compute_disk`: Boot [disk](../../concepts/disk.md) description:
- * `name`: Disk name.
- * `type`: Disk type.
- * `zone`: [Availability zone](../../../overview/concepts/geo-scope.md) to host the disk.
- * `size`: Disk size in GB.
- * `image_id`: ID of the image to create the VM from. You can get the image ID from the [list of public images](../images-with-pre-installed-software/get-list.md).
+ ```hcl
- {% include [id-info](../../../_includes/compute/id-info.md) %}
+ resource "yandex_compute_disk" "boot-disk" {
+ name = ""
+ type = ""
+ zone = ""
+ size = ""
+ image_id = ""
+ }
- * `yandex_compute_instance`: Description of the VM:
- * `name`: VM name.
- * `platform_id`: [Platform](../../concepts/vm-platforms.md).
- * `zone`: Availability zone to host the VM.
- * `resources`: Number of vCPU cores and the amount of RAM available to the VM. The values must match the selected [platform](../../concepts/vm-platforms.md).
- * `boot_disk`: Boot disk settings. Specify the disk ID.
- * `network_interface`: VM's [network interface](../../concepts/network.md) settings. Specify the ID of the selected [subnet](../../../vpc/concepts/network.md#subnet). To automatically assign a [public IP address](../../../vpc/concepts/address.md#public-addresses) to the VM, set `nat = true`.
+ resource "yandex_compute_instance" "linux-vm" {
+ name = "linux-vm"
+ platform_id = "standard-v3"
+ zone = ""
- {% include [add-several-net-interfaces-notice-tf](../../../_includes/compute/add-several-net-interfaces-notice-tf.md) %}
+ resources {
+ cores = ""
+ memory = ""
+ }
- * `metadata`: In the metadata, provide the username and [public key for accessing the VM via SSH](../vm-connect/ssh.md#creating-ssh-keys). For more information, see [{#T}](../../concepts/vm-metadata.md).
+ boot_disk {
+ disk_id = yandex_compute_disk.boot-disk.id
+ }
- If you want to add several users with SSH keys to the VM at the same time, [specify](../../concepts/vm-metadata.md#how-to-send-metadata) these users' data in a file and provide it under `metadata`.
- * `yandex_vpc_network`: Description of the cloud network.
- * `yandex_vpc_subnet`: Description of the subnet your VM will connect to.
+ network_interface {
+ subnet_id = yandex_vpc_subnet.subnet-1.id
+ nat = true
+ }
- {% note info %}
+ metadata = {
+ user-data = "#cloud-config\nusers:\n - name: \n groups: sudo\n shell: /bin/bash\n sudo: 'ALL=(ALL) NOPASSWD:ALL'\n ssh-authorized-keys:\n - ${file("")}"
+ }
+ }
- If you already have suitable resources, such as a cloud network and subnet, you do not need to describe them again. Use their names and IDs in the appropriate parameters.
+ resource "yandex_vpc_network" "network-1" {
+ name = "network1"
+ }
- {% endnote %}
+ resource "yandex_vpc_subnet" "subnet-1" {
+ name = "subnet1"
+ zone = ""
+ v4_cidr_blocks = ["192.168.10.0/24"]
+ network_id = yandex_vpc_network.network-1.id
+ }
+ ```
+
+ Where:
+
+ * `yandex_compute_disk`: Boot [disk](../../concepts/disk.md) description:
+ * `name`: Disk name.
+ * `type`: Disk type.
+ * `zone`: [Availability zone](../../../overview/concepts/geo-scope.md) the disk will be in.
+ * `size`: Disk size in GB.
+ * `image_id`: ID of the image to create the VM from. You can get the image ID from the [list of public images](../images-with-pre-installed-software/get-list.md).
+
+ {% include [id-info](../../../_includes/compute/id-info.md) %}
+
+ * `yandex_compute_instance`: VM description.
+ * `name`: VM name.
+ * `platform_id`: [Platform](../../concepts/vm-platforms.md).
+ * `zone`: Availability zone the VM will be in.
+ * `resources`: Number of vCPU cores and RAM available to the VM. The values must match the selected [platform](../../concepts/vm-platforms.md).
+ * `boot_disk`: Boot disk settings. Specify the disk ID.
+ * `network_interface`: VM's [network interface](../../concepts/network.md) settings. Specify the ID of the selected [subnet](../../../vpc/concepts/network.md#subnet). To automatically assign a [public IP address](../../../vpc/concepts/address.md#public-addresses) to the VM, set `nat = true`.
+
+ {% include [add-several-net-interfaces-notice-tf](../../../_includes/compute/add-several-net-interfaces-notice-tf.md) %}
+
+ * `metadata`: In the metadata, provide the username and [public key for SSH access](../vm-connect/ssh.md#creating-ssh-keys) to the VM. For more information, see [{#T}](../../concepts/vm-metadata.md).
+
+ If you want to add several users with SSH keys to the VM at the same time, [specify](../../concepts/vm-metadata.md#how-to-send-metadata) these users' data in a file and provide it under `metadata`.
+ * `yandex_vpc_network`: Description of the cloud network.
+ * `yandex_vpc_subnet`: Description of the subnet your VM will be connected to.
+
+ {% note info %}
+
+ If you already have suitable resources, such as a cloud network and subnet, you do not need to describe them again. Use their names and IDs in the appropriate parameters.
+
+ {% endnote %}
- For more information about the resources that you can create using {{ TF }}, see the [provider documentation]({{ tf-provider-resources-link }}/compute_instance).
- 1. Make sure the configuration files are correct.
- 1. In the command line, go to the directory where you created the configuration file.
- 1. Run a check using this command:
+ For more information about the resources you can create with {{ TF }}, see the [provider documentation]({{ tf-provider-resources-link }}/compute_instance).
+ 1. Make sure the configuration files are correct.
+ 1. In the command line, go to the folder where you created the configuration file.
+ 1. Run a check using this command:
- ```bash
- terraform plan
- ```
+ ```bash
+ terraform plan
+ ```
- If the configuration is described correctly, the terminal will display a list of created resources and their parameters. If the configuration contains any errors, {{ TF }} will point them out.
- 1. Deploy cloud resources.
- 1. If the configuration does not contain any errors, run this command:
+ If the configuration is described correctly, the terminal will display a list of created resources and their parameters. If the configuration contains any errors, {{ TF }} will point them out.
+ 1. Deploy cloud resources.
+ 1. If the configuration does not contain any errors, run this command:
- ```bash
- terraform apply
- ```
+ ```bash
+ terraform apply
+ ```
- 1. Confirm creating the resources: type `yes` in the terminal and press **Enter**.
+ 1. Confirm creating the resources: type `yes` in the terminal and press **Enter**.
- {% include [vm-create-check](../../../_includes/compute/vm-create-check.md) %}
+ {% include [vm-create-check](../../../_includes/compute/vm-create-check.md) %}
- {% include [ip-fqdn-connection](../../../_includes/ip-fqdn-connection.md) %}
+ {% include [ip-fqdn-connection](../../../_includes/ip-fqdn-connection.md) %}
{% endlist %}
\ No newline at end of file
diff --git a/en/compute/operations/images-with-pre-installed-software/get-info.md b/en/compute/operations/images-with-pre-installed-software/get-info.md
index 9d019da3c08..479a272e89a 100644
--- a/en/compute/operations/images-with-pre-installed-software/get-info.md
+++ b/en/compute/operations/images-with-pre-installed-software/get-info.md
@@ -191,7 +191,7 @@ You can get a public image ID or other information about it.
* `output "image"`: Output variable containing information about the OS [family](../../concepts/image.md#family):
* `value`: Returned value.
- Instead of `family` you can select any other parameter to get the information you need. For more information about the `yandex_compute_image` data source parameters, see the [provider documentation]({{ tf-provider-datasources-link }}/datasource_compute_image).
+ Instead of `family` you can select any other parameter to get the information you need. For more information about the `yandex_compute_image` data source parameters, see the [relevant provider documentation]({{ tf-provider-datasources-link }}/datasource_compute_image).
1. Create resources:
diff --git a/en/compute/operations/instance-groups/access.md b/en/compute/operations/instance-groups/access.md
index 1cee847cbe2..13206ebc6d5 100644
--- a/en/compute/operations/instance-groups/access.md
+++ b/en/compute/operations/instance-groups/access.md
@@ -109,7 +109,7 @@ To grant a user, group, or [service account](../../../iam/concepts/users/service
1. Make sure the resource has no roles assigned that you would not want to lose:
```bash
- {{ yc-compute-ig }} list-access-bindings
+ {{ yc-compute-ig }} list-access-bindings
```
1. See the CLI command description for assigning roles for an instance group:
diff --git a/en/compute/operations/instance-groups/create-with-balancer.md b/en/compute/operations/instance-groups/create-with-balancer.md
index c4f5a648b89..440cc9f7a92 100644
--- a/en/compute/operations/instance-groups/create-with-balancer.md
+++ b/en/compute/operations/instance-groups/create-with-balancer.md
@@ -15,403 +15,405 @@ To create an instance group with a network load balancer:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) to create your instance group in.
- 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
- 1. In the left-hand panel, select ![image](../../../_assets/console-icons/layers-3-diagonal.svg) **{{ ui-key.yacloud.compute.switch_groups }}**.
- 1. Click **{{ ui-key.yacloud.compute.groups.button_create }}**.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_base }}**:
- * Enter a name and description of the instance group. The naming requirements are as follows:
-
- {% include [name-format](../../../_includes/name-format.md) %}
-
- {% include [name-fqdn](../../../_includes/compute/name-fqdn.md) %}
-
- * Select a [service account](../../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete instances in the instance group, assign the `editor` [role](../../../iam/concepts/access-control/roles.md) to the service account. By default, all operations with instance groups are performed on behalf of the service account.
-
- {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
-
- * Enable the **{{ ui-key.yacloud.compute.groups.create.field_deletion-protection }}** option, if needed. You cannot delete a group with this option enabled.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_allocation }}**, select the required ones in the **{{ ui-key.yacloud.compute.groups.create.field_zone }}** field. Instances of a group may reside in [different availability zones](../../../overview/concepts/geo-scope.md).
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_instance }}**, click **{{ ui-key.yacloud.compute.groups.create.button_instance_empty-create }}** to configure a basic instance:
- * Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, enter a description for the [template](../../concepts/instance-groups/instance-template.md).
- * Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a system to be deployed on the VM instance's boot [disk](../../concepts/disk.md).
- * Under **{{ ui-key.yacloud.compute.instances.create.section_disk }}**:
- * Select the [disk type](../../../compute/concepts/disk.md#disks_types).
- * Specify the disk size.
- * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
- * Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../../../compute/concepts/vm-platforms.md).
- * Enter the required number of vCPUs, [guaranteed vCPU performance](../../concepts/performance-levels.md), and the amount of RAM.
- * {% include [include](../../../_includes/instance-groups/specify-preemptible-vm.md) %}
- * (Optional) Enable a [software-accelerated network](../../concepts/software-accelerated-network.md).
- * Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
-
- {% include [network-settings-group](../../../_includes/compute/network-settings-group.md) %}
-
- * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the instance:
- * Select a service account to link to the instance.
- * If you selected a Linux [image](../../concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
- * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
- * Click **{{ ui-key.yacloud.compute.groups.create.button_edit }}**.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_deploy }}**:
- * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-expansion }}** field, specify the number of instances you can exceed the group size by.
- * In the field **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-unavailable }}**, specify the number of instances you can decrease the group size by.
- * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-creating }}** field, specify how many instances can be created at the same time.
- * In **{{ ui-key.yacloud.compute.groups.create.field_deploy-startup-duration }}**, specify the period after which the VM instance will start receiving the load.
- * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-deleting }}** field, specify how many instances can be stopped at the same time.
- * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-strategy }}** field, specify one of the [strategies](../../concepts/instance-groups/policies/deploy-policy.md#strategy):
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ compute-name }} itself chooses which instances to stop when updating or scaling down the group.
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ compute-name }} waits for the instances to stop on their own or be stopped by the user.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_scale }}**:
- * Select the `{{ ui-key.yacloud.compute.groups.create.value_scale-fixed }}` [scaling type](../../../compute/concepts/instance-groups/scale.md).
- * Specify the instance group size.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_ylb }}**, enable the **{{ ui-key.yacloud.compute.groups.create.field_target-group-attached }}** option.
- 1. Specify the target group settings. For more information, see [{#T}](../../concepts/instance-groups/balancers.md#settings-nlb).
- 1. If needed, enable the **{{ ui-key.yacloud.compute.groups.create.section_health-check }}** to get information about the state of instances and their automatic recovery on failure.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-protocol }}** field, select the protocol for the health checks: `{{ ui-key.yacloud.common.label_http }}` or `{{ ui-key.yacloud.common.label_tcp }}`.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-path }}** field (for the HTTP type), specify the URL path for the instance group to send HTTP check requests.
- * Under **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-port }}**, specify the port number from 1 to 32767 on which the instance group will send health check requests.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-timeout }}** field, specify the response waiting time from 1 to 60 seconds.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-interval }}** field, specify the interval between the repeat checks from 1 to 60 seconds. The interval must be at least 1 second longer than the waiting time.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-healthy-threshold }}** field, specify the number of successful health checks required for the instance to be considered healthy.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-unhealthy-threshold }}** field, specify the number of failed health checks for the instance to be considered unhealthy.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_variables }}**, enter the `{{ ui-key.yacloud.common.label_key }}`-`{{ ui-key.yacloud.common.value }}` pairs, if needed.
- 1. Click **{{ ui-key.yacloud.common.create }}**.
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) to create your instance group in.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
+ 1. In the left-hand panel, select ![image](../../../_assets/console-icons/layers-3-diagonal.svg) **{{ ui-key.yacloud.compute.switch_groups }}**.
+ 1. Click **{{ ui-key.yacloud.compute.groups.button_create }}**.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_base }}**:
+ * Enter a name and description of the instance group. The naming requirements are as follows:
+
+ {% include [name-format](../../../_includes/name-format.md) %}
+
+ {% include [name-fqdn](../../../_includes/compute/name-fqdn.md) %}
+
+ * Select a [service account](../../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete VM instances in the instance group, assign the `editor` [role](../../../iam/concepts/access-control/roles.md) to the service account. By default, all operations with instance groups are performed on behalf of the service account.
+
+ {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
+
+ * Enable the **{{ ui-key.yacloud.compute.groups.create.field_deletion-protection }}** option, if needed. You cannot delete a group with this option enabled.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_allocation }}**, select the required ones in the **{{ ui-key.yacloud.compute.groups.create.field_zone }}** field. Instance groups may reside in [different availability zones](../../../overview/concepts/geo-scope.md).
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_instance }}**, click **{{ ui-key.yacloud.compute.groups.create.button_instance_empty-create }}** to configure a basic instance:
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, enter a description for the [template](../../concepts/instance-groups/instance-template.md).
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a system to be deployed on the VM instance's boot [disk](../../concepts/disk.md).
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_disk }}**:
+ * Select the [disk type](../../../compute/concepts/disk.md#disks_types).
+ * Specify the disk size.
+ * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
+ * Choose a [platform](../../../compute/concepts/vm-platforms.md).
+ * Enter the required number of vCPUs, [guaranteed vCPU performance](../../concepts/performance-levels.md), and the amount of RAM.
+ * {% include [include](../../../_includes/instance-groups/specify-preemptible-vm.md) %}
+ * (Optional) Enable a [software-accelerated network](../../concepts/software-accelerated-network.md).
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
+
+ {% include [network-settings-group](../../../_includes/compute/network-settings-group.md) %}
+
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data for access to the instance:
+ * Select a service account to link to the instance.
+ * If you selected a Linux [image](../../concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
+ * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
+ * Click **{{ ui-key.yacloud.compute.groups.create.button_edit }}**.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_deploy }}**:
+ * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-expansion }}** field, specify the number of instances you can exceed the group size by.
+
+ {% include [max-expansion-notice](../../../_includes/instance-groups/max-expansion-notice.md) %}
+ * In the field **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-unavailable }}**, specify the number of instances you can decrease the group size by.
+ * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-creating }}** field, specify how many instances can be created at the same time.
+ * In **{{ ui-key.yacloud.compute.groups.create.field_deploy-startup-duration }}**, specify the period after which the VM instance will start receiving the load.
+ * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-deleting }}** field, specify how many instances can be stopped at the same time.
+ * In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-strategy }}** field, specify one of the [strategies](../../concepts/instance-groups/policies/deploy-policy.md#strategy):
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ compute-name }} itself chooses which instances to stop when updating or scaling down the group.
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ compute-name }} waits for the instances to stop on their own or be stopped by the user.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_scale }}**:
+ * Select the `{{ ui-key.yacloud.compute.groups.create.value_scale-fixed }}` [scaling type](../../../compute/concepts/instance-groups/scale.md).
+ * Specify the instance group size.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_ylb }}**, enable the **{{ ui-key.yacloud.compute.groups.create.field_target-group-attached }}** option.
+ 1. Specify the target group settings. For more information, see [{#T}](../../concepts/instance-groups/balancers.md#settings-nlb).
+ 1. If needed, enable the **{{ ui-key.yacloud.compute.groups.create.section_health-check }}** to get information about the state of instances and their automatic recovery on failure.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-protocol }}** field, select the protocol for the health checks: `{{ ui-key.yacloud.common.label_http }}` or `{{ ui-key.yacloud.common.label_tcp }}`.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-path }}** field (for the HTTP type), specify the URL path for the instance group to send HTTP check requests.
+ * Under **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-port }}**, specify the port number from 1 to 32767 on which the instance group will send health check requests.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-timeout }}** field, specify the response waiting time from 1 to 60 seconds.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-interval }}** field, specify the interval between the repeat checks from 1 to 60 seconds. The interval must be at least 1 second longer than the waiting time.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-healthy-threshold }}** field, specify the number of successful health checks required for the instance to be considered healthy.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-unhealthy-threshold }}** field, specify the number of failed health checks for the instance to be considered unhealthy.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_variables }}**, enter the `{{ ui-key.yacloud.common.label_key }}`-`{{ ui-key.yacloud.common.value }}` pairs, if needed.
+ 1. Click **{{ ui-key.yacloud.common.create }}**.
- CLI {#cli}
- {% include [cli-install.md](../../../_includes/cli-install.md) %}
+ {% include [cli-install.md](../../../_includes/cli-install.md) %}
- {% include [default-catalogue.md](../../../_includes/default-catalogue.md) %}
+ {% include [default-catalogue.md](../../../_includes/default-catalogue.md) %}
- 1. View the description of the [CLI](../../../cli/) command to create an instance group:
+ 1. View the description of the [CLI](../../../cli/) command to create an instance group:
- ```bash
- {{ yc-compute-ig }} create --help
- ```
+ ```bash
+ {{ yc-compute-ig }} create --help
+ ```
- 1. Check if there are any [networks](../../../vpc/concepts/network.md#network) in the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder):
+ 1. Check whether the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) contains any [networks](../../../vpc/concepts/network.md#network):
- ```bash
- yc vpc network list
- ```
+ ```bash
+ yc vpc network list
+ ```
- If there are none, [create a network](../../../vpc/operations/network-create.md).
- 1. Select one of the {{ marketplace-full-name }} public images, e.g., [CentOS 7](/marketplace/products/yc/centos-7).
+ If there are none, [create a network](../../../vpc/operations/network-create.md).
+ 1. Select one of the {{ marketplace-full-name }} public images, e.g., [CentOS 7](/marketplace/products/yc/centos-7).
- {% include [standard-images.md](../../../_includes/standard-images.md) %}
+ {% include [standard-images.md](../../../_includes/standard-images.md) %}
- 1. Create a YAML file with any name, e.g., `specification.yaml`.
- 1. In the created file, indicate the following:
- * General information about the instance group:
+ 1. Create a YAML file with any name, e.g., `specification.yaml`.
+ 1. In the created file, indicate the following:
+ * General information about the instance group:
- ```yaml
- name: first-fixed-group-with-balancer
- service_account_id:
- description: "This instance group was created from YAML config."
- ```
+ ```yaml
+ name: first-fixed-group-with-balancer
+ service_account_id:
+ description: "This instance group was created using a YAML configuration file."
+ ```
- Where:
- * `name`: Name of the instance group. The name must be unique within the folder. The name may contain lowercase Latin letters, numbers, and hyphens. The first character must be a letter. The last character cannot be a hyphen. The name may be up to 63 characters long.
- * `service_account_id`: Service account ID.
+ Where:
+ * `name`: Instance group name. The name must be unique within the folder. The name may contain lowercase Latin letters, numbers, and hyphens. The first character must be a letter. The last character cannot be a hyphen. The name may be up to 63 characters long.
+ * `service_account_id`: Service account ID.
- {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
-
- * `description`: Description of the instance group.
- * [Instance template](../../concepts/instance-groups/instance-template.md), such as:
-
- ```yaml
- instance_template:
- platform_id: standard-v3
- resources_spec:
- memory: 2g
- cores: 2
- boot_disk_spec:
- mode: READ_WRITE
- disk_spec:
- image_id: fdvk34al8k5n********
- type_id: network-hdd
- size: 32g
- network_interface_specs:
- - network_id: c64mknqgnd8a********
- primary_v4_address_spec: {}
- security_group_ids:
- - enps0ar5s3ti********
- scheduling_policy:
- preemptible: false
- placement_policy:
- placement_group_id: rmppvhrgm77g********
- ```
-
- {% include [default-unit-size](../../../_includes/instance-groups/default-unit-size.md) %}
-
- Where:
- * `platform_id`: [Platform](../../concepts/vm-platforms.md) ID.
- * `memory`: Amount of RAM.
- * `cores`: Number of processor cores (vCPUs).
- * `mode`: [Disk](../../concepts/disk.md) access mode.
- * `READ_ONLY`: Read-only access.
- * `READ_WRITE`: Read/write access.
- * `image_id`: ID of the public image. You can view image IDs in the [management console]({{ link-console-main }}) when creating a VM or in [{{ marketplace-name }}](/marketplace) on the image page under **Product IDs**.
- * `type_id`: Disk type.
- * `size`: Disk size.
- * `network_id`: ID of the `default-net` network.
- * `primary_v4_address_spec`: IPv4 specification. You can allow public access to the group's instances by specifying the IP version for the [public IP address](../../../vpc/concepts/address.md#public-addresses). For more information, see [{#T}](../../concepts/instance-groups/instance-template.md#instance-template).
- * `security_group_ids`: List of [security group](../../../vpc/concepts/security-groups.md) IDs.
- * `scheduling_policy`: Scheduling policy configuration.
- * `preemptible`: Flag for creating [preemptible VMs](../../concepts/preemptible-vm.md).
- * `true`: Create a preemptible VM.
- * `false` (default): Create a regular VM.
-
- When creating a preemptible instance group, keep in mind that the VM instances will terminate after 24 hours of continuous operation or earlier. VMs may not be able to restart immediately due to insufficient resources. This may occur in the event of a sharp increase in the use of {{ yandex-cloud }} computing resources.
- * `placement_policy`: (Optional) [VM placement group](../../concepts/placement-groups.md) parameters:
- * `placement_group_id`: Placement group ID.
- * [Policies](../../concepts/instance-groups/policies/index.md):
-
- ```yaml
- deploy_policy:
- max_unavailable: 1
- max_expansion: 0
- scale_policy:
- fixed_scale:
- size: 3
- allocation_policy:
- zones:
- - zone_id: {{ region-id }}-a
- instance_tags_pool:
- - first
- - second
- - third
- ```
-
- Where:
- * `deploy_policy`: [Deployment policy](../../concepts/instance-groups/policies/deploy-policy.md) for instances in the group.
- * `scale_policy`: [Scaling policy](../../concepts/instance-groups/policies/scale-policy.md) for instances in the group.
- * `allocation_policy`: [Policy for allocating](../../concepts/instance-groups/policies/allocation-policy.md) VM instances across [availability zones](../../../overview/concepts/geo-scope.md).
- * {{ network-load-balancer-name }} [target group](../../../network-load-balancer/concepts/target-resources.md):
-
- ```yaml
- load_balancer_spec:
- target_group_spec:
- name: first-target-group
- ```
-
- Where:
- * `target_group_spec`: Specification of the {{ network-load-balancer-name }} target group associated with the instance group.
- * `name`: Any name of the {{ network-load-balancer-name }} target group. The name must be unique within the folder. The name may contain lowercase Latin letters, numbers, and hyphens. The first character must be a letter. The last character cannot be a hyphen. The name may be up to 63 characters long.
-
- For more information about the target group settings, see [{#T}](../../concepts/instance-groups/balancers.md#settings-nlb).
-
- Full code for the `specification.yaml` file:
-
- ```yaml
- name: first-fixed-group-with-balancer
- service_account_id:
- description: "This instance group was created from YAML config."
- instance_template:
- platform_id: standard-v3
- resources_spec:
- memory: 2g
- cores: 2
- boot_disk_spec:
- mode: READ_WRITE
- disk_spec:
- image_id: fdvk34al8k5n********
- type_id: network-hdd
- size: 32g
- network_interface_specs:
- - network_id: c64mknqgnd8a********
- primary_v4_address_spec: {}
- security_group_ids:
- - enps0ar5s3ti********
- placement_policy:
- placement_group_id: rmppvhrgm77g********
- deploy_policy:
- max_unavailable: 1
- max_expansion: 0
- scale_policy:
- fixed_scale:
- size: 3
- allocation_policy:
- zones:
- - zone_id: {{ region-id }}-a
- instance_tags_pool:
- - first
- - second
- - third
- load_balancer_spec:
- target_group_spec:
- name: first-target-group
- ```
-
- 1. Create an instance group in the default folder:
-
- ```bash
- {{ yc-compute-ig }} create --file specification.yaml
- ```
-
- This command creates a group of three similar instances with the following configuration:
- * Name: `first-fixed-group-with-balancer`
- * OS: CentOS 7
- * Network: `default-net`
- * Availability zone: `{{ region-id }}-a`
- * vCPUs: 2; RAM: 2 GB
- * Network HDD: 32 GB
- * Target group: `first-target-group`
- 1. [Create a network load balancer](../../../network-load-balancer/operations/load-balancer-create.md) and add `first-target-group` to it.
-
-- {{ TF }} {#tf}
+ {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
- {% include [terraform-install](../../../_includes/terraform-install.md) %}
-
- 1. In the configuration file, describe the parameters of the resources you want to create:
-
- ```hcl
- resource "yandex_iam_service_account" "ig-sa" {
- name = "ig-sa"
- description = "Service account for managing the instance group."
- }
-
- resource "yandex_resourcemanager_folder_iam_member" "editor" {
- folder_id = ""
- role = "editor"
- member = "serviceAccount:${yandex_iam_service_account.ig-sa.id}"
- }
-
- resource "yandex_compute_instance_group" "ig-1" {
- name = "fixed-ig-with-balancer"
- folder_id = ""
- service_account_id = "${yandex_iam_service_account.ig-sa.id}"
- deletion_protection = ""
- instance_template {
- platform_id = "standard-v3"
- resources {
- memory =
- cores =
- }
-
- boot_disk {
- mode = "READ_WRITE"
- initialize_params {
- image_id = ""
- }
- }
-
- network_interface {
- network_id = "${yandex_vpc_network.network-1.id}"
- subnet_ids = ["${yandex_vpc_subnet.subnet-1.id}"]
- security_group_ids = [""]
- }
-
- metadata = {
- ssh-keys = ":"
- }
- }
-
- scale_policy {
- fixed_scale {
- size =
- }
- }
-
- allocation_policy {
- zones = ["{{ region-id }}-a"]
- }
-
- deploy_policy {
- max_unavailable = 1
- max_expansion = 0
- }
-
- load_balancer {
- target_group_name = "target-group"
- target_group_description = "{{ network-load-balancer-name }} target group"
- }
- }
-
- resource "yandex_lb_network_load_balancer" "lb-1" {
- name = "network-load-balancer-1"
-
- listener {
- name = "network-load-balancer-1-listener"
- port = 80
- external_address_spec {
- ip_version = "ipv4"
- }
- }
-
- attached_target_group {
- target_group_id = yandex_compute_instance_group.ig-1.load_balancer.0.target_group_id
-
- healthcheck {
- name = "http"
- http_options {
- port = 80
- path = "/index.html"
- }
- }
- }
- }
-
- resource "yandex_vpc_network" "network-1" {
- name = "network1"
- }
-
- resource "yandex_vpc_subnet" "subnet-1" {
- name = "subnet1"
- zone = "{{ region-id }}-a"
- network_id = "${yandex_vpc_network.network-1.id}"
- v4_cidr_blocks = ["192.168.10.0/24"]
- }
- ```
-
- Where:
- * `yandex_iam_service_account`: Description of the [service account](../../../iam/concepts/users/service-accounts.md). All operations with VM groups are performed on behalf of the service account.
+ * `description`: Instance group description.
+ * [Instance template](../../concepts/instance-groups/instance-template.md), such as:
+
+ ```yaml
+ instance_template:
+ platform_id: standard-v3
+ resources_spec:
+ memory: 2g
+ cores: 2
+ boot_disk_spec:
+ mode: READ_WRITE
+ disk_spec:
+ image_id: fdvk34al8k5n********
+ type_id: network-hdd
+ size: 32g
+ network_interface_specs:
+ - network_id: c64mknqgnd8a********
+ primary_v4_address_spec: {}
+ security_group_ids:
+ - enps0ar5s3ti********
+ scheduling_policy:
+ preemptible: false
+ placement_policy:
+ placement_group_id: rmppvhrgm77g********
+ ```
+
+ {% include [default-unit-size](../../../_includes/instance-groups/default-unit-size.md) %}
+
+ Where:
+ * `platform_id`: [Platform](../../concepts/vm-platforms.md) ID.
+ * `memory`: Amount of memory (RAM).
+ * `cores`: Number of processor cores (vCPUs).
+ * `mode`: [Disk](../../concepts/disk.md) access mode.
+ * `READ_ONLY`: Read-only access.
+ * `READ_WRITE`: Read/write access.
+ * `image_id`: Public image ID. You can view image IDs in the [management console]({{ link-console-main }}) when creating a VM or in [{{ marketplace-name }}](/marketplace) on the image page under **Product IDs**.
+ * `type_id`: Disk type.
+ * `size`: Disk size.
+ * `network_id`: `default-net` network ID.
+ * `primary_v4_address_spec`: IPv4 specification. You can allow public access to the group's instances by specifying the IP version for the [public IP address](../../../vpc/concepts/address.md#public-addresses). For more information, see [{#T}](../../concepts/instance-groups/instance-template.md#instance-template).
+ * `security_group_ids`: List of [security group](../../../vpc/concepts/security-groups.md) IDs.
+ * `scheduling_policy`: Scheduling policy configuration.
+ * `preemptible`: Flag for creating [preemptible VMs](../../concepts/preemptible-vm.md).
+ * `true`: Create a preemptible VM.
+ * `false` (default): Create a regular VM.
+
+ When creating a preemptible instance group, keep in mind that the VM instances will terminate after 24 hours of continuous operation or earlier. VMs may not be able to restart immediately due to insufficient resources. This may occur in the event of a sharp increase in the use of {{ yandex-cloud }} computing resources.
+ * `placement_policy`: (Optional) [Instance placement group](../../concepts/placement-groups.md) parameters:
+ * `placement_group_id`: Placement group ID.
+ * [Policies](../../concepts/instance-groups/policies/index.md):
+
+ ```yaml
+ deploy_policy:
+ max_unavailable: 1
+ max_expansion: 0
+ scale_policy:
+ fixed_scale:
+ size: 3
+ allocation_policy:
+ zones:
+ - zone_id: {{ region-id }}-a
+ instance_tags_pool:
+ - first
+ - second
+ - third
+ ```
+
+ Where:
+ * `deploy_policy`: Instance [deployment policy](../../concepts/instance-groups/policies/deploy-policy.md) for the group.
+ * `scale_policy`: Instance [scaling policy](../../concepts/instance-groups/policies/scale-policy.md) for the group.
+ * `allocation_policy`: Instance [allocation policy](../../concepts/instance-groups/policies/allocation-policy.md) between [availability zones](../../../overview/concepts/geo-scope.md).
+ * {{ network-load-balancer-name }} [target group](../../../network-load-balancer/concepts/target-resources.md):
+
+ ```yaml
+ load_balancer_spec:
+ target_group_spec:
+ name: first-target-group
+ ```
+
+ Where:
+ * `target_group_spec`: Specification of the {{ network-load-balancer-name }} target group linked with the instance group.
+ * `name`: Name for the {{ network-load-balancer-name }} target group. The name must be unique within the folder. The name may contain lowercase Latin letters, numbers, and hyphens. The first character must be a letter. The last character cannot be a hyphen. The name may be up to 63 characters long.
+
+ For more information about target group settings, see [{#T}](../../concepts/instance-groups/balancers.md#settings-nlb).
+
+ Full code for the `specification.yaml` file:
+
+ ```yaml
+ name: first-fixed-group-with-balancer
+ service_account_id:
+ description: "This instance group was created using a YAML configuration file."
+ instance_template:
+ platform_id: standard-v3
+ resources_spec:
+ memory: 2g
+ cores: 2
+ boot_disk_spec:
+ mode: READ_WRITE
+ disk_spec:
+ image_id: fdvk34al8k5n********
+ type_id: network-hdd
+ size: 32g
+ network_interface_specs:
+ - network_id: c64mknqgnd8a********
+ primary_v4_address_spec: {}
+ security_group_ids:
+ - enps0ar5s3ti********
+ placement_policy:
+ placement_group_id: rmppvhrgm77g********
+ deploy_policy:
+ max_unavailable: 1
+ max_expansion: 0
+ scale_policy:
+ fixed_scale:
+ size: 3
+ allocation_policy:
+ zones:
+ - zone_id: {{ region-id }}-a
+ instance_tags_pool:
+ - first
+ - second
+ - third
+ load_balancer_spec:
+ target_group_spec:
+ name: first-target-group
+ ```
+
+ 1. Create an instance group in the default folder:
+
+ ```bash
+ {{ yc-compute-ig }} create --file specification.yaml
+ ```
+
+ This command creates a group of three same-type VMs with the following configuration:
+ * Name: `first-fixed-group-with-balancer`
+ * OS: CentOS 7
+ * Network: `default-net`
+ * Availability zone: `{{ region-id }}-a`
+ * vCPUs: 2; RAM: 2 GB
+ * Network HDD: 32 GB
+ * Target group: `first-target-group`
+ 1. [Create a network load balancer](../../../network-load-balancer/operations/load-balancer-create.md) and add `first-target-group` to it.
- {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
+- {{ TF }} {#tf}
- * `yandex_resourcemanager_folder_iam_member`: Description of access permissions to the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) the service account belongs to. To be able to create, update, and delete instances in the instance group, assign the `editor` [role](../../../iam/concepts/access-control/roles.md) to the service account.
- * `yandex_compute_instance_group`: Description of the instance group:
- * General information about the instance group:
- * `name`: Name of the instance group.
- * `folder_id`: Folder ID.
- * `service_account_id`: Service account ID.
- * `deletion_protection`: Instance group deletion protection, `true` or `false`. You cannot delete an instance group with this option enabled. The default value is `false`.
- * [Instance template](../../concepts/instance-groups/instance-template.md):
- * `platform_id`: [Platform](../../concepts/vm-platforms.md).
- * `resources`: Number of vCPU cores and the amount of RAM available to the VM. The values must match the selected [platform](../../concepts/vm-platforms.md).
- * `boot_disk`: Boot [disk](../../concepts/disk.md) settings.
- * ID of the selected image. You can get the image ID from the [list of public images](../images-with-pre-installed-software/get-list.md).
- * Disk access mode: `READ_ONLY` (read) or `READ_WRITE` (read and write).
- * `network_interface`: [Network](../../../vpc/concepts/network.md#network) settings. Specify the IDs of your network, [subnet](../../../vpc/concepts/network.md#subnet), and [security groups](../../../vpc/concepts/security-groups.md).
- * `metadata`: In the [metadata](../../concepts/vm-metadata.md), provide the public key for VM access via SSH. For more information, see [{#T}](../../concepts/vm-metadata.md).
- * [Policies](../../concepts/instance-groups/policies/index.md):
- * `deploy_policy`: [Deployment policy](../../concepts/instance-groups/policies/deploy-policy.md) for instances in the group.
- * `scale_policy`: [Scaling policy](../../concepts/instance-groups/policies/scale-policy.md) for instances in the group.
- * `allocation_policy`: [Policy for allocating](../../concepts/instance-groups/policies/allocation-policy.md) VM instances across [availability zones](../../../overview/concepts/geo-scope.md).
- * {{ network-load-balancer-name }} [target group](../../../network-load-balancer/concepts/target-resources.md):
- * `target_group_name`: {{ network-load-balancer-name }} target group name.
- * `target_group_description`: {{ network-load-balancer-name }} target group description.
- For more information about the target group settings, see [{#T}](../../concepts/instance-groups/balancers.md#settings-nlb).
- * `yandex_vpc_network`: Description of the cloud network.
- * `yandex_vpc_subnet`: Description of the subnet the instance group will connect to.
- * `yandex_lb_network_load_balancer`: Description of the [{{ network-load-balancer-name }} network load balancer](../../../network-load-balancer/concepts/index.md) to attach the target group to.
-
- {% note info %}
-
- If you already have suitable resources, such as a service account, cloud network, subnet, and network load balancer, you do not need to describe them again. Use their names and IDs in the appropriate parameters.
-
- {% endnote %}
-
- For more information about the resources you can create with {{ TF }}, see the [provider documentation]({{ tf-provider-link }}).
- 1. Create resources:
-
- {% include [terraform-validate-plan-apply](../../../_tutorials/_tutorials_includes/terraform-validate-plan-apply.md) %}
-
- All the resources you need will then be created in the specified folder. You can check the new resources and their configuration using the [management console]({{ link-console-main }}).
+ {% include [terraform-install](../../../_includes/terraform-install.md) %}
+
+ 1. In the configuration file, describe the parameters of the resources you want to create:
+
+ ```hcl
+ resource "yandex_iam_service_account" "ig-sa" {
+ name = "ig-sa"
+ description = "Service account for managing the instance group."
+ }
+
+ resource "yandex_resourcemanager_folder_iam_member" "editor" {
+ folder_id = ""
+ role = "editor"
+ member = "serviceAccount:${yandex_iam_service_account.ig-sa.id}"
+ }
+
+ resource "yandex_compute_instance_group" "ig-1" {
+ name = "fixed-ig-with-balancer"
+ folder_id = ""
+ service_account_id = "${yandex_iam_service_account.ig-sa.id}"
+ deletion_protection = ""
+ instance_template {
+ platform_id = "standard-v3"
+ resources {
+ memory =
+ cores =
+ }
+
+ boot_disk {
+ mode = "READ_WRITE"
+ initialize_params {
+ image_id = ""
+ }
+ }
+
+ network_interface {
+ network_id = "${yandex_vpc_network.network-1.id}"
+ subnet_ids = ["${yandex_vpc_subnet.subnet-1.id}"]
+ security_group_ids = [""]
+ }
+
+ metadata = {
+ ssh-keys = ":"
+ }
+ }
+
+ scale_policy {
+ fixed_scale {
+ size =
+ }
+ }
+
+ allocation_policy {
+ zones = ["{{ region-id }}-a"]
+ }
+
+ deploy_policy {
+ max_unavailable = 1
+ max_expansion = 0
+ }
+
+ load_balancer {
+ target_group_name = "target-group"
+ target_group_description = "{{ network-load-balancer-name }} target group"
+ }
+ }
+
+ resource "yandex_lb_network_load_balancer" "lb-1" {
+ name = "network-load-balancer-1"
+
+ listener {
+ name = "network-load-balancer-1-listener"
+ port = 80
+ external_address_spec {
+ ip_version = "ipv4"
+ }
+ }
+
+ attached_target_group {
+ target_group_id = yandex_compute_instance_group.ig-1.load_balancer.0.target_group_id
+
+ healthcheck {
+ name = "http"
+ http_options {
+ port = 80
+ path = "/index.html"
+ }
+ }
+ }
+ }
+
+ resource "yandex_vpc_network" "network-1" {
+ name = "network1"
+ }
+
+ resource "yandex_vpc_subnet" "subnet-1" {
+ name = "subnet1"
+ zone = "{{ region-id }}-a"
+ network_id = "${yandex_vpc_network.network-1.id}"
+ v4_cidr_blocks = ["192.168.10.0/24"]
+ }
+ ```
+
+ Where:
+ * `yandex_iam_service_account`: [Service account](../../../iam/concepts/users/service-accounts.md) description. All operations with instance groups are performed on behalf of the service account.
+
+ {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
+
+ * `yandex_resourcemanager_folder_iam_member`: Description of access permissions to the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) the service account belongs to. To be able to create, update, and delete VM instances in the instance group, assign the `editor` [role](../../../iam/concepts/access-control/roles.md) to the service account.
+ * `yandex_compute_instance_group`: Instance group description:
+ * General information about the instance group:
+ * `name`: Instance group name.
+ * `folder_id`: Folder ID.
+ * `service_account_id`: Service account ID.
+ * `deletion_protection`: Instance group deletion protection, `true` or `false`. You cannot delete an instance group with this option enabled. The default value is `false`.
+ * [Instance template](../../concepts/instance-groups/instance-template.md):
+ * `platform_id`: [Platform](../../concepts/vm-platforms.md).
+ * `resources`: Number of vCPU cores and RAM available to the VM. The values must match the selected [platform](../../concepts/vm-platforms.md).
+ * `boot_disk`: Boot [disk](../../concepts/disk.md) settings.
+ * ID of the selected image. You can get the image ID from the [list of public images](../images-with-pre-installed-software/get-list.md).
+ * Disk access mode: `READ_ONLY` or `READ_WRITE`.
+ * `network_interface`: [Network](../../../vpc/concepts/network.md#network) configurations. Specify the IDs of your network, [subnet](../../../vpc/concepts/network.md#subnet), and [security groups](../../../vpc/concepts/security-groups.md).
+ * `metadata`: In [metadata](../../concepts/vm-metadata.md), provide the public key for SSH access to the VM. For more information, see [{#T}](../../concepts/vm-metadata.md).
+ * [Policies](../../concepts/instance-groups/policies/index.md):
+ * `deploy_policy`: [Deployment policy](../../concepts/instance-groups/policies/deploy-policy.md) for VMs in the group.
+ * `scale_policy`: [Scaling policy](../../concepts/instance-groups/policies/scale-policy.md) for VMs in the group.
+ * `allocation_policy`: VM [allocation policy](../../concepts/instance-groups/policies/allocation-policy.md) between [availability zones](../../../overview/concepts/geo-scope.md).
+ * {{ network-load-balancer-name }} [target group](../../../network-load-balancer/concepts/target-resources.md):
+ * `target_group_name`: Name of the {{ network-load-balancer-name }} target group.
+ * `target_group_description`: Description of the {{ network-load-balancer-name }} target group.
+ For more information about target group settings, see [{#T}](../../concepts/instance-groups/balancers.md#settings-nlb).
+ * `yandex_vpc_network`: Description of the cloud network.
+ * `yandex_vpc_subnet`: Description of the subnet the instance group will connect to.
+ * `yandex_lb_network_load_balancer`: Description of the [{{ network-load-balancer-name }} network load balancer](../../../network-load-balancer/concepts/index.md) the target group will connect to.
+
+ {% note info %}
+
+ If you already have suitable resources, such as a service account, cloud network, subnet, and network load balancer, you do not need to describe them again. Use their names and IDs in the appropriate parameters.
+
+ {% endnote %}
+
+ For more information about the resources you can create with {{ TF }}, see the [provider documentation]({{ tf-provider-link }}).
+ 1. Create resources:
+
+ {% include [terraform-validate-plan-apply](../../../_tutorials/_tutorials_includes/terraform-validate-plan-apply.md) %}
+
+ All the resources you need will then be created in the specified folder. You can check the new resources and their configuration using the [management console]({{ link-console-main }}).
- API {#api}
- Use the [create](../../instancegroup/api-ref/InstanceGroup/create.md) REST API method for the [InstanceGroup](../../instancegroup/api-ref/InstanceGroup/index.md) resource or the [InstanceGroupService/Create](../../instancegroup/api-ref/grpc/InstanceGroup/create.md) gRPC API call.
+ Use the [create](../../instancegroup/api-ref/InstanceGroup/create.md) REST API method for the [InstanceGroup](../../instancegroup/api-ref/InstanceGroup/index.md) resource or the [InstanceGroupService/Create](../../instancegroup/api-ref/grpc/InstanceGroup/create.md) gRPC API call.
{% endlist %}
\ No newline at end of file
diff --git a/en/compute/operations/instance-groups/create-with-load-balancer.md b/en/compute/operations/instance-groups/create-with-load-balancer.md
index 68ebeda1c51..3fc69dd3741 100644
--- a/en/compute/operations/instance-groups/create-with-load-balancer.md
+++ b/en/compute/operations/instance-groups/create-with-load-balancer.md
@@ -15,379 +15,381 @@ To create an instance group with an L7 load balancer:
- Management console {#console}
- 1. In the [management console]({{ link-console-main }}), select the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) to create your instance group in.
- 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
- 1. In the left-hand panel, select ![image](../../../_assets/console-icons/layers-3-diagonal.svg) **{{ ui-key.yacloud.compute.switch_groups }}**.
- 1. Click **{{ ui-key.yacloud.compute.groups.button_create }}**.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_base }}**:
- * Enter a name and description of the instance group. The naming requirements are as follows:
-
- {% include [name-format](../../../_includes/name-format.md) %}
-
- {% include [name-fqdn](../../../_includes/compute/name-fqdn.md) %}
-
- * Select a [service account](../../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete instances in the instance group, assign the `editor` [role](../../../iam/concepts/access-control/roles.md) to the service account. By default, all operations with instance groups are performed on behalf of the service account.
-
- {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
-
- * Enable the **{{ ui-key.yacloud.compute.groups.create.field_deletion-protection }}** option, if needed. You cannot delete a group with this option enabled.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_allocation }}**, select the required ones in the **{{ ui-key.yacloud.compute.groups.create.field_zone }}** field. Instances of a group may reside in [different availability zones](../../../overview/concepts/geo-scope.md).
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_instance }}**, click **{{ ui-key.yacloud.compute.groups.create.button_instance_empty-create }}** to configure a basic instance:
- * Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, enter a description for the [template](../../concepts/instance-groups/instance-template.md).
- * Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a system to be deployed on the VM instance's boot [disk](../../concepts/disk.md).
- * Under **{{ ui-key.yacloud.compute.instances.create.section_disk }}**:
- * Select the [disk type](../../../compute/concepts/disk.md#disks_types).
- * Specify the disk size.
- * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
- * Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
- * Choose a [platform](../../../compute/concepts/vm-platforms.md).
- * Enter the required number of vCPUs, [guaranteed vCPU performance](../../concepts/performance-levels.md), and the amount of RAM.
- * {% include [include](../../../_includes/instance-groups/specify-preemptible-vm.md) %}
- * (Optional) Enable a [software-accelerated network](../../concepts/software-accelerated-network.md).
- * Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
-
- {% include [network-settings-group](../../../_includes/compute/network-settings-group.md) %}
-
- * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the information required to access the instance:
- * Select a service account to link to the instance.
- * If you selected a Linux [image](../../concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
- * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
- * Click **{{ ui-key.yacloud.compute.groups.create.button_edit }}**.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_deploy }}**:
+ 1. In the [management console]({{ link-console-main }}), select the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) to create your instance group in.
+ 1. In the list of services, select **{{ ui-key.yacloud.iam.folder.dashboard.label_compute }}**.
+ 1. In the left-hand panel, select ![image](../../../_assets/console-icons/layers-3-diagonal.svg) **{{ ui-key.yacloud.compute.switch_groups }}**.
+ 1. Click **{{ ui-key.yacloud.compute.groups.button_create }}**.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_base }}**:
+ * Enter a name and description of the instance group. The naming requirements are as follows:
+
+ {% include [name-format](../../../_includes/name-format.md) %}
+
+ {% include [name-fqdn](../../../_includes/compute/name-fqdn.md) %}
+
+ * Select a [service account](../../../iam/concepts/users/service-accounts.md) from the list or create a new one. To be able to create, update, and delete VM instances in the instance group, assign the `editor` [role](../../../iam/concepts/access-control/roles.md) to the service account. By default, all operations with instance groups are performed on behalf of the service account.
+
+ {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
+
+ * Enable the **{{ ui-key.yacloud.compute.groups.create.field_deletion-protection }}** option, if needed. You cannot delete a group with this option enabled.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_allocation }}**, select the required ones in the **{{ ui-key.yacloud.compute.groups.create.field_zone }}** field. Instances of a group may reside in [different availability zones](../../../overview/concepts/geo-scope.md).
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_instance }}**, click **{{ ui-key.yacloud.compute.groups.create.button_instance_empty-create }}** to configure a basic instance:
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_base }}**, enter a description for the [template](../../concepts/instance-groups/instance-template.md).
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_image }}**, select a system to be deployed on the VM instance's boot [disk](../../concepts/disk.md).
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_disk }}**:
+ * Select the [disk type](../../../compute/concepts/disk.md#disks_types).
+ * Specify the disk size.
+ * To add more disks, click **{{ ui-key.yacloud.compute.component.instance-storage-dialog.button_add-disk }}**.
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_platform }}**:
+ * Choose a [platform](../../../compute/concepts/vm-platforms.md).
+ * Enter the required number of vCPUs, [guaranteed vCPU performance](../../concepts/performance-levels.md), and the amount of RAM.
+ * {% include [include](../../../_includes/instance-groups/specify-preemptible-vm.md) %}
+ * (Optional) Enable a [software-accelerated network](../../concepts/software-accelerated-network.md).
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_network }}**:
+
+ {% include [network-settings-group](../../../_includes/compute/network-settings-group.md) %}
+
+ * Under **{{ ui-key.yacloud.compute.instances.create.section_access }}**, specify the data for access to the instance:
+ * Select a service account to link to the instance.
+ * If you selected a Linux [image](../../concepts/image.md), fill out the fields **{{ ui-key.yacloud.compute.instances.create.field_user }}** and **{{ ui-key.yacloud.compute.instances.create.field_key }}**. For a key, use the contents of the [public key](../../../compute/operations/vm-connect/ssh.md#creating-ssh-keys) file.
+ * Select `{{ ui-key.yacloud.compute.instances.create.field_serial-port-enable }}`, if needed.
+ * Click **{{ ui-key.yacloud.compute.groups.create.button_edit }}**.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_deploy }}**:
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-expansion }}** field, specify the number of instances you can exceed the group size by.
+
+ {% include [max-expansion-notice](../../../_includes/instance-groups/max-expansion-notice.md) %}
* In the field **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-unavailable }}**, specify the number of instances you can decrease the group size by.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-creating }}** field, specify how many instances can be created at the same time.
* In **{{ ui-key.yacloud.compute.groups.create.field_deploy-startup-duration }}**, specify the period after which the VM instance will start receiving the load.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-max-deleting }}** field, specify how many instances can be stopped at the same time.
* In the **{{ ui-key.yacloud.compute.groups.create.field_deploy-strategy }}** field, specify one of the [strategies](../../../compute/concepts/instance-groups/policies/deploy-policy.md#strategy):
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ ig-name }} itself chooses which instances to stop when updating or scaling down the group.
- * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ ig-name }} waits for the instances to stop on their own or be stopped by the user.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_scale }}**:
- * Select the `{{ ui-key.yacloud.compute.groups.create.value_scale-fixed }}` [scaling type](../../../compute/concepts/instance-groups/scale.md).
- * Specify the instance group size.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_alb }}**, enable the **{{ ui-key.yacloud.compute.groups.create.field_target-group-attached }}** option.
- 1. Specify the target group settings. For more information, see [{#T}](../../concepts/instance-groups/balancers.md#settings-alb).
- 1. If needed, enable the **{{ ui-key.yacloud.compute.groups.create.section_health-check }}** to get information about the state of instances and their automatic recovery on failure.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-protocol }}** field, select the protocol for the health checks: `{{ ui-key.yacloud.common.label_http }}` or `{{ ui-key.yacloud.common.label_tcp }}`.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-path }}** field (for the HTTP type), specify the URL path for the HTTP check requests sent from {{ ig-name }}.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-port }}** field, specify the port number from 1 to 32767 for {{ ig-name }} to send the health check requests to.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-timeout }}** field, specify the response waiting time from 1 to 60 seconds.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-interval }}** field, specify the interval between the repeat checks from 1 to 60 seconds. The interval must be at least 1 second longer than the waiting time.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-healthy-threshold }}** field, specify the number of successful health checks required for the instance to be considered healthy.
- * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-unhealthy-threshold }}** field, specify the number of failed health checks for the instance to be considered unhealthy.
- 1. Under **{{ ui-key.yacloud.compute.groups.create.section_variables }}**, enter the `{{ ui-key.yacloud.common.label_key }}`-`{{ ui-key.yacloud.common.value }}` pairs, if needed.
- 1. Click **{{ ui-key.yacloud.common.create }}**.
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-proactive }}`: {{ ig-name }} itself chooses which instances to stop when updating or scaling down the group.
+ * `{{ ui-key.yacloud.compute.groups.create.value_strategy-opportunistic }}`: {{ ig-name }} waits for the instances to stop on their own or be stopped by the user.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_scale }}**:
+ * Select the `{{ ui-key.yacloud.compute.groups.create.value_scale-fixed }}` [scaling type](../../../compute/concepts/instance-groups/scale.md).
+ * Specify the instance group size.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_alb }}**, enable the **{{ ui-key.yacloud.compute.groups.create.field_target-group-attached }}** option.
+ 1. Specify the target group settings. For more information, see [{#T}](../../concepts/instance-groups/balancers.md#settings-alb).
+ 1. If needed, enable the **{{ ui-key.yacloud.compute.groups.create.section_health-check }}** to get information about the state of instances and their automatic recovery on failure.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-protocol }}** field, select the protocol for the health checks: `{{ ui-key.yacloud.common.label_http }}` or `{{ ui-key.yacloud.common.label_tcp }}`.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-path }}** field (for the HTTP type), specify the URL path for the HTTP check requests sent from {{ ig-name }}.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-port }}** field, specify the port number from 1 to 32767 for {{ ig-name }} to send the health check requests to.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-timeout }}** field, specify the response waiting time from 1 to 60 seconds.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-interval }}** field, specify the interval between the repeat checks from 1 to 60 seconds. The interval must be at least 1 second longer than the waiting time.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-healthy-threshold }}** field, specify the number of successful health checks required for the instance to be considered healthy.
+ * In the **{{ ui-key.yacloud.load-balancer.network-load-balancer.label_health-check-unhealthy-threshold }}** field, specify the number of failed health checks for the instance to be considered unhealthy.
+ 1. Under **{{ ui-key.yacloud.compute.groups.create.section_variables }}**, enter the `{{ ui-key.yacloud.common.label_key }}`-`{{ ui-key.yacloud.common.value }}` pairs, if needed.
+ 1. Click **{{ ui-key.yacloud.common.create }}**.
- CLI {#cli}
- {% include [cli-install.md](../../../_includes/cli-install.md) %}
+ {% include [cli-install.md](../../../_includes/cli-install.md) %}
- {% include [default-catalogue.md](../../../_includes/default-catalogue.md) %}
+ {% include [default-catalogue.md](../../../_includes/default-catalogue.md) %}
- 1. View a description of the CLI command to create an instance group:
+ 1. View the description of the CLI command to create an instance group:
- ```bash
- {{ yc-compute-ig }} create --help
- ```
+ ```bash
+ {{ yc-compute-ig }} create --help
+ ```
- 1. Check if there are any [networks](../../../vpc/concepts/network.md#network) in the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder):
+ 1. Check whether the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) contains any [networks](../../../vpc/concepts/network.md#network):
- ```bash
- yc vpc network list
- ```
+ ```bash
+ yc vpc network list
+ ```
- If there are none, [create a network](../../../vpc/operations/network-create.md).
- 1. Select one of the {{ marketplace-full-name }} public [images](../../concepts/image.md), e.g., [CentOS 7](/marketplace/products/yc/centos-7).
+ If there are none, [create a network](../../../vpc/operations/network-create.md).
+ 1. Select one of the {{ marketplace-full-name }} public [images](../../concepts/image.md), e.g., [CentOS 7](/marketplace/products/yc/centos-7).
- {% include [standard-images.md](../../../_includes/standard-images.md) %}
+ {% include [standard-images.md](../../../_includes/standard-images.md) %}
- 1. Create a YAML file with any name, e.g., `specification.yaml`.
- 1. In the created file, indicate the following:
- * General information about the instance group:
+ 1. Create a YAML file with any name, e.g., `specification.yaml`.
+ 1. In the created file, indicate the following:
+ * General information about the instance group:
- ```yaml
- name: first-fixed-group-with-l7-balancer
- service_account_id:
- description: "This instance group was created from YAML config."
- ```
+ ```yaml
+ name: first-fixed-group-with-l7-balancer
+ service_account_id:
+ description: "This instance group was created using a YAML configuration file."
+ ```
- Where:
- * `name`: Name of the instance group. The name must be unique within the folder. The name may contain lowercase Latin letters, numbers, and hyphens. The first character must be a letter. The last character cannot be a hyphen. The name may be up to 63 characters long.
- * `service_account_id`: [Service account](../../../iam/concepts/users/service-accounts.md) ID.
-
- {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
-
- * `description`: Description of the instance group.
- * [Instance template](../../concepts/instance-groups/instance-template.md), such as:
-
- ```yaml
- instance_template:
- platform_id: standard-v3
- resources_spec:
- memory: 2g
- cores: 2
- boot_disk_spec:
- mode: READ_WRITE
- disk_spec:
- image_id: fdvk34al8k5n********
- type_id: network-hdd
- size: 32g
- network_interface_specs:
- - network_id: c64mknqgnd8a********
- primary_v4_address_spec: {}
- security_group_ids:
- - enps0ar5s3ti********
- placement_policy:
- placement_group_id: rmppvhrgm77g********
- scheduling_policy:
- preemptible: false
+ Where:
+ * `name`: Instance group name. The name must be unique within the folder. The name may contain lowercase Latin letters, numbers, and hyphens. The first character must be a letter. The last character cannot be a hyphen. The name may be up to 63 characters long.
+ * `service_account_id`: [Service account](../../../iam/concepts/users/service-accounts.md) ID.
+
+ {% include [sa-dependence-brief](../../../_includes/instance-groups/sa-dependence-brief.md) %}
+
+ * `description`: Instance group description.
+ * [Instance template](../../concepts/instance-groups/instance-template.md), such as:
+
+ ```yaml
+ instance_template:
+ platform_id: standard-v3
+ resources_spec:
+ memory: 2g
+ cores: 2
+ boot_disk_spec:
+ mode: READ_WRITE
+ disk_spec:
+ image_id: fdvk34al8k5n********
+ type_id: network-hdd
+ size: 32g
+ network_interface_specs:
+ - network_id: c64mknqgnd8a********
+ primary_v4_address_spec: {}
+ security_group_ids:
+ - enps0ar5s3ti********
+ placement_policy:
+ placement_group_id: rmppvhrgm77g********
+ scheduling_policy:
+ preemptible: false
```
{% include [default-unit-size](../../../_includes/instance-groups/default-unit-size.md) %}
Where:
* `platform_id`: [Platform](../../concepts/vm-platforms.md) ID.
- * `memory`: Amount of RAM.
+ * `memory`: Amount of memory (RAM).
* `cores`: Number of processor cores (vCPUs).
* `mode`: [Disk](../../concepts/disk.md) access mode.
- * `READ_ONLY`: Read-only access.
- * `READ_WRITE`: Read/write access.
- * `image_id`: ID of the public image. You can view image IDs in the [management console]({{ link-console-main }}) when creating a VM or in [{{ marketplace-name }}](/marketplace) on the image page under **Product IDs**.
+ * `READ_ONLY`: Read-only access.
+ * `READ_WRITE`: Read/write access.
+ * `image_id`: Public image ID. You can view image IDs in the [management console]({{ link-console-main }}) when creating an instance or in [{{ marketplace-name }}](/marketplace) on the image page under **Product IDs**.
* `type_id`: [Disk type](../../../compute/concepts/disk.md#disks_types).
* `size`: Disk size.
- * `network_id`: ID of the `default-net` network.
+ * `network_id`: `default-net` network ID.
* `primary_v4_address_spec`: IPv4 specification. You can allow public access to the group's instances by specifying the IP version for the [public IP address](../../../vpc/concepts/address.md#public-addresses). For more information, see [{#T}](../../concepts/instance-groups/instance-template.md#instance-template).
* `security_group_ids`: List of [security group](../../../vpc/concepts/security-groups.md) IDs.
* `scheduling_policy`: Scheduling policy configuration.
- * `preemptible`: Flag for creating [preemptible VMs](../../concepts/preemptible-vm.md).
- * `true`: Create a preemptible VM.
- * `false` (default): Create a regular VM.
-
- When creating a preemptible instance group, keep in mind that the VM instances will terminate after 24 hours of continuous operation or earlier. {{ ig-name }} may not be able to restart them immediately due to insufficient resources. This may occur in the event of a sharp increase in the use of {{ yandex-cloud }} computing resources.
- * `placement_policy`: (Optional) [VM placement group](../../concepts/placement-groups.md) parameters:
- * `placement_group_id`: Placement group ID.
- * [Policies](../../concepts/instance-groups/policies/index.md):
-
- ```yaml
- deploy_policy:
- max_unavailable: 1
- max_expansion: 0
- scale_policy:
- fixed_scale:
- size: 3
- allocation_policy:
- zones:
- - zone_id: {{ region-id }}-a
- instance_tags_pool:
- - first
- - second
- - third
- ```
+ * `preemptible`: Flag for creating [preemptible instances](../../concepts/preemptible-vm.md).
+ * `true`: Create a preemptible instance.
+ * `false` (default): Create a regular instance.
+
+ When creating a preemptible instance group, keep in mind that the VM instances will terminate after 24 hours of continuous operation or earlier. {{ ig-name }} may not be able to restart them immediately due to insufficient resources. This may occur in the event of a sharp increase in the use of {{ yandex-cloud }} computing resources.
+ * `placement_policy`: (Optional) [Instance placement group](../../concepts/placement-groups.md) parameters:
+ * `placement_group_id`: Placement group ID.
+ * [Policies](../../concepts/instance-groups/policies/index.md):
+
+ ```yaml
+ deploy_policy:
+ max_unavailable: 1
+ max_expansion: 0
+ scale_policy:
+ fixed_scale:
+ size: 3
+ allocation_policy:
+ zones:
+ - zone_id: {{ region-id }}-a
+ instance_tags_pool:
+ - first
+ - second
+ - third
+ ```
+
+ Where:
+ * `deploy_policy`: Instance [deployment policy](../../concepts/instance-groups/policies/deploy-policy.md) for the group.
+ * `scale_policy`: Instance [scaling policy](../../concepts/instance-groups/policies/scale-policy.md) for the group.
+ * `allocation_policy`: Instance [allocation policy](../../concepts/instance-groups/policies/allocation-policy.md) between [availability zones](../../../overview/concepts/geo-scope.md).
+ * {{ alb-full-name }} [target group](../../../application-load-balancer/concepts/target-group.md):
+
+ ```yaml
+ application_load_balancer_spec:
+ target_group_spec:
+ name: first-target-group
+ ```
+
+ Where:
+ * `target_group_spec`: Specification of the {{ alb-name }} target group associated with the instance group.
+ * `name`: Name for the {{ alb-name }} target group. The name must be unique within the folder. The name may contain lowercase Latin letters, numbers, and hyphens. The first character must be a letter. The last character cannot be a hyphen. The name may be up to 63 characters long.
+
+ For more information about target group settings, see [{#T}](../../concepts/instance-groups/balancers.md#settings-alb).
+
+ Full code for the `specification.yaml` file:
+
+ ```yaml
+ name: first-fixed-group-with-l7-balancer
+ service_account_id:
+ description: "This instance group was created using a YAML configuration file."
+ instance_template:
+ platform_id: standard-v3
+ resources_spec:
+ memory: 2g
+ cores: 2
+ boot_disk_spec:
+ mode: READ_WRITE
+ disk_spec:
+ image_id: fdvk34al8k5n********
+ type_id: network-hdd
+ size: 32g
+ network_interface_specs:
+ - network_id: c64mknqgnd8a********
+ primary_v4_address_spec: {}
+ security_group_ids:
+ - enps0ar5s3ti********
+ placement_policy:
+ placement_group_id: rmppvhrgm77g********
+ deploy_policy:
+ max_unavailable: 1
+ max_expansion: 0
+ scale_policy:
+ fixed_scale:
+ size: 3
+ allocation_policy:
+ zones:
+ - zone_id: {{ region-id }}-a
+ instance_tags_pool:
+ - first
+ - second
+ - third
+ application_load_balancer_spec:
+ target_group_spec:
+ name: first-target-group
+ ```
+
+ 1. Create an instance group in the default folder:
+
+ ```bash
+ {{ yc-compute-ig }} create --file specification.yaml
+ ```
+
+ This command creates a group of three similar instances with the following configuration:
+ * Name: `first-fixed-group-with-l7-balancer`
+ * OS: CentOS 7
+ * Network: `default-net`
+ * Availability zone: `{{ region-id }}-a`
+ * vCPUs: 2; RAM: 2 GB
+ * Network HDD: 32 GB
+ * Target group: `first-target-group`
+
+ After that, you can add the `first-target-group` target group to a [new](../../../application-load-balancer/operations/backend-group-create.md) or [existing group of {{ alb-name }} backends](../../../application-load-balancer/operations/backend-group-update.md), a backend group to a [new](../../../application-load-balancer/operations/http-router-create.md) or [existing HTTP router](../../../application-load-balancer/operations/http-router-update.md), and a router to a [new](../../../application-load-balancer/operations/application-load-balancer-create.md) or [existing L7 load balancer](../../../application-load-balancer/operations/application-load-balancer-update.md).
- Where:
+- {{ TF }} {#tf}
+
+ {% include [terraform-install](../../../_includes/terraform-install.md) %}
+
+ 1. In the configuration file, describe the parameters of the resources you want to create:
+
+ ```hcl
+ resource "yandex_iam_service_account" "ig-sa" {
+ name = "ig-sa"
+ description = "Service account for managing an instance group."
+ }
+
+ resource "yandex_resourcemanager_folder_iam_member" "editor" {
+ folder_id = ""
+ role = "editor"
+ member = "serviceAccount:${yandex_iam_service_account.ig-sa.id}"
+ }
+
+ resource "yandex_compute_instance_group" "ig-1" {
+ name = "fixed-ig-with-balancer"
+ folder_id = ""
+ service_account_id = "${yandex_iam_service_account.ig-sa.id}"
+ deletion_protection = ""
+ instance_template {
+ platform_id = "standard-v3"
+ resources {
+ memory =
+ cores =
+ }
+
+ boot_disk {
+ mode = "READ_WRITE"
+ initialize_params {
+ image_id = ""
+ }
+ }
+
+ network_interface {
+ network_id = "${yandex_vpc_network.network-1.id}"
+ subnet_ids = ["${yandex_vpc_subnet.subnet-1.id}"]
+ security_group_ids = ["