practicum

Практическая работа. Обновление приложения

На практической работе с утилитой yc мы уже рассматривали обновление операционной системы для группы виртуальных машин (ВМ). Любые приложения, установленные на ВМ, обновляются по тем же правилам. Давайте рассмотрим этот процесс ещё раз.

Первый вариант обновления

  1. Если вы работаете в веб-интерфейсе, измените шаблон ВМ и выберите образ с ОС Ubuntu 20.04. Убедитесь, что параметры политики развёртывания такие: группу нельзя расширять, а уменьшать можно только на одну ВМ.
image

Политика развёртывания группы виртуальных машин (вариант 1)Если вы работаете в командной строке, в спецификации specification.yaml измените image_id (например, с fd8fosbegvnhj5haiuoq на fd87uq4tagjupcnm376a) и запустите обновление группы:

yc compute instance-group update --name my-group --file specification.yaml 
  1. В группе ВМ перейдите в раздел Список ВМ и проследите, как меняются статусы машин.
  2. Сначала вы увидите статус Running outdated. Это означает, что машины работают со старой версией приложения.
  3. Затем одна из машин начинает обновляться: для неё закрывается трафик (Closing traffic), она останавливается (Stopping instance), обновляется (Updating instance), затем трафик снова открывается (Opening traffic), и наконец статус меняется на Running actual: обновление выполнено.
  4. Затем то же самое последовательно выполняется для остальных машин в группе.

Порядок обновления зависит от политики развёртывания. Мы запретили увеличивать размер группы и указали, что одновременно неработоспособной может быть только одна машина. Именно так и произошло обновление: машины по одной выводились из строя, обновлялись и запускались снова.

Второй вариант обновления

  1. Теперь давайте изменим настройки политики развёртывания.

Если вы работаете в веб-интерфейсе, измените шаблон ВМ и выберите образ с Ubuntu и nginx, созданный ранее и помещённый в Container Registry.Измените параметры развёртывания. Теперь группу можно расширять на одну ВМ, а уменьшать нельзя:

image

Политика развёртывания группы виртуальных машин (вариант 2)Если вы работаете в командной строке, в спецификации specification.yaml измените image_id (например, снова с fd87uq4tagjupcnm376a на fd8fosbegvnhj5haiuoq). Параметры обновления измените так:

deploy_policy:
    max_unavailable: 0
    max_expansion: 1 

Запустите обновление группы.

  1. В группе ВМ перейдите в раздел Список ВМ и проследите, как меняются статусы машин.
  2. Сначала вы увидите статус Running outdated. Затем создаётся новая машина (Creating instance), для неё открывается трафик (Opening traffic), статус машины меняется на Running actual, при этом одна из «устаревших» ВМ выводится из строя (Closing traffic и Stopping instance).
  3. Затем то же самое последовательно выполняется для остальных машин в группе.
Previous Story

Практическая работа. Сбой зоны доступности

Next Story

Практическая работа. Сбой приложения

Latest from Blog

Zabbix – Docker – Raspberry Pi

Для начала установим Portainer – веб-интерфейс для управления docker-контейнерами. Бесплатно, удобно, подойдет новичкам в docker. Установка

Сетевая папка/диск в Linux

x.x.x.x адрес шары /mnt/shara точка монтирования user пользователь с доступом к шаре 1234 пароль пользователя Для

Памятка SSH

В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые

0 £0.00