Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
    • Cloud Interconnect
    • Cloud Backup
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Router
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Managed Service for YDB
    • SpeechKit
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • Container Registry
    • Managed Service for Prometheus®
    • Message Queue
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Cloud Apps
    • Yandex AI Studio
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Yandex Cloud Video
    • Stackland
    • Yandex StoreDoc
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • DataSphere
    • Vision OCR
    • Translate
    • Cloud Registry
    • SmartCaptcha
    • Cloud Desktop
    • SourceCraft Code Assistant
    • Managed Service for GitLab
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Serverless Integrations
    • IoT Core
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Network Load Balancer
KZ
  • Начало работы
    • Все руководства
    • Архитектура и защита базового интернет-сервиса
    • Реализация отказоустойчивых сценариев для сетевых виртуальных машин
    • Настройка отказоустойчивой архитектуры в Yandex Cloud
    • Обновление группы ВМ под нагрузкой
    • Подключение к Object Storage из Virtual Private Cloud
    • Подключение к Container Registry из Virtual Private Cloud
    • Реализация защищенной высокодоступной сетевой инфраструктуры с выделением DMZ на основе Check Point NGFW
    • Развертывание Microsoft Exchange
    • Развертывание группы доступности Always On с внутренним сетевым балансировщиком
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Вопросы и ответы
  • Обучающие курсы

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

  • Подготовьте облако к работе
  • Необходимые платные ресурсы
  • Подготовьте окружение
  • Создайте группу ВМ с Container Optimized Image
  • Подключите сетевой балансировщик нагрузки к созданной группе виртуальных машин
  • Создайте нагрузку на ВМ
  • Обновите группу ВМ под нагрузкой
  • Остановите нагрузку и получите результаты
  • Как удалить созданные ресурсы
  1. Практические руководства
  2. Обновление группы ВМ под нагрузкой

Обновление группы виртуальных машин под нагрузкой

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 30 июля 2026 г.
Открыть в Markdown
  • Подготовьте облако к работе
    • Необходимые платные ресурсы
  • Подготовьте окружение
  • Создайте группу ВМ с Container Optimized Image
    • Подключите сетевой балансировщик нагрузки к созданной группе виртуальных машин
  • Создайте нагрузку на ВМ
  • Обновите группу ВМ под нагрузкой
  • Остановите нагрузку и получите результаты
  • Как удалить созданные ресурсы

Примечание

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

С помощью этого пошагового руководства вы настроите группу ВМ и проверите ее работу при обновлении конфигурации. Для этого:

  1. Подготовьте облако к работе.
  2. Подготовьте окружение.
  3. Создайте группу ВМ с Container Optimized Image.
  4. Создайте нагрузку на ВМ.
  5. Обновите группу ВМ под нагрузкой.
  6. Остановите нагрузку и получите результаты.

Если созданные ресурсы вам больше не нужны, удалите их.

Подготовьте облако к работеПодготовьте облако к работе

  1. Если у вас еще нет интерфейса командной строки Yandex Cloud, установите его.

  2. Чтобы скрипты из пошагового руководства работали корректно, скачайте и установите утилиту jq.

  3. Чтобы проверить работу автоматического масштабирования, установите утилиту wrk для проведения нагрузочного тестирования.

Необходимые платные ресурсыНеобходимые платные ресурсы

В стоимость поддержки группы ВМ Yandex Cloud входит плата за:

  • Диски и постоянно запущенные ВМ – тарифы Yandex Compute Cloud.
  • Использование динамического или статического публичного IP-адреса – тарифы Yandex Virtual Private Cloud.

