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

В этой статье:

  • Создайте ВМ с настроенной политикой обслуживания
  • Проверьте обработку событий обслуживания
  • Подключитесь к ВМ по SSH
  • Создайте скрипт для отслеживания событий обслуживания ВМ
  • Симулируйте наступление события обслуживания ВМ
  • Измените тип политики обслуживания для ВМ
  1. Пошаговые инструкции
  2. Управление виртуальной машиной
  3. Управление политикой обслуживания ВМ

Управление политикой обслуживания

Статья создана
Yandex Cloud
Обновлена 15 ноября 2024 г.
  • Создайте ВМ с настроенной политикой обслуживания
  • Проверьте обработку событий обслуживания
  • Подключитесь к ВМ по SSH
  • Создайте скрипт для отслеживания событий обслуживания ВМ
  • Симулируйте наступление события обслуживания ВМ
  • Измените тип политики обслуживания для ВМ

Примечание

В регионе Казахстан доступна только зона доступности kz1-a.

Чтобы включить и настроить политику обслуживания ВМ, выполните следующие шаги:

  1. Создайте ВМ с настроенной политикой обслуживания.
  2. Проверьте обработку событий обслуживания.
  3. Подключитесь к ВМ по SSH.
  4. Создайте скрипт для отслеживания событий обслуживания ВМ.
  5. Симулируйте наступление события обслуживания ВМ.
  6. Опционально. Измените тип политики обслуживания для ВМ.

Создайте ВМ с настроенной политикой обслуживанияСоздайте ВМ с настроенной политикой обслуживания

CLI
Terraform

Создайте ВМ с политиками обслуживания:

FOLDER_ID=$(yc config get folder-id)

yc compute instance create --name mnt-vm1 --hostname mnt-vm1\
  --folder-id $FOLDER_ID \
  --zone ru-central1-a \
  --create-boot-disk image-folder-id=standard-images,image-family=ubuntu-2204-lts \
  --cores=2 --memory=4G --core-fraction=100 \
  --network-interface subnet-name=default-ru-central1-a,ipv4-address=auto,nat-ip-version=ipv4 \
  --ssh-key ~/.ssh/id_ed25519.pub \
  --maintenance-policy restart \
  --maintenance-grace-period 1m
  1. Создайте Terraform-манифест mnt-vm.tf:

    terraform {
      required_providers {
        yandex = {
          source  = "yandex-cloud/yandex"
          version = "~> 0.105.0"
        }
      }
    }
    
    variable "folder_id" {
      type = string
    }
    
    data "yandex_compute_image" "vm_image" {
      family = "ubuntu-2204-lts"
    }
    
    data "yandex_vpc_subnet" "vm_subnet" {
      folder_id = var.folder_id
      name      = "default-ru-central1-a"
    }
    
    resource "yandex_compute_instance" "vm_instance" {
      name                     = "mnt-vm1"
      folder_id                = var.folder_id
      hostname                 = "mnt-vm1"
      zone                     = "ru-central1-a"
      maintenance_policy       = "restart" # restart| migrate | unspecified
      maintenance_grace_period = "1m"
    
      resources {
        cores  = 2
        memory = 4
      }
    
      boot_disk {
        initialize_params {
          image_id = data.yandex_compute_image.vm_image.id
        }
      }
    
      network_interface {
        subnet_id = data.yandex_vpc_subnet.vm_subnet.id
        nat       = true
      }
    
      metadata = {
        ssh-keys = "ubuntu:${file("~/.ssh/id_ed25519.pub")}"
      }
    }
    
  2. Примените Terraform-манифест:

    export YC_TOKEN=$(yc iam create-token)
    export TF_VAR_folder_id=$(yc config get folder-id)
    
    terraform init
    terraform apply
    

Проверьте обработку событий обслуживанияПроверьте обработку событий обслуживания

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

yc compute instance get --name=mnt-vm1 --format=json | grep maintenance

Ожидаемый результат:

  "maintenance_policy": "RESTART",
  "maintenance_grace_period": "60s"

Подключитесь к ВМ по SSHПодключитесь к ВМ по SSH

Получите IP-адрес ВМ и сохраните его в переменную, а затем подключитесь к ВМ по SSH с именем вашего пользователя:

VM_IP=$(yc compute instance get --name=mnt-vm1 --format=json | jq -r '.network_interfaces[0].primary_v4_address.one_to_one_nat.address')

ssh <имя_пользователя>@$VM_IP

Создайте скрипт для отслеживания событий обслуживания ВМСоздайте скрипт для отслеживания событий обслуживания ВМ

Создайте файл mnt-pol.sh и добавьте в него следующий код:

#!/bin/bash

while true
do 
  echo -n `date`" : "
  curl \
    --silent \
    --header Metadata-Flavor:Google http://metadata.google.internal/computeMetadata/v1/instance/maintenance-event
  echo
  sleep 1
done

Запустите скрипт:

chmod u+x mnt-pol.sh
./mnt-pol.sh

Симулируйте наступление события обслуживания ВМСимулируйте наступление события обслуживания ВМ

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

yc compute instance simulate-maintenance-event --name=mnt-vm1

Убедитесь, что событие отображается в терминале:

yc-user@mnt-vm1:~$ ./mnt-pol.sh
Tue Jan 16 14:14:40 UTC 2024 : NONE
Tue Jan 16 14:14:41 UTC 2024 : NONE
...
Tue Jan 16 14:23:38 UTC 2024 : NONE
Tue Jan 16 14:23:39 UTC 2024 : TERMINATE_ON_HOST_MAINTENANCE
Tue Jan 16 14:23:40 UTC 2024 : TERMINATE_ON_HOST_MAINTENANCE
Tue Jan 16 14:23:41 UTC 2024 : TERMINATE_ON_HOST_MAINTENANCE
...
Tue Jan 16 14:24:48 UTC 2024 : TERMINATE_ON_HOST_MAINTENANCE
Tue Jan 16 14:24:49 UTC 2024 : NONE

Измените тип политики обслуживания для ВМИзмените тип политики обслуживания для ВМ

Изменить тип политики обслуживания для ВМ можно указав новое значение параметра --maintenance-policy командой:

yc compute instance update --name=mnt-vm1 --maintenance-policy=migrate

Симулируйте наступление события обслуживания с помощью CLI:

yc compute instance simulate-maintenance-event --name=mnt-vm1

Снова запустите скрипт и убедитесь, что политика изменилась:

yc-user@mnt-vm1:~$ ./mnt-pol.sh
Tue Jan 16 14:32:09 UTC 2024 : NONE
Tue Jan 16 14:32:10 UTC 2024 : NONE
...
Tue Jan 16 14:32:23 UTC 2024 : MIGRATE_ON_HOST_MAINTENANCE
Tue Jan 16 14:32:24 UTC 2024 : MIGRATE_ON_HOST_MAINTENANCE
...
Tue Jan 16 14:33:23 UTC 2024 : MIGRATE_ON_HOST_MAINTENANCE
Tue Jan 16 14:33:24 UTC 2024 : MIGRATE_ON_HOST_MAINTENANCE
Tue Jan 16 14:33:25 UTC 2024 : NONE

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

Предыдущая
Изменить группы безопасности ВМ
Следующая
Настроить права доступа к ВМ
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»