• Главная
  • DataScience
  • CloudServicesEngineer
  • Поиск
Data Science

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

Кратко:

  • Создание групп виртуальных машин для имитации роста нагрузки на ВМ.
  • Установка приложения для стресс-тестирования на каждой ВМ: sudo apt-get install stress.
  • Запуск приложения для стресс-тестирования: stress -c 2.
  • Мониторинг изменения усредненного значения нагрузки на графике Average CPU utilization in ru-central1-a.
  • Сервис Instance Groups масштабирует инфраструктуру при росте нагрузки.
  • Остановка стресс-тестов и удаление лишних ВМ.
  • Работа двух машин после завершения стресс-тестов.
  • Завершение темы «Группы виртуальных машин» и переход к следующему курсу.

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

Давайте сымитируем рост нагрузки на ВМ и посмотрим, как сервис на это отреагирует.
  1. В консоли управления перейдите на страницу Группы виртуальных машин. В другом окне браузера откройте вкладку Мониторинг на странице группы ВМ, которую вы создали в предыдущей практической работе.
  2. Если эта группа была только что создана, подождите несколько минут, пока количество ВМ в ней не уменьшится до двух (это число определяется параметром Минимальное количество ВМ в зоне). Зайдите на каждую из двух ВМ и установите на них приложение для стресс-тестирования:
    sudo apt-get install stress
     
  3. После этого для каждой ВМ запустите установленное приложение:
    stress -c 2
     
    Аргумент -c означает, что при тестировании будет нагружаться процессор, а число после аргумента задаёт количество ядер процессора, которые будут нагружаться. Чтобы эксперимент удался, укажите количество ядер, которое вы выбрали в шаблоне ВМ.
  4. На вкладке со страницей мониторинга на графике Average CPU utilization in ru-central1-a следите за тем, как усреднённое значение нагрузки будет постепенно расти.
    image
    Как только усреднённое значение нагрузки превысит порог, сервис Instance Groups начнёт прогревать две дополнительные ВМ и вводить их в строй. Это будет видно на странице Группы виртуальных машин.
    image
    Поскольку стресс-тест не остановлен, сервис завершает запуск двух ВМ.
    image
    Через некоторое время усреднённое значение нагрузки процессоров в группе упадёт до 50%, поскольку первая половина ВМ загружена полностью, а вторая не загружена вовсе.
    image
  5. Остановите работу стресс-теста на первой ВМ. В командной строке используйте сочетание клавиш Ctrl + C.
    image
    Через некоторое время усреднённое значение достигнет 25%, тогда Instance Groups удалит лишнюю ВМ:
    image
  6. Остановите второй стресс-тест. Через некоторое время после того, как усредненное значение достигнет нуля, Instance Groups удалит вторую дополнительную ВМ.
    image
  7. При минимальной нагрузке остаются работать две машины:
    image
Вот так при растущей нагрузке группа ВМ автоматически масштабируется, чтобы обеспечить доступность ресурса.

👉 Поздравляем, вы завершили тему «Группы виртуальных машин»!

В этой теме вы узнали, как настраивать группы ВМ, чтобы масштабировать инфраструктуру при резком росте посещаемости вашего веб-сайта или сервиса. Курс «Начало работы в облаке» на этом завершён, осталось лишь пройти итоговый тест. А в следующем курсе вы познакомитесь с инструментами для создания, управления и мониторинга баз данных в облаке.

 

Категория: Cloud Services Engineer
Просмотров: 715

GVM. Автоматическое масштабирование под нагрузкой