Подготовьте окружениеПодготовьте окружение

  1. Создайте сервисный аккаунт с именем for-load. Чтобы иметь возможность создавать, обновлять и удалять ВМ в группе, а также интегрировать группу с сетевым балансировщиком Network Load Balancer, назначьте сервисному аккаунту роли compute.editor и load-balancer.editor:

    Консоль управления
    CLI
    API
    1. В консоли управления выберите каталог, в котором вы хотите создать сервисный аккаунт.
    2. Перейдите в сервис Identity and Access Management.
    3. Нажмите кнопку Создать сервисный аккаунт.
    4. В поле Имя укажите for-load.
    5. Нажмите значок Добавить роль. Чтобы иметь возможность создавать, обновлять и удалять ВМ в группе, а также интегрировать группу с сетевым балансировщиком Network Load Balancer, назначьте сервисному аккаунту роли compute.editor и load-balancer.editor.
    6. Нажмите кнопку Создать.
    1. Создайте сервисный аккаунт:

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

      yc iam service-account create --name for-load
      

      Результат выполнения команды:

      id: ajeab0cnib1p********
      folder_id: b0g12ga82bcv********
      created_at: "2021-02-09T17:31:32.561702Z"
      name: for-load
      
    2. Назначьте роль сервисному аккаунту роль compute.editor:

      yc resource-manager folder add-access-binding <идентификатор_каталога> \
        --role compute.editor \
        --subject serviceAccount:<идентификатор_сервисного_аккаунта>
      
    3. Назначьте роль сервисному аккаунту роль load-balancer.editor:

      yc resource-manager folder add-access-binding <идентификатор_каталога> \
        --role load-balancer.editor \
        --subject serviceAccount:<идентификатор_сервисного_аккаунта>
      
    1. Создайте сервисный аккаунт for-load:
      Воспользуйтесь методом REST API create для ресурса ServiceAccount или вызовом gRPC API ServiceAccountService/Create.
    2. Чтобы иметь возможность создавать, обновлять и удалять ВМ в группе, а также интегрировать группу с сетевым балансировщиком Network Load Balancer, назначьте сервисному аккаунту роли compute.editor и load-balancer.editor:
      Воспользуйтесь методом REST API setAccessBindings для ресурса Folder или вызовом gRPC API FolderService/SetAccessBindings.
  2. Создайте сеть с именем yc-auto-network и подсети в двух зонах доступности:

    Консоль управления
    CLI
    API
    1. В консоли управления выберите каталог, в котором вы хотите создать сеть.
    2. Перейдите в сервис Virtual Private Cloud.
    3. Нажмите кнопку Создать сеть.
    4. В поле Имя укажите yc-auto-network.
    5. Выберите опцию Создать подсети.
    6. Нажмите кнопку Создать сеть.
    1. Создайте сеть:

      yc vpc network create --name yc-auto-network
      

      Результат выполнения команды:

      id: enpabce123hd********
      folder_id: b0g12ga82bcv********
      created_at: "2021-02-09T17:33:32.561702Z"
      name: yc-auto-network
      
    2. Создайте подсеть в зоне kz1-d:

      yc vpc subnet create --network-id enpabce123hd******** --range 192.168.1.0/24 --zone kz1-d
      

      Результат выполнения команды:

      id: e1lnabc23r1c********
      folder_id: b0g12ga82bcv********
      created_at: "2021-02-09T17:34:32.561702Z"
      network_id: enpabce123hd********
      zone_id: kz1-d
      v4_cidr_blocks:
      - 192.168.1.0/24
      
    3. Создайте подсеть в зоне kz1-b:

      yc vpc subnet create --network-id enpabce123hd******** --range 192.168.2.0/24 --zone kz1-b
      

      Результат выполнения команды:

      id: b1csa2b3clid********
      folder_id: b0g12ga82bcv********
      created_at: "2021-02-09T17:35:32.561702Z"
      network_id: enpabce123hd********
      zone_id: kz1-b
      v4_cidr_blocks:
      - 192.168.2.0/24
      
    1. Создайте сеть:
      Воспользуйтесь методом REST API create для ресурса Network или вызовом gRPC API NetworkService/Create.
    2. Создайте подсети в зонах kz1-d и kz1-b:
      Воспользуйтесь методом REST API create для ресурса Subnet или вызовом gRPC API SubnetService/Create.

