Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Compute Cloud
    • Все инструкции
      • Изменить группу ВМ
      • Изменить группу ВМ по YAML-спецификации
      • Перенести группу ВМ в другую зону доступности
      • Перенести группу ВМ с сетевым балансировщиком в другую зону доступности
      • Перенести группу ВМ с L7-балансировщиком в другую зону доступности
      • Настроить проверку состояния приложения на ВМ
      • Приостановить процессы в группе ВМ
      • Возобновить процессы в группе ВМ
      • Поочередно перезагрузить ВМ в группе
      • Поочередно пересоздать ВМ в группе
      • Остановить группу ВМ
      • Запустить группу ВМ
      • Настроить права доступа к группе ВМ
      • Исключить группу виртуальных машин из группы размещения
      • Удалить группу ВМ
    • Посмотреть операции с ресурсами сервиса
  • Yandex Container Solution
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы
  1. Пошаговые инструкции
  2. Управление группой виртуальных машин
  3. Перенести группу ВМ в другую зону доступности

Перенести группу виртуальных машин в другую зону доступности

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 21 апреля 2025 г.

Если группа ВМ подключена к балансировщику нагрузки, воспользуйтесь следующими инструкциями:

  • Перенести группу виртуальных машин с сетевым балансировщиком нагрузки в другую зону доступности
  • Перенести группу виртуальных машин с L7-балансировщиком в другую зону доступности

