Работа с управляемым раннером
Примечание
Функциональность создания и управления раннерами с помощью консоли управления находится на стадии Preview. Чтобы запросить доступ, обратитесь в техническую поддержку
В сервисе Managed Service for GitLab вы можете создать управляемый раннер, который автоматически разворачивает указанное число виртуальных машин Compute Cloud с установленными воркерами GitLab. Также управляемый раннер обеспечивает горизонтальное масштабирование ВМ с воркерами в зависимости от нагрузки.
Важно
За использование виртуальных машин (воркеров) взимается плата (см. тарифы Compute Cloud).
Получить токен GitLab Runner
Токен можно получить при создании GitLab Runner в GitLab. Этот токен указывается при создании раннера в инстансе Managed Service for GitLab и используется для аутентификации раннера в GitLab.
Чтобы создать и настроить GitLab Runner для всего инстанса GitLab (требуются права администратора GitLab):
- Откройте GitLab.
- В левом нижнем углу нажмите кнопку Admin.
- В меню слева выберите CI/CD → Runners.
- Нажмите кнопку New instance runner и создайте новый GitLab Runner.
- Сохраните значение параметра
Runner authentication token.
Чтобы создать и настроить GitLab Runner для проекта
- Откройте GitLab.
- Выберите проект.
- В меню слева выберите Settings → CI/CD.
- В блоке Runners нажмите кнопку Expand.
- Нажмите кнопку New project runner и создайте новый GitLab Runner.
- Сохраните значение параметра
Runner authentication token.
Создать раннер
-
Выберите инстанс Managed Service for GitLab, для которого нужно создать раннер.
-
Выберите вкладку Раннеры.
-
Нажмите кнопку Создать раннер.
-
Задайте имя раннера:
- длина — от 2 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
(Опционально) Введите произвольное описание раннера.
-
Введите токен GitLab Runner, полученный ранее.
-
Выберите или создайте сервисный аккаунт для раннера.
Примечание
Этот сервисный аккаунт используется только для создания ВМ и не будет привязан к ней. У сервисного аккаунта должны быть роли compute.admin, vpc.admin и iam.serviceAccounts.user. Подробнее см. на странице Назначение роли сервисному аккаунту.
-
(Опционально) Добавьте метки для разделения раннеров на логические группы.
-
В блоке Настройки масштабирования укажите:
- Минимум воркеров — число воркеров, которые всегда запущены и готовы выполнять задачи. Значение по умолчанию —
1, минимальное —0, максимальное —10. - Максимум воркеров — максимальное число воркеров, которые могут быть созданы для выполнения задач. Значение по умолчанию —
3, минимальное —1, максимальное —30. Максимальное количество воркеров не может быть меньше минимального. - Лимит простоя воркера, в минутах — максимальное время простоя, по истечении которого дополнительно созданный воркер будет удален. Значение по умолчанию —
10, минимальное —0. - Максимум задач на воркер — максимальное количество задач, после выполнения которых воркер будет удален. Значение по умолчанию —
100, минимальное —0. - Количество параллельных задач на воркер — количество задач, которые выполняются на одном воркере одновременно. Значение по умолчанию —
1, минимальное —0.
- Минимум воркеров — число воркеров, которые всегда запущены и готовы выполнять задачи. Значение по умолчанию —
-
(Опционально) Добавьте метки для воркера.
-
В блоке Вычислительные ресурсы выберите конфигурацию вычислительных ресурсов.
-
В блоке Диски и файловые хранилища настройте загрузочный диск:
- Выберите тип диска.
- Задайте размер диска.
-
(Опционально) Выберите или создайте сервисный аккаунт для воркера.
Примечание
Этот сервисный аккаунт будет привязан к ВМ с воркером. С помощью него воркер сможет аутентифицироваться в API Yandex Cloud и взаимодействовать с облачными ресурсами.
Назначьте сервисному аккаунту роль на ресурс, с которым вы хотите работать.
-
(Опционально) Выберите группу безопасности.
-
Нажмите кнопку Создать.
Изменить раннер
-
Перейдите в сервис Managed Service for GitLab.
-
Выберите инстанс Managed Service for GitLab, в котором нужно изменить раннер.
-
Выберите вкладку Раннеры.
-
Нажмите на значок
для нужного раннера и выберите пункт Редактировать. -
Задайте новые имя и описание раннера.
-
Выберите или создайте сервисный аккаунт для раннера.
Примечание
Этот сервисный аккаунт используется только для создания ВМ и не будет привязан к ней. У сервисного аккаунта должны быть роли compute.admin, vpc.admin и iam.serviceAccounts.user. Подробнее см. на странице Назначение роли сервисному аккаунту.
-
Добавьте метки для разделения раннеров на логические группы.
-
Измените настройки масштабирования:
- Минимум воркеров — число воркеров, которые всегда запущены и готовы выполнять задачи. Значение по умолчанию —
1, минимальное —0, максимальное —10. - Максимум воркеров — максимальное число воркеров, которые могут быть созданы для выполнения задач. Значение по умолчанию —
3, минимальное —1, максимальное —30. Максимальное количество воркеров не может быть меньше минимального. - Лимит простоя воркера, в минутах — максимальное время простоя, по истечении которого дополнительно созданный воркер будет удален. Значение по умолчанию —
10, минимальное —0. - Максимум задач на воркер — максимальное количество задач, после выполнения которых воркер будет удален. Значение по умолчанию —
100, минимальное —0. - Количество параллельных задач на воркер — количество задач, которые выполняются на одном воркере одновременно. Значение по умолчанию —
1, минимальное —0.
- Минимум воркеров — число воркеров, которые всегда запущены и готовы выполнять задачи. Значение по умолчанию —
-
Добавьте метки для воркера.
-
Выберите новую конфигурацию вычислительных ресурсов воркера.
-
Измените тип и размер загрузочного диска.
-
Выберите или создайте сервисный аккаунт для воркера.
Примечание
Этот сервисный аккаунт будет привязан к ВМ с воркером. С помощью него воркер сможет аутентифицироваться в API Yandex Cloud и взаимодействовать с облачными ресурсами.
Назначьте сервисному аккаунту роль на ресурс, с которым вы хотите работать.
-
Выберите группу безопасности.
-
Нажмите кнопку Сохранить.
Удалить раннер
- Перейдите в сервис Managed Service for GitLab.
- Выберите инстанс Managed Service for GitLab, из которого нужно удалить раннер.
- Выберите вкладку Раннеры.
- В строке раннера, который вы хотите удалить, нажмите на значок
и выберите пункт Удалить. - В открывшемся окне нажмите кнопку Удалить.