Создайте группу ВМ с Container Optimized ImageСоздайте группу ВМ с Container Optimized Image

  1. Все ВМ группы создаются из образа Container Optimized Image. Каждая ВМ содержит Docker-контейнер с веб-сервером, который эмулирует нагрузку на сервис.

    Консоль управления
    CLI
    API
    1. В консоли управления выберите каталог, в котором вы хотите создать группу ВМ.
    2. Перейдите в сервис Compute Cloud.
    3. На панели слева выберите Группы виртуальных машин.
    4. Нажмите кнопку Создать группу виртуальных машин.
    5. В блоке Базовые параметры:
      • В поле Имя укажите group-for-load.
      • Выберите Сервисный аккаунт for-load.
    6. В блоке Распределение в поле Зона доступности выберите kz1-d и kz1-b.
    7. В блоке Шаблон виртуальной машины нажмите Задать и в открывшемся окне:
      • В блоке Образ загрузочного диска выберите вкладку Container Solution.
      • Нажмите кнопку Настроить.
      • В окне Настройка Docker-контейнера:
        • В поле Имя укажите nginx.
        • В поле Docker-образ нажмите Укажите ссылку и введите cr.yandexcloud.kz/yc/demo/autoscaling-example-app:v1.
        • Нажмите кнопку Применить.
      • В блоке Диски и файловые хранилища:
        • Для загрузочного диска укажите Размер 30 ГБ.
      • В блоке Сетевые настройки:
        • В поле Сеть выберите for-load.
      • В блоке Доступ:
        • В поле Сервисный аккаунт выберите for-load.
        • В поле Логин укажите имя пользователя, который будет создан на ВМ.
        • В поле SSH-ключ вставьте содержимое файла открытого ключа.
      • Нажмите кнопку Сохранить.
    8. В блоке В процессе создания и обновления разрешено:
      • В поле Уменьшать относительно целевого значения введите 4.
    9. В блоке Масштабирование:
      • В поле Тип выберите Фиксированный.
      • Введите Размер 6.
    10. В блоке Интеграция с Network Load Balancer:
      • Включите опцию Создать целевую группу.
      • В поле Имя целевой группы укажите load-generator.
    11. Нажмите кнопку Создать.
    1. Узнайте идентификатор последней версии публичного образа Container Optimized Image.

      Образ Container Optimized Image в реестре Yandex Container Registry может обновляться и меняться в соответствии с релизами. При этом образ на ВМ не обновится автоматически до последней версии. Чтобы создать группу ВМ с последней версией Container Optimized Image, необходимо самостоятельно проверить ее наличие:

      yc compute image get-latest-from-family container-optimized-image --folder-id standard-images
      

      Результат выполнения команды:

      id: fd8iv792kira********
      folder_id: standard-images
      created_at: "2021-01-29T13:30:22Z"
      ...
      status: READY
      os:
        type: LINUX
      
    2. Сохраните спецификацию группы ВМ с сетевым балансировщиком нагрузки в файл specification.yaml:

      name: group-for-load # Имя группы ВМ, уникальное в рамках каталога.
      service_account_id: ajeab0cnib1p******** # Идентификатор сервисного аккаунта.
      allocation_policy: # Политика распределения ВМ в группе.
         zones:
           - zone_id: kz1-d
           - zone_id: kz1-b
      instance_template:
        service_account_id: ajeab0cnib1p******** # Идентификатор сервисного аккаунта для доступа к приватным Docker-образам.
        platform_id: standard-v1 # Идентификатор платформы.
        resources_spec:
          memory: 2G # Количество памяти (RAM).
          cores: 2 # Количество ядер процессора (vCPU).
        boot_disk_spec:
          mode: READ_WRITE # Режим доступа к диску: чтение и запись.
          disk_spec:
            image_id: <идентификатор_последней_версии_COI>
          type_id: network-ssd # Тип диска.
          size: 30G # Размер диска.
        network_interface_specs:
         - network_id: enplhg4nncc7******** # Идентификатор сети.
           subnet_ids:
             - e1lnabc23r1c******** # Идентификатор подсети.
             - b1csa2b3clid********
           primary_v4_address_spec: {
             one_to_one_nat_spec: {
               ip_version: IPV4 # Спецификация версии интернет-протокола IPv4 для публичного доступа к ВМ.
             }
           }         
        metadata: # Значения, которые будут переданы в метаданные ВМ.
          docker-container-declaration: |- # Ключ в метаданных ВМ, при котором используется Docker Container спецификация.
            spec:
              containers:
                - image: cr.yandexcloud.kz/yc/demo/autoscaling-example-app:v1
                  name: nginx
                  securityContext:
                    privileged: false
                  restartPolicy: Always
                  tty: false
                  stdin: false
          ssh-keys: | # Параметр для передачи SSH-ключа на ВМ.
            yc-user:ssh-ed25519 ABC...d01 user@desktop.ru # Имя пользователя для подключения к ВМ.
      deploy_policy: # Политика развертывания ВМ в группе.
        max_unavailable: 4
      scale_policy: # Политика масштабирования ВМ в группе.
        fixed_scale:
          size: 6
      load_balancer_spec: # Сетевой балансировщик нагрузки.
        target_group_spec:
          name: load-generator
      

      Примечание

      Передать SSH-ключ в метаданных ВМ можно с помощью параметра ssh-keys или в ключе с пользовательскими метаданными user-data. В этом руководстве используется первый вариант.

    3. Создайте группу ВМ с именем group-for-load с помощью спецификации specification.yaml:

      yc compute instance-group create --file=specification.yaml
      

      Результат выполнения команды:

      done (2m18s)
      id: cl0kabcquk1g********
      folder_id: b0g12ga82bcv********
      ...
      service_account_id: ajeab0cnib1p********
      status: ACTIVE
      application_load_balancer_state: {}
      
    1. Получите идентификатор последней версии образа container-optimized-image в семействе standard-images:
      Воспользуйтесь методом REST API getLatestByFamily для ресурса Image или вызовом gRPC API ImageService/GetLatestByFamily.

    2. Создайте группу ВМ по следующей спецификации:

      name: group-for-load # Имя группы ВМ, уникальное в рамках каталога.
      service_account_id: ajeab0cnib1p******** # Идентификатор сервисного аккаунта.
      allocation_policy: # Политика распределения ВМ в группе.
         zones:
           - zone_id: kz1-d
           - zone_id: kz1-b
      instance_template:
        service_account_id: ajeab0cnib1p******** # Идентификатор сервисного аккаунта для доступа к приватным Docker-образам.
        platform_id: standard-v1 # Идентификатор платформы.
        resources_spec:
          memory: 2G # Количество памяти (RAM).
          cores: 2 # Количество ядер процессора (vCPU).
        boot_disk_spec:
          mode: READ_WRITE # Режим доступа к диску: чтение и запись.
          disk_spec:
            image_id: <идентификатор_последней_версии_COI>
          type_id: network-ssd # Тип диска.
          size: 30G # Размер диска.
        network_interface_specs:
         - network_id: enplhg4nncc7******** # Идентификатор сети.
           subnet_ids:
             - e1lnabc23r1c******** # Идентификатор подсети.
             - b1csa2b3clid********
           primary_v4_address_spec: {
             one_to_one_nat_spec: {
               ip_version: IPV4 # Спецификация версии интернет-протокола IPv4 для публичного доступа к ВМ.
             }
           }         
        metadata: # Значения, которые будут переданы в метаданные ВМ.
          docker-container-declaration: |- # Ключ в метаданных ВМ, при котором используется Docker Container спецификация.
            spec:
              containers:
                - image: cr.yandexcloud.kz/yc/demo/autoscaling-example-app:v1
                  name: nginx
                  securityContext:
                    privileged: false
                  restartPolicy: Always
                  tty: false
                  stdin: false
          ssh-keys: | # Параметр для передачи SSH-ключа на ВМ.
            yc-user:ssh-ed25519 ABC...d01 user@desktop.ru # Имя пользователя для подключения к ВМ.
      deploy_policy: # Политика развертывания ВМ в группе.
        max_unavailable: 4
      scale_policy: # Политика масштабирования ВМ в группе.
        fixed_scale:
          size: 6
      load_balancer_spec: # Сетевой балансировщик нагрузки.
        target_group_spec:
          name: load-generator
      

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

  2. Убедитесь, что группа ВМ создана:

    Консоль управления
    CLI
    API
    1. В консоли управления выберите каталог, в котором вы создали группу ВМ.
    2. Перейдите в сервис Compute Cloud.
    3. На панели слева выберите Группы виртуальных машин.
    4. Нажмите на имя группы ВМ group-for-load.
    yc compute instance-group list-instances group-for-load
    

    Результат выполнения команды:

    +----------------------+---------------------------+-----------------+-------------+----------------------+----------------+
    |     INSTANCE ID      |           NAME            |   EXTERNAL IP   | INTERNAL IP |        STATUS        | STATUS MESSAGE |
    +----------------------+---------------------------+-----------------+-------------+----------------------+----------------+
    ...
    | fhmab0cfsfd1******** | cl0kabcquk1g********-oxig | 178.154.226.108 | 10.130.0.8  | RUNNING_ACTUAL [49m] |                |
    | epdabchpdef0******** | cl0kabcquk1g********-aqyg | 130.193.40.55   | 10.129.0.20 | RUNNING_ACTUAL [43m] |                |
    +----------------------+---------------------------+-----------------+-------------+----------------------+----------------+
    

    Чтобы посмотреть список созданных групп ВМ, воспользуйтесь методом REST API list для ресурса InstanceGroup или вызовом gRPC API InstanceGroupService/List.

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

  1. Создайте сетевой балансировщик нагрузки с именем load-generator и подключите его к созданной группе ВМ:

    Консоль управления
    CLI
    API
    1. В консоли управления выберите каталог, в котором хотите создать балансировщик.
    2. Перейдите в сервис Network Load Balancer.
    3. Нажмите кнопку Создать сетевой балансировщик.
    4. В поле Имя укажите load-generator.
    5. В поле Публичный адрес выберите Автоматически.
    6. В блоке Обработчики нажмите Добавить обработчик.
    7. В открывшемся окне:
      • В поле Имя укажите http.
      • В поле Порт укажите 80 — на нем балансировщик будет принимать входящий трафик.
      • В поле Целевой порт укажите 80 — на него балансировщик будет направлять трафик.
      • Нажмите кнопку Добавить.
    8. В блоке Целевые группы нажмите Добавить целевую группу.
    9. В списке Целевая группа выберите load-generator.
    10. В блоке Проверка состояния нажмите Настроить:
      • В открывшемся окне укажите Путь /hello — по этому пути балансировщик будет отправлять запросы для проверки состояния ВМ из целевой группы.
      • Нажмите кнопку Применить.
    11. Нажмите кнопку Создать.
    1. Получите идентификатор целевой группы load-generator:

      yc load-balancer target-group get load-generator | grep "^id"
      

      Результат выполнения команды:

      id: enpsa475ej51********
      
    2. Создайте балансировщик:

      yc load-balancer network-load-balancer create \
        --name load-generator \
        --listener external-ip-version=ipv4,name=http,port=80,protocol=tcp,target-port=80 \
        --target-group healthcheck-http-port=80,healthcheck-http-path=/hello,target-group-id=<идентификатор_целевой_группы>
      

      Результат выполнения команды:

      done (14s)
      id: b0ruab1ccvpd********
      folder_id: b1csa2b3clid********
      ...
          healthy_threshold: "2"
          http_options:
            port: "80"
            path: /hello
      
    1. Создайте балансировщик нагрузки с помощью метода REST API create для ресурса NetworkLoadBalancer или вызова gRPC API NetworkLoadBalancerService/Create.
    2. Добавьте обработчик к балансировщику с помощью метода REST API addListener для ресурса NetworkLoadBalancer или вызова gRPC API NetworkLoadBalancerService/AddListener.
    3. Подключите целевую группу к балансировщику с помощью метода REST API attachTargetGroup для ресурса NetworkLoadBalancer или вызова gRPC API NetworkLoadBalancerService/AttachTargetGroup.
    4. Подключите балансировщик к группе ВМ с помощью метода REST API addTargets для ресурса TargetGroup или вызова gRPC API TargetGroupService/AddTargets.
  2. Убедитесь, что сетевой балансировщик load-generator создан и привязан к группе ВМ:

    Консоль управления
    CLI
    API
    1. В консоли управления выберите каталог, в котором вы создали сетевой балансировщик.
    2. Перейдите в сервис Network Load Balancer.
    3. Нажмите на имя сетевого балансировщика load-generator.
    yc load-balancer network-load-balancer list
    

    Результат выполнения команды:

    +----------------------+----------------+-----------------+----------+----------------+------------------------+--------+
    |          ID          |      NAME      |    REGION ID    |   TYPE   | LISTENER COUNT | ATTACHED TARGET GROUPS | STATUS |
    +----------------------+----------------+-----------------+----------+----------------+------------------------+--------+
    | b0ruab1ccvpd******** | load-generator | kz1     | EXTERNAL |              1 | b0r1tabcphde********   | ACTIVE |
    +----------------------+----------------+-----------------+----------+----------------+------------------------+--------+
    

    Воспользуйтесь методом REST API list для ресурса NetworkLoadBalancer или вызовом gRPC API NetworkLoadBalancerService/List.