Кратко:

  • Создание автоматически масштабируемой группы виртуальных машин (ВМ) в консоли управления.
  • Создание сервисного аккаунта с ролью editor для управления ВМ в группе.
  • Выбор зоны доступности и создание шаблона ВМ с ОС Ubuntu 20.04 и SSD-диском 50 ГБ.
  • Настройка параметров масштабирования: зональное автомасштабирование, минимальное количество ВМ в зоне 2, максимальный размер группы 4, измерение загрузки 60 секунд, разогрев ВМ 3 минуты, стабилизация 5 минут, начальный размер группы 4.
  • Настройка метрик: тип CPU, целевой уровень загрузки 80%.
  • Создание ВМ и изменение состояний: создание, ожидание прогрева, работа.
  • Группа ВМ готова принимать рабочую нагрузку.

Автоматическое масштабирование под нагрузкой

Давайте разберёмся, как обеспечить доступность сервиса под высокой нагрузкой. Вы уже научились создавать группы ВМ. Теперь создадим автоматически масштабируемую группу ВМ.
  1. В консоли управления откройте раздел Compute Cloud. Перейдите на вкладку Группы виртуальных машин и нажмите кнопку Создать группу. Задайте имя группе ВМ.
    image
  2. Создайте сервисный аккаунт. Чтобы иметь возможность создавать, обновлять и удалять ВМ в группе, назначьте сервисному аккаунту роль editor. По умолчанию все операции в группе ВМ выполняются от имени сервисного аккаунта.
  3. В блоке Распределение выберите только одну зону доступности.
  4. В блоке Шаблон виртуальной машины нажмите кнопку Задать. В открывшемся окне выберите:
    • ОС: Ubuntu 20.04.
    • Размер загрузочного диска: 50 ГБ.
    • Тип загрузочного диска: SSD.
    • Остальные параметры — по умолчанию. Не забудьте добавить публичный SSH-ключ. Он понадобится нам на следующем практическом занятии.
      image
  5. В блоке В процессе создания и обновления разрешено оставьте параметры по умолчанию.
  6. Перейдите к блоку Масштабирование и выберите тип Автоматический.
    image
  7. Задайте параметры масштабирования:
    • Тип автомасштабирования — зональное. При зональном авто масштабировании количество ВМ регулируется отдельно в каждой зоне доступности, указанной в настройках группы.
    • Минимальное количество ВМ в зоне — 2. Сервис Instance Groups не будет удалять ВМ в зоне доступности, если их там всего две.
    • Максимальный размер группы — 4. Instance Groups не будет создавать ВМ, если их уже четыре. В этот раз размер загрузочного диска ВМ — 50 ГБ, поэтому с учётом квот на суммарный объём SSD-дисков в одном облаке смогут запуститься четыре ВМ.
    • Промежуток измерения загрузки (это период усреднения: время, за которое следует усреднять замеры нагрузки для каждой ВМ в группе) — 60 секунд.
    • Время на разогрев ВМ — 3 минуты. В течение этого времени ВМ не учитывается в измерении средней нагрузки на группу. Фактически данное время мы можем определить, измерив, как быстро запускается ВМ.
    • Период стабилизации — 5 минут. Отсчитывается с момента, когда Compute Cloud принял последнее решение о том, что количество ВМ в группе нужно увеличить.
    • Начальный размер группы — 4. Это количество ВМ, которое следует создать вместе с группой.
  8. В блоке Метрики укажите:
    • Тип — CPU.
    • Целевой уровень загрузки CPU, % — 80. Instance Groups будет управлять размером группы так, чтобы поддерживать указанную нагрузку CPU.
      image
  9. Нажмите кнопку Создать. Сервис начнет создавать ВМ. После создания статус группы изменится на Active. Обратите внимание, как меняются Состояния ВМ.
    Creating instance — ВМ создаётся и запускается.
    image
    Awaiting warmup duration — ВМ начинает принимать сетевой трафик. В этом статусе ВМ находится в течение периода прогрева, указанного в настройках автоматического масштабирования. Значения метрик ВМ в этом статусе заменяются средними значениями ВМ из той же зоны доступности.
    image
    Running actual — ВМ запущена, на неё подается сетевой трафик, пользовательские приложения работают.
    image