Чтобы перенести группу ВМ в другую зону доступности:

  1. Создайте подсеть в зоне доступности, в которую вы хотите перенести группу ВМ.

  2. Добавьте ВМ группы в новую зону доступности:

    Консоль управления
    CLI
    Terraform
    API
    1. В консоли управления откройте каталог, в котором находится нужная группа виртуальных машин.

    2. Выберите сервис Compute Cloud.

    3. На панели слева выберите Группы виртуальных машин.

    4. Выберите группу ВМ, которую хотите изменить.

    5. В правом верхнем углу нажмите Редактировать.

    6. В блоке Распределение добавьте зону доступности, в которую вы хотите перенести группу ВМ.

    7. Если у вас группа ВМ с ручным масштабированием, в блоке Масштабирование укажите размер группы, достаточный для размещения во всех выбранных зонах доступности.

      Вернуть изначальное количество ВМ можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

    8. Если у вас автоматически масштабируемая группа ВМ с ручной (OPPORTUNISTIC) стратегией остановки, в поле Останавливать машины по стратегии измените стратегию на автоматическую (PROACTIVE).

      Вернуть ручную стратегию остановки можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

    9. Нажмите Сохранить.

    Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

    По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

    1. Откройте файл со спецификацией группы виртуальных машин и измените шаблон ВМ:

      • В секции allocation_policy добавьте новую зону доступности.

      • В секции network_interface_specs добавьте идентификатор подсети, созданной ранее.

      • Если у вас группа ВМ с ручным масштабированием, в секции scale_policy укажите размер группы, достаточный для размещения во всех выбранных зонах доступности.

        Вернуть изначальное количество ВМ можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

      • Если у вас автоматически масштабируемая группа ВМ с ручной (OPPORTUNISTIC) стратегией остановки, в секции deploy_policy измените стратегию на автоматическую (PROACTIVE).

        Вернуть ручную стратегию остановки можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

    2. Посмотрите описание команды CLI для изменения группы ВМ:

      yc compute instance-group update --help
      
    3. Получите список всех групп ВМ в каталоге по умолчанию:

      yc compute instance-group list
      

      Результат:

      +----------------------+---------------------------------+--------+--------+
      |          ID          |              NAME               | STATUS |  SIZE  |
      +----------------------+---------------------------------+--------+--------+
      | cl15sjqilrei******** | first-fixed-group-with-balancer | ACTIVE |      3 |
      | cl19s7dmihgm******** | test-group                      | ACTIVE |      2 |
      +----------------------+---------------------------------+--------+--------+
      
    4. Измените группу ВМ:

      yc compute instance-group update \
        --id <идентификатор_группы_ВМ> \
        --file <файл_со_спецификацией_ВМ>
      

      Где:

      • --id — идентификатор группы ВМ.
      • --file — путь к файлу со спецификацией группы ВМ.

      Результат:

      id: cl15sjqilrei********
      ...
      allocation_policy:
      zones:
      - zone_id: <старая_зона_доступности>
      - zone_id: <новая_зона_доступности>
      ...
      

    Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

    1. Откройте файл конфигурации Terraform для группы виртуальных машин и добавьте в блоке allocation_policy новую зону доступности, а в блоке network_interface идентификатор подсети, созданной ранее.

      ...
      network_interface {
        subnet_ids = [
          "<идентификатор_подсети_в_старой_зоне_доступности>",
          "<идентификатор_подсети_в_новой_зоне_доступности>"
        ]
      }
      ...
      allocation_policy {
        zones = [
          "<старая_зона_доступности>",
          "<новая_зона_доступности>"
        ]
      }
      ...
      

      Где:

      • zones — зоны доступности, в которых будет размещена группа ВМ — новая и старая.
      • subnet_ids — идентификаторы подсетей в зонах доступности, в которых будет размещена группа ВМ.

      Если у вас группа ВМ с ручным масштабированием, в секции scale_policy укажите размер группы, достаточный для размещения во всех выбранных зонах доступности.

      ...
      scale_policy {
        fixed_scale {
          size = <количество_ВМ_в_группе>
        }
      }
      ...
      

      Вернуть изначальное количество ВМ можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

      Если у вас автоматически масштабируемая группа ВМ с ручной (OPPORTUNISTIC) стратегией остановки, измените стратегию на автоматическую (PROACTIVE):

      ...
      deploy_policy {
        strategy = "proactive" 
      }
      ...
      

      Вернуть ручную стратегию остановки можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

      Более подробную информацию о параметрах ресурсов в Terraform см. в документации провайдера.

    2. Примените изменения:

      1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

      2. Проверьте корректность конфигурационного файла с помощью команды:

        terraform validate
        

        Если конфигурация является корректной, появится сообщение:

        Success! The configuration is valid.
        
      3. Выполните команду:

        terraform plan
        

        В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

      4. Примените изменения конфигурации:

        terraform apply
        
      5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

      Добавится новая зона доступности для группы ВМ. Проверить изменения можно в консоли управления или с помощью команды CLI:

      yc compute instance-group get <имя_группы_ВМ>
      

    Воспользуйтесь методом REST API update для ресурса InstanceGroup или вызовом gRPC API InstanceGroupService/Update.

    Если у вас группа ВМ с ручным масштабированием, задайте размер группы, достаточный для размещения ВМ во всех выбранных зонах доступности. Вернуть изначальное количество ВМ можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

    Если у вас автоматически масштабируемая группа ВМ с ручной (OPPORTUNISTIC) стратегией остановки, измените стратегию на автоматическую (PROACTIVE). Вернуть ручную стратегию остановки можно будет после воссоздания всех ВМ группы в новой зоне доступности и удаления всех ВМ в старой.

    Дождитесь пока ВМ создадутся в новой зоне доступности и перейдут в статус Running Actual.

  3. Удалите ВМ группы из старой зоны доступности:

    Консоль управления
    CLI
    Terraform
    API
    1. В консоли управления откройте каталог, в котором находится нужная группа виртуальных машин.
    2. Выберите сервис Compute Cloud.
    3. На панели слева выберите Группы виртуальных машин.
    4. Выберите группу ВМ, которую хотите изменить.
    5. В правом верхнем углу нажмите Редактировать.
    6. В блоке Распределение отключите старую зону доступности.
    7. Нажмите Сохранить.
    1. Откройте файл со спецификацией группы виртуальных машин и измените шаблон ВМ:

      • В секции allocation_policy удалите старую зону доступности.
      • В секции network_interface_specs удалите идентификатор подсети в старой зоне доступности.
    2. Измените группу ВМ:

      yc compute instance-group update \
        --id <идентификатор_группы_ВМ> \
        --file <файл_со_спецификацией_ВМ>
      

      Где:

      • --id — идентификатор группы ВМ.
      • --file — путь к файлу со спецификацией группы ВМ.

      Результат:

      id: cl15sjqilrei********
      ...
      allocation_policy:
      zones:
      - zone_id: <новая_зона_доступности>
      ...
      
    1. Откройте файл конфигурации Terraform для группы виртуальных машин и удалите в блоке allocation_policy старую зону доступности, а в блоке network_interface идентификатор подсети в старой зоне:

      ...
      network_interface {
        subnet_ids = ["<идентификатор_подсети_в_новой_зоне_доступности>"]
      }
      ...
      allocation_policy {
        zones = ["<новая_зона_доступности>"]
      }
      ...
      

      Где:

      • zones — зона доступности, в которую вы хотите переместить группу ВМ. Можно указать несколько зон.
      • subnet_ids — идентификатор подсети в той зоне доступности, в которую вы хотите перенести группу ВМ.

      Более подробную информацию о параметрах ресурсов в Terraform см. в документации провайдера.

    2. Примените изменения:

      1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

      2. Проверьте корректность конфигурационного файла с помощью команды:

        terraform validate
        

        Если конфигурация является корректной, появится сообщение:

        Success! The configuration is valid.
        
      3. Выполните команду:

        terraform plan
        

        В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

      4. Примените изменения конфигурации:

        terraform apply
        
      5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

      ВМ группы будут удалены в старой зоне доступности. Проверить изменения можно в консоли управления или с помощью команды CLI:

      yc compute instance-group get <имя_группы_ВМ>
      

    Воспользуйтесь методом REST API update для ресурса InstanceGroup или вызовом gRPC API InstanceGroupService/Update.

См. такжеСм. также

  • Перенести группу виртуальных машин с сетевым балансировщиком нагрузки в другую зону доступности
  • Перенести группу виртуальных машин с L7-балансировщиком в другую зону доступности

Была ли статья полезна?

Предыдущая
Изменить группу ВМ по YAML-спецификации
Следующая
Перенести группу ВМ с сетевым балансировщиком в другую зону доступности
Проект Яндекса
© 2025 ООО «Яндекс.Облако»