Создайте нагрузку на ВМСоздайте нагрузку на ВМ

  1. Получите IP-адрес созданного балансировщика:

    Консоль управления
    CLI
    API
    1. В консоли управления выберите каталог, в котором находится балансировщик.
    2. Перейдите в сервис Network Load Balancer.
    3. Скопируйте IP-адрес балансировщика load-generator.
    yc load-balancer network-load-balancer get load-generator | grep "address"
    

    Результат выполнения команды:

      address: 84.252.133.110
    

    Воспользуйтесь методом REST API get для ресурса NetworkLoadBalancer или вызовом gRPC API NetworkLoadBalancerService/Get.

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

    wrk -t20 -c20 -d20m --timeout 20s http://<IP-адрес_балансировщика>/sleep
    

    Команда запустит утилиту wrk, которая будет отправлять запросы в 20 потоков по 20 подключений к сетевому балансировщику в течение 20 минут. Таймаут запроса 20 секунд. Полученную нагрузку балансировщик распределит между ВМ из группы.

    После запуска wrk на экране появится сообщение о начале тестирования:

    Running 20m test @ http://84.252.133.110/sleep
      20 threads and 20 connections
    

    Переходите к следующему шагу, не дожидаясь окончания выполнения команды.

Обновите группу ВМ под нагрузкойОбновите группу ВМ под нагрузкой