Группа ВМ готова принимать рабочую нагрузку.

 

Категория: Cloud Services Engineer
Просмотров: 687

GVM. Автоматическое масштабирование

Кратко:

  • Автоматическое масштабирование важно для работы веб-сервиса при пиковой посещаемости.
  • Настройка автоматического масштабирования группы ВМ позволяет системе отслеживать потребность в ВМ и экономить ресурсы.
  • Создание группы ВМ, выбор метрик для отслеживания и целевого значения метрики.
  • Период стабилизации, время на разогрев ВМ и промежуток измерения нагрузки влияют на регулирование количества ВМ в группе.
  • Возможность установки пользовательских метрик, таких как среднее время ответа сервиса, для автоматического масштабирования.

Автоматическое масштабирование

Вы разработали и запустили веб-сервис, дали к нему ранний доступ парочке популярных блогеров и со дня на день ждёте наплыва посетителей. Теперь надо сделать так, чтобы сервис продолжил работать при пиковой посещаемости как ни в чём не бывало.
 
Для этого настройте автоматическое масштабирование группы ВМ. Система сама будет отслеживать потребность в ВМ и добавлять их, а при снижении нагрузки — убирать лишние, чтобы экономить ресурсы и деньги.
 
Вот как это работает:
  1. Создайте группу ВМ.
  2. Укажите, какие метрики системе отслеживать, чтобы вовремя добавлять или убирать ВМ. Обычно это нагрузка CPU: при загруженном на 100% процессоре сервис попросту перестаёт отзываться на действия посетителей. Вы можете использовать и свои метрики (например время ответа сервиса).
  3. Укажите целевое значение метрики. Например загрузка CPU — в среднем не больше 50%.
Однако нагрузка на ресурсы бывает неравномерной. Например, ваш сервис мониторинга репутации в соцсетях хранит копии публикаций в микроблогах, на форумах, сайтах с отзывами и т. д. Пользователи часто будут делать выгрузки для отчётности, что подразумевает запросы по очень большому диапазону записей в очень большой базе данных. Поэтому среднее значение метрики может резко меняться.
Но если после каждого всплеска и спада нагрузки создавать и удалять ВМ — это тоже приведёт к расходу ресурсов. Поэтому количество ВМ регулируется при помощи следующих параметров.
  • Период стабилизации — время, в течение которого количество ВМ в группе не может быть уменьшено, даже если средние значения метрик становятся достаточно низкими. Его отсчёт начинается с момента принятия сервисом последнего из решений об увеличении размера группы. Смысл в том, что если в течение этого периода произойдёт повторный всплеск нагрузки, то в группе уже будет доступна хотя бы ещё одна дополнительная ВМ, которая перехватит часть запросов.
  • Время на разогрев ВМ — период времени после запуска ВМ, в течение которого значения метрик этой ВМ, связанных с потреблением ресурсов, будут игнорироваться, а вместо них будут использоваться средние значения метрик в группе. Это позволяет не учитывать рост нагрузки, обусловленный запуском самой ВМ.
  • Промежуток измерения нагрузки — период времени для усреднения значений измеряемых метрик. Сервис измеряет значения метрик с частотой несколько раз в минуту. Но принимать решение об изменении размера группы на основании только одного полученного значения не имеет смысла — например, нагрузка CPU может резко вырасти до 100%, а затем упасть до 10% в течение буквально пары секунд. Соответственно, чтобы регулировка количества ВМ в группе не была слишком чувствительной, используются усреднённые показатели.
Вы также можете установить в Yandex Monitoring пользовательские метрики. Например, среднее время ответа сервиса. Укажите имя метрики и ее целевое значение. Если оно будет превышено, Instance Groups создаст дополнительные машины для распределения нагрузки.
 
Проверьте себя
Чтобы сервис не создавал ВМ на каждый всплеск активности пользователей, нужно правильно:
 
