Изменение настроек MySQL-кластера
После создания кластера вы можете:
-
Важно
Вы не можете менять настройки MySQL с помощью команд SQL.
-
Переместить кластер в другой каталог.
Изменить класс хостов
Выбор класса хостов в кластерах Managed Service for MySQL ограничен квотами на количество CPU и объем памяти, которые доступны кластерам БД в вашем облаке. Чтобы проверить используемые ресурсы, откройте страницу Квоты и найдите блок Managed Databases.
Примечание
Некоторые настройки MySQL зависят от выбранного класса хостов.
- Перейдите на страницу каталога и выберите сервис Managed Service for MySQL.
- Выберите кластер и нажмите кнопку Изменить кластер на панели сверху.
- Чтобы изменить класс хостов MySQL, в блоке Класс хоста выберите нужный класс.
- Нажмите кнопку Сохранить изменения.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы изменить класс хостов для кластера:
-
Посмотрите описание команды CLI для изменения кластера:
yc managed-mysql cluster update --help
-
Запросите список доступных классов хостов (в колонке
ZONES
указаны зоны доступности, в которых можно выбрать соответствующий класс):yc managed-mysql resource-preset list
Результат:
+-----------+--------------------------------+-------+----------+ | ID | ZONE IDS | CORES | MEMORY | +-----------+--------------------------------+-------+----------+ | s1.micro | ru-central1-a, ru-central1-b, | 2 | 8.0 GB | | | ru-central1-c | | | | ... | +-----------+--------------------------------+-------+----------+
-
Укажите нужный класс в команде изменения кластера:
yc managed-mysql cluster update <имя кластера> --resource-preset <ID класса>
Managed Service for MySQL запустит операцию изменения класса хостов для кластера.
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание MySQL-кластера.
-
Измените в описании кластера Managed Service for MySQL значение параметра
resource_preset_id
в блокеresources
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... resources { resource_preset_id = "<класс хоста>" ... } }
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Подробнее см. в документации провайдера Terraform.
Ограничения по времени
Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MySQL:
- создание кластера, в том числе путем восстановления из резервной копии, — 15 минут;
- изменение кластера — 60 минут;
- удаление кластера — 15 минут.
Операции, длящиеся дольше указанного времени, прерываются.
Добавьте к описанию кластера блок timeouts
, например:
resource "yandex_mdb_mysql_cluster" "<имя кластера>" {
...
timeouts {
create = "1h30m" # Полтора часа
update = "2h" # 2 часа
delete = "30m" # 30 минут
}
}
Чтобы изменить класс хостов, воспользуйтесь методом REST API update для ресурса Cluster или вызовом gRPC API ClusterService/Update и передайте в запросе:
- Идентификатор кластера в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. - Нужный класс хостов в параметре
configSpec.resources.resourcePresetId
. Список поддерживаемых значений запрашивайте методом list для ресурсовResourcePreset
. - Список настроек, которые необходимо изменить (в данном случае —
configSpec.resources.resourcePresetId
), в параметреupdateMask
.
Важно
Этот метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask
(одной строкой через запятую).
Увеличить размер хранилища
Проверьте, что в облаке достаточно квот для увеличения хранилища. Откройте страницу Квоты для облака и убедитесь, что в секции Managed Databases в строке Объём HDD-хранилищ или Объём SSD-хранилищ есть запас места.
Чтобы увеличить размер хранилища для кластера:
- Перейдите на страницу каталога и выберите сервис Managed Service for MySQL.
- Выберите кластер и нажмите кнопку Изменить кластер на панели сверху.
- В блоке Размер хранилища укажите необходимое значение.
- Нажмите кнопку Сохранить изменения.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы увеличить размер хранилища для кластера:
-
Посмотрите описание команды CLI для изменения кластера:
yc managed-mysql cluster update --help
-
Укажите нужный размер хранилища в команде изменения кластера (должен быть не меньше, чем значение
disk_size
в свойствах кластера):yc managed-mysql cluster update <имя или идентификатор кластера> \ --disk-size <размер хранилища в гигабайтах>
Чтобы увеличить размер хранилища для кластера:
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание MySQL-кластера.
-
Измените значение параметра
disk_size
в блокеresources
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... resources { disk_size = <размер хранилища в гигабайтах> ... } }
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Подробнее см. в документации провайдера Terraform.
Ограничения по времени
Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MySQL:
- создание кластера, в том числе путем восстановления из резервной копии, — 15 минут;
- изменение кластера — 60 минут;
- удаление кластера — 15 минут.
Операции, длящиеся дольше указанного времени, прерываются.
Добавьте к описанию кластера блок timeouts
, например:
resource "yandex_mdb_mysql_cluster" "<имя кластера>" {
...
timeouts {
create = "1h30m" # Полтора часа
update = "2h" # 2 часа
delete = "30m" # 30 минут
}
}
Чтобы увеличить размер хранилища для кластера, воспользуйтесь методом REST API update для ресурса Cluster или вызовом gRPC API ClusterService/Update и передайте в запросе:
- Идентификатор кластера в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. - Размер хранилища в параметре
configSpec.resources.diskSize
. - Список изменяемых полей конфигурации кластера в параметре
updateMask
(в данном случае —configSpec.resources.diskSize
).
Важно
Этот метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask
(одной строкой через запятую).
Изменить настройки MySQL
Примечание
Некоторые настройки MySQL зависят от выбранного класса хостов.
- Перейдите на страницу каталога и выберите сервис Managed Service for MySQL.
- Выберите кластер и нажмите кнопку Изменить кластер на панели сверху.
- Измените настройки MySQL, нажав на кнопку Настроить в блоке Настройки СУБД.
- Нажмите кнопку Сохранить.
- Нажмите кнопку Сохранить изменения.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы изменить настройки MySQL:
-
Посмотрите описание команды CLI для изменения конфигурации кластера:
yc managed-mysql cluster update-config --help
-
Установите нужные значения параметров.
Все поддерживаемые параметры перечислены в формате запроса для метода update, в поле
mysql_config_5_7
. Чтобы указать имя параметра в вызове CLI, преобразуйте его имя из видаlowerCamelCase
вsnake_case
, например, параметрlogMinDurationStatement
из запроса к API преобразуется вlog_min_duration_statement
для команды CLI:yc managed-mysql cluster update-config <имя кластера> --set log_min_duration_statement=100,<имя параметра>=<значение>,...
Managed Service for MySQL запустит операцию по изменению настроек кластера.
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание MySQL-кластера.
-
Добавьте или измените в описании кластера Managed Service for MySQL параметры настроек СУБД в блоке
mysql_config
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... mysql_config = { <имя настройки MySQL> = <значение> ... } }
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Подробнее см. в документации провайдера Terraform.
Ограничения по времени
Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MySQL:
- создание кластера, в том числе путем восстановления из резервной копии, — 15 минут;
- изменение кластера — 60 минут;
- удаление кластера — 15 минут.
Операции, длящиеся дольше указанного времени, прерываются.
Добавьте к описанию кластера блок timeouts
, например:
resource "yandex_mdb_mysql_cluster" "<имя кластера>" {
...
timeouts {
create = "1h30m" # Полтора часа
update = "2h" # 2 часа
delete = "30m" # 30 минут
}
}
Чтобы изменить настройки MySQL, воспользуйтесь методом REST API update для ресурса Cluster или вызовом gRPC API ClusterService/Update и передайте в запросе:
- Идентификатор кластера в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. - Массив с новыми настройками MySQL в параметре:
configSpec.mysqlConfig_5_7.sqlMode
для MySQL версии 5.7.configSpec.mysqlConfig_8_0.sqlMode
для MySQL версии 8.0.
- Список изменяемых полей конфигурации кластера в параметре
updateMask
.
Важно
Этот метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask
(одной строкой через запятую).
Изменить дополнительные настройки кластера
-
Перейдите на страницу каталога и выберите сервис Managed Service for MySQL.
-
Выберите кластер и нажмите кнопку Изменить кластер на панели сверху.
-
Измените дополнительные настройки кластера:
-
Начало резервного копирования (UTC)
Время по UTC (в 24-часовом формате), когда начинается резервное копирование кластера. Если время не задано, резервное копирование начинается в 22:00 UTC.
-
Срок хранения автоматических резервных копий, дней
Автоматические резервные копии будут храниться указанное количество дней.
-
Окно обслуживания — настройки времени технического обслуживания:
- Чтобы разрешить проведение технического обслуживания в любое время, выберите пункт произвольное (по умолчанию).
- Чтобы указать предпочтительное время начала обслуживания, выберите пункт по расписанию и укажите нужные день недели и час дня по UTC. Например, можно выбрать время, когда кластер наименее загружен.
Операции по техническому обслуживанию проводятся для включенных и выключенных кластеров. Они могут включать в себя: обновление СУБД, применение патчей и так далее.
-
Доступ из DataLens
Разрешает анализировать данные из кластера в сервисе Yandex DataLens.
Подробнее о настройке подключения см. в разделе Подключение к DataLens.
-
Доступ из консоли управления
Разрешает выполнять SQL-запросы к базам кластера из консоли управления Yandex Cloud.
-
Доступ из Data Transfer — включите эту опцию, чтобы разрешить доступ к кластеру из сервиса Yandex Data Transfer в Serverless-режиме.
Это позволит через специальную сеть подключаться к Yandex Data Transfer, запущенному в Kubernetes. В результате будут быстрее выполняться, например, запуск и деактивация трансфера.
-
Сбор статистики — включите эту опцию, чтобы воспользоваться инструментом Диагностика производительности в Managed Service for MySQL в кластере.
-
Защита от удаления — управляет защитой кластера от непреднамеренного удаления пользователем.
Включенная защита от удаления кластера не помешает подключиться вручную и удалить содержимое базы данных.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы изменить дополнительные настройки кластера:
-
Посмотрите описание команды CLI для изменения кластера:
yc managed-mysql cluster update --help
-
Выполните команду, передав список настроек, которые хотите изменить:
yc managed-mysql cluster update <имя кластера> \ --backup-window-start <время начала резервного копирования> \ --backup-retain-period-days=<срок хранения автоматических резервных копий, дней> \ --datalens-access=<true или false> \ --maintenance-window type=<тип технического обслуживания: anytime или weekly>,` `day=<день недели для типа weekly>,` `hour=<час дня для типа weekly> \ --websql-access=<true или false> \ --deletion-protection=<защита от удаления кластера: true или false>
Вы можете изменить следующие настройки:
--backup-window-start
— время начала резервного копирования кластера, задается по UTC в форматеHH:MM:SS
. Если время не задано, резервное копирование начнется в 22:00 UTC.
-
--backup-retain-period-days
— срок хранения автоматических резервных копий (в днях). Допустимые значения: от7
до60
. Значение по умолчанию —7
. -
--datalens-access
— разрешает доступ из DataLens. Значение по умолчанию —false
. Подробнее о настройке подключения см в разделе Подключение к MySQL-кластеру из DataLens. -
--maintenance-window
— настройки времени технического обслуживания (в т. ч. для выключенных кластеров):type
— тип технического обслуживания:anytime
— в любое время.weekly
— по расписанию.
day
— день недели для типаweekly
в форматеDDD
. Например,MON
.hour
— час дня по UTC для типаweekly
в форматеHH
. Например,21
.
-
--websql-access
— разрешает выполнять SQL запросы из консоли управления. Значение по умолчанию —false
. -
--deletion-protection
— защита кластера от непреднамеренного удаления пользователем.Включенная защита от удаления кластера не помешает подключиться вручную и удалить содержимое базы данных.
Имя кластера можно получить со списком кластеров в каталоге.
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание MySQL-кластера.
-
Чтобы изменить время начала резервного копирования, добавьте к описанию кластера Managed Service for MySQL блок
backup_window_start
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... backup_window_start { hours = <Час начала резервного копирования> minutes = <Минута начала резервного копирования> } ... }
-
Чтобы изменить срок хранения резервных копий, укажите в описании кластера параметр
backup_retain_period_days
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... backup_retain_period_days = <срок хранения автоматических резервных копий (в днях)> ... }
Допустимые значения: от
7
до60
. Значение по умолчанию —7
. -
Чтобы активировать доступ из DataLens и доступ к SQL-запросам из консоли управления, добавьте к описанию кластера Managed Service for MySQL блок
access
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... access { web_sql = <true или false> data_lens = <true или false> ... } ... }
-
Чтобы настроить время технического обслуживания (в т. ч. для выключенных кластеров), добавьте к описанию кластера блок
maintenance_window
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... maintenance_window { type = <тип технического обслуживания: ANYTIME или WEEKLY> day = <день недели для типа WEEKLY> hour = <час дня для типа WEEKLY> } ... }
Где:
type
— тип технического обслуживания:ANYTIME
— в любое время.WEEKLY
— по расписанию.
day
— день недели для типаWEEKLY
в форматеDDD
. Например,MON
.hour
— час дня по UTC для типаWEEKLY
в форматеHH
. Например,21
.
-
Чтобы включить защиту кластера от непреднамеренного удаления пользователем вашего облака, добавьте к описанию кластера поле
deletion_protection
со значениемtrue
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... deletion_protection = <защита от удаления кластера: true или false> }
Включенная защита от удаления кластера не помешает подключиться вручную и удалить содержимое базы данных.
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Подробнее см. в документации провайдера Terraform.
Ограничения по времени
Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MySQL:
- создание кластера, в том числе путем восстановления из резервной копии, — 15 минут;
- изменение кластера — 60 минут;
- удаление кластера — 15 минут.
Операции, длящиеся дольше указанного времени, прерываются.
Добавьте к описанию кластера блок timeouts
, например:
resource "yandex_mdb_mysql_cluster" "<имя кластера>" {
...
timeouts {
create = "1h30m" # Полтора часа
update = "2h" # 2 часа
delete = "30m" # 30 минут
}
}
Чтобы изменить дополнительные настройки кластера, воспользуйтесь методом REST API update для ресурса Cluster или вызовом gRPC API ClusterService/Update и передайте в запросе:
-
Идентификатор кластера в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. -
Настройку доступа к SQL-запросам из консоли управления в параметре
configSpec.access
. -
Настройки окна резервного копирования в параметре
configSpec.backupWindowStart
. -
Настройки времени технического обслуживания (в т. ч. для выключенных кластеров) в параметре
maintenanceWindow
. -
Срок хранения автоматических резервных копий в параметре
configSpec.backupRetainPeriodDays
. Допустимые значения: от7
до60
. Значение по умолчанию —7
. -
Настройки защиты от удаления кластера в параметре
deletionProtection
.Включенная защита от удаления кластера не помешает подключиться вручную и удалить содержимое базы данных.
Важно
Этот метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask
(одной строкой через запятую).
Чтобы разрешить доступ к кластеру из сервиса Yandex Data Transfer в Serverless-режиме, передайте значение true
для параметра configSpec.access.dataTransfer
.
Это позволит через специальную сеть подключаться к Yandex Data Transfer, запущенному в Kubernetes. В результате будут быстрее выполняться, например, запуск и деактивация трансфера.
Чтобы активировать доступ к кластеру из DataLens, передайте значение true
для параметра configSpec.access.dataLens
.
Идентификатор кластера можно получить со списком кластеров в каталоге.
Переместить кластер
- Перейдите на страницу каталога и выберите сервис Managed Service for MySQL.
- Нажмите на значок
- Выберите пункт Переместить.
- Выберите каталог, в который вы хотите переместить кластер.
- Нажмите кнопку Переместить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы переместить кластер:
-
Посмотрите описание команды CLI для перемещения кластера:
yc managed-mysql cluster move --help
-
Укажите каталог назначения в команде перемещения кластера:
yc managed-mysql cluster move <идентификатор кластера> \ --destination-folder-name=<имя каталога назначения>
Идентификатор кластера можно получить со списком кластеров в каталоге.
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание MySQL-кластера.
-
Измените или добавьте в описании кластера Managed Service for MySQL значение параметра
folder_id
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... folder_id = "<идентификатор каталога назначения>" }
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Подробнее см. в документации провайдера Terraform.
Ограничения по времени
Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MySQL:
- создание кластера, в том числе путем восстановления из резервной копии, — 15 минут;
- изменение кластера — 60 минут;
- удаление кластера — 15 минут.
Операции, длящиеся дольше указанного времени, прерываются.
Добавьте к описанию кластера блок timeouts
, например:
resource "yandex_mdb_mysql_cluster" "<имя кластера>" {
...
timeouts {
create = "1h30m" # Полтора часа
update = "2h" # 2 часа
delete = "30m" # 30 минут
}
}
Чтобы переместить кластер, воспользуйтесь методом REST API move для ресурса Cluster или вызовом gRPC API ClusterService/Move и передайте в запросе:
- Идентификатор кластера в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. - Идентификатор каталога назначения в параметре
destinationFolderId
.
Изменить группы безопасности
Группы безопасности находятся на стадии Preview. Если они недоступны в вашей сети, для ресурсов будет разрешен весь входящий и исходящий трафик. Дополнительной настройки не требуется.
Чтобы включить группы безопасности, запросите в технической поддержке доступ к этой функции.
- Перейдите на страницу каталога и выберите сервис Managed Service for MySQL.
- Выберите кластер и нажмите кнопку Изменить кластер на панели сверху.
- В блоке Сетевые настройки выберите группы безопасности для сетевого трафика кластера.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы изменить список групп безопасности для кластера:
-
Посмотрите описание команды CLI для изменения кластера:
yc managed-mysql cluster update --help
-
Укажите нужные группы безопасности в команде изменения кластера:
yc managed-mysql cluster update <имя кластера> \ --security-group-ids <список групп безопасности>
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание MySQL-кластера.
-
Измените в описании кластера Managed Service for MySQL значение параметра
security_group_ids
:resource "yandex_mdb_mysql_cluster" "<имя кластера>" { ... security_group_ids = [<список идентификаторов групп безопасности>] }
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Подробнее см. в документации провайдера Terraform.
Ограничения по времени
Провайдер Terraform ограничивает время на выполнение операций с кластером Managed Service for MySQL:
- создание кластера, в том числе путем восстановления из резервной копии, — 15 минут;
- изменение кластера — 60 минут;
- удаление кластера — 15 минут.
Операции, длящиеся дольше указанного времени, прерываются.
Добавьте к описанию кластера блок timeouts
, например:
resource "yandex_mdb_mysql_cluster" "<имя кластера>" {
...
timeouts {
create = "1h30m" # Полтора часа
update = "2h" # 2 часа
delete = "30m" # 30 минут
}
}
Чтобы изменить список групп безопасности для кластера, воспользуйтесь методом REST API update для ресурса Cluster или вызовом gRPC API ClusterService/Update и передайте в запросе:
- Идентификатор кластера в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. - Список идентификаторов групп безопасности в параметре
securityGroupIds
. - Список настроек, которые необходимо изменить (в данном случае —
securityGroupIds
), в параметреupdateMask
.
Важно
Этот метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask
(одной строкой через запятую).
Важно
Может потребоваться дополнительная настройка групп безопасности для подключения к кластеру.