Консоль управления
CLI
API
  1. В консоли управления выберите каталог, в котором вы создали группу ВМ.
  2. Перейдите в сервис Compute Cloud.
  3. На панели слева выберите Группы виртуальных машин.
  4. Нажмите на имя группы ВМ group-for-load.
  5. Нажмите кнопку Редактировать.
  6. В блоке Шаблон виртуальной машины нажмите и выберите Редактировать.
    • В блоке Диски и файловые хранилища укажите новый размер диска — 35 ГБ.
    • Нажмите кнопку Сохранить.
  7. Нажмите кнопку Сохранить.
  8. В блоке Виртуальные машины поэтапно отобразятся изменения размера диска для всех ВМ группы.
  1. В спецификации specification.yaml укажите новый размер диска — 35 ГБ — и сохраните файл:

    ...
    size: 35G
    ...
    
  2. Обновите группу ВМ:

    yc compute instance-group update --name=group-for-load --file=specification.yaml
    

    Результат выполнения команды:

    done (9m24s)
    id: cl10kktrjcn8********
    folder_id: b1g7gvsi89m3********
    ...
       name: load-generator
    service_account_id: ajehbk07uus3********
    status: ACTIVE
    
  1. В спецификации укажите новый размер диска — 35 ГБ:

    ...
    size: 35G
    ...
    
  2. Чтобы обновить группу ВМ load-generator по новой спецификации, воспользуйтесь методом REST API updateFromYaml для ресурса InstanceGroup или вызовом gRPC API InstanceGroupService/UpdateFromYaml.