Настроить промежуток измерения нагрузки - Правильно
Задать целевое значение метрики - Правильно
 
 
 
Категория: Cloud Services Engineer
Просмотров: 730

GVM. Автоматическое восстановление

Кратко:

  • Приложения не работают идеально, и сервисы могут столкнуться с проблемами из-за программных сбоев.
  • Instance Groups проверяет состояние ВМ и приложений, чтобы предотвратить простои сервисов.
  • Политика автоматического восстановления зависит от настроек развертывания.
  • Если целевой размер группы превышен, Instance Groups создает новые ВМ вместо проблемных.
  • Если целевой размер группы уменьшен, сервис перезагружает проблемную ВМ.
  • Комбинируйте оба способа восстановления для более надежного результата.
  • Старые машины не удаляются, пока не созданы новые ВМ.
  • Автоматическое восстановление прерываемых ВМ начинается только при наличии достаточного количества вычислительных ресурсов.

Автоматическое восстановление

Ни одно приложение не работает идеально. Например, если сервис из-за программного сбоя начнёт создавать множество временных файлов, на диске рано или поздно закончится свободное место. Работа сервиса прекратится. Пользователи, чьи запросы обслуживает ВМ, будут видеть сообщение об ошибке.
 
Чтобы ВМ простаивала как можно меньше, Instance Groups регулярно проверяет состояние ВМ или отзывчивость приложения. Обнаружив неполадки, сервис действует по выбранному вами сценарию: перезапускает ВМ или создаёт новую.
 
Способ автоматического восстановления при сбое зависит от того, как вы настроили политику развёртывания:
  • Если вы разрешили превышать целевой размер группы (поле Добавлять выше целевого значения), Instance Groups будет создавать ВМ вместо не прошедших проверку.
  • Если вы разрешили уменьшать целевой размер группы (поле Уменьшать относительно целевого значения), Instance Groups перезагрузит ВМ. Иногда для устранения проблемы этого достаточно. Если проблема из примера выше в том, что в папке /tmp скопилось много файлов, при перезапуске системы папка автоматически очистится.
Если вы не знаете заранее, достаточно ли перезагрузки ВМ, комбинируйте оба способа восстановления: используйте сразу два параметра.
Допустим, вы разрешили и превышать, и уменьшать целевой размер группы на одну машину. Когда одна из ВМ не пройдет проверку, Instance Groups начнет одновременно перезапускать эту машину и создавать новую. ВМ, которая первая пройдет все проверки, начнет работать, а вторая будет удалена.
Старые машины не удаляются до тех пор, пока не созданы новые. А если в процессе создания новой ВМ все машины в группе станут работоспособны, то сервис отменит её создание.
Автоматическое восстановление прерываемых ВМ начнётся только тогда, когда в зоне доступности будет достаточно вычислительных ресурсов. Иногда это занимает немало времени.
 
Проверьте себя
Чтобы максимально защитить группу ВМ фиксированного размера от сбоев, нужно разрешить:
 
Уменьшение, и превышение целевого размера группы - Правильно

 

Категория: Cloud Services Engineer
Просмотров: 622

GVM. Создание группы виртуальных машин

Кратко:

  • Создание группы виртуальных машин для автоматического восстановления ВМ.
  • Ввод имени, описания группы и создание сервисного аккаунта с ролью editor.
  • Выбор двух зон доступности для обеспечения доступности сервиса.
  • Создание шаблона виртуальной машины с описанием конфигурации и выбором образа Ubuntu.
  • Настройка загрузочного диска, сетевых настроек и доступа к SSH-ключу.
  • Установка политики развертывания, масштабирования и интеграции с Load Balancer.
  • Создание группы виртуальных машин и тестирование включения и выключения всех машин сразу.
  • Возможность удаления созданной группы ВМ, если она больше не нужна.

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