Остановите нагрузку и получите результатыОстановите нагрузку и получите результаты

Остановите работу wrk, нажав сочетание клавиш Ctrl + C.

Результат выполнения команды:

  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    10.00s     1.70ms  10.01s    68.21%
    Req/Sec     0.00      0.00     0.00    100.00%
  1148 requests in 17.47m, 211.89KB read
Requests/sec:      1.09
Transfer/sec:     206.94B

Если в результате нет строки об ошибках, например Socket errors, все запросы были обработаны.

Как удалить созданные ресурсыКак удалить созданные ресурсы

Чтобы удалить созданные ресурсы:

Консоль управления
CLI
API
  1. Удалите балансировщик нагрузки:
    1. В консоли управления выберите каталог, в котором вы создали балансировщик нагрузки.
    2. Перейдите в сервис Network Load Balancer.
    3. Справа в строке балансировщика load-generator нажмите и выберите Удалить.
    4. В открывшемся окне нажмите Удалить.
  2. Удалите группу ВМ:
    1. В консоли управления выберите каталог, в котором вы создали группу ВМ.
    2. Перейдите в сервис Compute Cloud.
    3. На панели слева выберите Группы виртуальных машин.
    4. Справа в строке группы load-generator нажмите и выберите Удалить.
    5. В открывшемся окне нажмите Удалить.
  3. Удалите сервисный аккаунт:
    1. В консоли управления выберите каталог, в котором вы создали сервисный аккаунт.
    2. Перейдите в сервис Identity and Access Management.
    3. На панели слева выберите Сервисные аккаунты.
    4. В открывшемся списке в строке с сервисным аккаунтом yc-auto-sa нажмите и выберите Удалить.
    5. В открывшемся окне нажмите Удалить.
  4. Удалите сеть и подсети:
    1. В консоли управления выберите каталог, в котором вы создали сеть и подсети.
    2. Перейдите в сервис Virtual Private Cloud.
    3. Выберите сеть yc-auto-network.
    4. В блоке Подсети:
      1. Справа в строке подсети yc-auto-subnet-1 нажмите и выберите Удалить.
      2. В открывшемся окне нажмите Удалить.
      3. Также удалите подсеть yc-auto-subnet-2.
    5. В правом верхнем углу нажмите Удалить.

Выполните последовательно команды:

yc load-balancer network-load-balancer delete load-generator
yc compute instance-group delete load-generator
yc iam service-account delete yc-auto-sa
yc vpc subnet delete yc-auto-subnet-1
yc vpc subnet delete yc-auto-subnet-2
yc vpc network delete yc-auto-network
  1. Удалите балансировщик load-generator: воспользуйтесь методом REST API delete для ресурса NetworkLoadBalancer или вызовом gRPC API NetworkLoadBalancerService/Delete.
  2. Удалите группу ВМ load-generator: воспользуйтесь методом REST API delete для ресурса InstanceGroup или вызовом gRPC API InstanceGroupService/Delete.
  3. Удалите сервисный аккаунт yc-auto-sa: воспользуйтесь методом REST API delete для ресурса ServiceAccount или вызовом gRPC API ServiceAccountService/Delete.
  4. Удалите подсети yc-auto-subnet-1 и yc-auto-subnet-2: воспользуйтесь методом REST API delete для ресурса Subnet или вызовом gRPC API SubnetService/Delete.
  5. Удалите сеть yc-auto-network: воспользуйтесь методом REST API delete для ресурса Network или вызовом gRPC API NetworkService/Delete.

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

Предыдущая
Terraform
Следующая
Подключение к Object Storage из Virtual Private Cloud
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»