Иногда вам требуется не автоматическое масштабирование, а автоматическое восстановление ВМ. Например, если вы отлаживаете работу веб-сервиса, который периодически падает. Для этого подойдут группы ВМ фиксированного размера. Давайте создадим и настроим такую группу.
  1. В консоли управления откройте раздел Compute Cloud, перейдите на вкладку Группы виртуальных машин и нажмите кнопку Создать группу.
Откроется страница Создание группы виртуальных машин.
  1. В блоке Базовые параметры введите имя и описание группы ВМ. Создайте новый сервисный аккаунт. Чтобы иметь возможность создавать, обновлять и удалять ВМ в группе, назначьте сервисному аккаунту роль editor. По умолчанию все операции в группе ВМ выполняются от имени сервисного аккаунта.
  1. ВМ группы могут находиться в разных зонах и регионах. В блоке Распределение выберите две зоны доступности, чтобы обеспечить доступность сервиса, если в одной из них случится сбой.
  2. В блоке Шаблон виртуальной машины нажмите кнопку Задать.
  1. Шаблон создается так же, как и сама ВМ. В блоке Базовые параметры введите описание шаблона конфигурации, затем в блоке Выбор образа/загрузочного диска на вкладке Операционные системы выберите Ubuntu.
  1. В блоках Диски и Вычислительные ресурсы для загрузочного диска оставьте значения по умолчанию. В блоке Сетевые настройки выберите существующую сеть и подсети или создайте новые. В блоке Доступ выберите существующий или создайте новый сервисный аккаунт, укажите логин, вставьте в поле SSH-ключ содержимое файла с публичным ключом, доступ к серийной консоли не разрешайте.
  2. Сохраните параметры и вы вернётесь на страницу Создание группы виртуальных машин.
  3. В блоке В процессе создания и обновления разрешено установите политику развертывания:
    • Добавлять выше целевого значения (на сколько ВМ можно превышать размер группы) — 2.
    • Уменьшать относительно целевого значения (на сколько ВМ можно уменьшать размер группы) — 1.
    • Одновременно создавать (сколько ВМ можно сразу создавать в группе) — 2.
    • Время запуска (сколько времени должно пройти, прежде чем будут пройдены все проверки состояния и ВМ начнет получать нагрузку) — 2 минуты.
    • Одновременно останавливать (сколько ВМ можно сразу удалять) — 1.
    • Останавливать машины по стратегии — Принудительная. При принудительной стратегии Instance Groups самостоятельно выбирает, какие ВМ остановить.
  1. В блоке Масштабирование выберите фиксированный тип, Размер (количество ВМ) — 3.
  2. В блоке Интеграция с Load Balancer оставьте опцию Создать целевую группу выключенной. Не включайте пока проверку состояний, которая позволяет Instance Groups получать сведения о состоянии ВМ.
  3. Нажмите кнопку Создать и вернитесь на страницу Группы виртуальных машин. В правом нижнем углу появится сообщение «Группа виртуальных машин создаётся». Одновременно можно создавать не более двух ВМ. Поэтому сначала будут созданы две ВМ, потом — третья.
  1. После того как вы создали группу, протестируйте включение и выключение всех машин сразу. Обратите внимание: в соответствии с настройками сервис инициирует запуск не более двух машин одновременно. Третья ВМ будет оставаться остановленной. Как только первая будет запущена, один слот на запуск освободится, поэтому сразу будет инициирован запуск третьей и последней ВМ.
💡 Созданную группу ВМ можно удалить, она вам больше не потребуется.

 

Категория: Cloud Services Engineer
Просмотров: 605
  1. GVM .Зачем нужны группы виртуальных машин
  2. BN. Как правильно использовать балансировщики
  3. BN. Создание балансировщика
  4. BN. Знакомство с Yandex Cloud CLI

Страница 16 из 19

  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
© Gantry Framework 2016 - 2026
Developed by RocketTheme exclusively
for Gantry 5.
  • Главная
  • Начало
  • Карта
Back to top