Создание и активация инстанса Managed Service for GitLab
Создать инстанс GitLab
Для создания инстанса Managed Service for GitLab нужна роль vpc.user и роль gitlab.editor или выше. О том, как назначить роль, см. документацию Identity and Access Management.
Важно
После создания инстанса нельзя изменить его сетевую конфигурацию: зону доступности и подсеть.
-
В консоли управления выберите каталог, в котором нужно создать инстанс GitLab.
-
Выберите сервис Managed Service for GitLab.
-
Нажмите кнопку Создать инстанс.
-
В верхней части страницы:
-
Введите имя инстанса. Оно должно быть уникальным в рамках Yandex Cloud.
- длина — от 2 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
(Опционально) Введите описание инстанса.
-
(Опционально) Добавьте метки для разделения инстансов на логические группы.
-
(Опционально) Установите защиту инстанса от случайного удаления пользователем.
-
-
В блоке Конфигурация:
-
Выберите тип инстанса. После создания инстанса можно изменить его тип на более производительный.
-
Укажите зону доступности. После создания инстанса изменить его зону доступности невозможно.
-
Укажите подсеть, в которой будет размещен инстанс. Технические ограничения Yandex Cloud временно не позволяют выбрать подсеть с диапазоном адресов
192.168.0.0/24. -
Выберите группу безопасности или создайте новую:
- Нажмите кнопку Создать группу.
- Введите имя и описание группы безопасности. Правила для группы безопасности вы сможете добавить позже в сервисе Virtual Private Cloud.
- Нажмите кнопку Создать.
Если не задать отдельную группу безопасности, будет использована группа безопасности по умолчанию, созданная в сети инстанса.
Настройте группу безопасности так, чтобы правила разрешали входящий и исходящий трафик с нужных портов и IP-адресов.
Важно
От настройки группы безопасности зависит работоспособность и доступность инстанса Managed Service for GitLab.
Если у вас возникли проблемы с настройкой группы безопасности, обратитесь в техническую поддержку
. -
Выберите размер диска. После создания инстанса размер его диска можно увеличить.
-
Укажите доменное имя инстанса — для него будут автоматически созданы нужные DNS-записи в домене
.gitlab.yandexcloud.net.Доменное имя должно быть уникальным в рамках Yandex Cloud.
- Длина — от 5 до 50 символов.
- Может содержать строчные буквы латинского алфавита, цифры и дефисы.
- Первый и последний символ — не дефис.
-
Задайте срок хранения автоматических резервных копий (в днях).
-
(Опционально) Включите правила ревью кода. Для этого выберите подходящую конфигурацию правил ревью.
Примечание
Выбранная конфигурация влияет на стоимость использования вычислительных ресурсов инстанса.
-
-
В блоке Данные администратора укажите:
- Электронная почта — адрес электронной почты администратора инстанса GitLab. На этот адрес придет письмо со ссылкой для создания пароля.
- Логин — логин администратора.
-
(Опционально) В блоке Дополнительные настройки включите удаление образов без тегов. Настройка влияет на свободное место на диске инстанса.
-
Нажмите кнопку Создать.
-
Дождитесь, когда инстанс будет готов к работе: его статус на панели Managed Service for GitLab сменится на Running. Это может занять некоторое время.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.
-
Посмотрите описание команды CLI для создания инстанса Managed Service for GitLab:
yc managed-gitlab instance create --help -
Выберите подсеть:
yc vpc subnet listРезультат:
+----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+ | ID | NAME | NETWORK ID | ROUTE TABLE ID | ZONE | RANGE | +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+ | e9bnlm18l70a******** | default-kz1-a | enpe3m3fa00u******** | | kz1-a | [10.128.0.0/24] | +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+ -
Создайте инстанс GitLab (в примере приведены не все доступные параметры):
yc managed-gitlab instance create \ --name first-instance \ --resource-preset-id <класс_хостов> \ --disk-size <размер_диска_ГБ> \ --admin-login <логин администратора> \ --admin-email <электронная_почта_администратора> \ --domain-prefix <доменное_имя_инстанса> \ --deletion-protection \ --approval-rules <конфигурация_правил_ревью_кода> \ --subnet-id <идентификатор_подсети>Где:
-
--name— имя инстанса, уникальное в рамках Yandex Cloud. Требования к имени:- длина — от 2 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
--resource-preset-id— класс хостов. Он определяет технические характеристики виртуальной машины, на которой будет развернут инстанс GitLab. Возможные значения:s2.micro— 2 vCPU, 8 ГБ RAM.s2.small— 4 vCPU, 16 ГБ RAM.s2.medium— 8 vCPU, 32 ГБ RAM.s2.large— 16 vCPU, 64 ГБ RAM.
-
--disk-size— размер диска в ГБ. -
--admin-login— логин администратора инстанса GitLab. -
--admin-email— адрес электронной почты администратора. На этот адрес придет письмо со ссылкой для создания пароля. -
--domain-prefix— доменное имя инстанса. Для него будут автоматически созданы нужные DNS-записи в домене.gitlab.yandexcloud.net.Доменное имя должно быть уникальным в рамках Yandex Cloud.
- Длина — от 5 до 50 символов.
- Может содержать строчные буквы латинского алфавита, цифры и дефисы.
- Первый и последний символ — не дефис.
-
--deletion-protection— защита инстанса от случайного удаления пользователем. -
--approval-rules— конфигурация правил ревью кода. Возможные значения:BASIC— базовая.STANDARD— стандартная.ADVANCED— продвинутая.
Примечание
Выбранная конфигурация влияет на стоимость использования вычислительных ресурсов инстанса.
-
--subnet-id— идентификатор выбранной подсети.
Результат:
id: c17c60tpadua******** folder_id: b1g2slt7p9ug******** created_at: "2025-07-20T18:34:16.078Z" updated_at: "2025-07-20T18:34:16.078Z" name: test-cli resource_preset_id: s2.small disk_size: "107374182400" status: RUNNING admin_login: admin-gl admin_email: user@example.com domain: test-domain-user.gitlab.yandexcloud.net subnet_id: e9b4rrpuu2a******** backup_retain_period_days: "7" deletion_protection: true approval_rules_id: BASIC gitlab_version: 17.11.6Подробнее о команде читайте в справочнике CLI.
-
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы создать инстанс GitLab:
-
Опишите в конфигурационном файле Terraform параметры ресурсов, которые необходимо создать:
resource "yandex_gitlab_instance" "my_gitlab_instance" { name = "<имя_инстанса>" resource_preset_id = "<класс_хостов>" disk_size = <размер_диска_ГБ> admin_login = "<логин_администратора>" admin_email = "<электронная_почта_администратора>" domain = "<доменное_имя_инстанса>" subnet_id = "<идентификатор_подсети>" approval_rules_id = "<конфигурация_правил_ревью_кода>" backup_retain_period_days = <срок_хранения_копий> deletion_protection = <true_или_false> }Где:
-
name— имя инстанса, уникальное в рамках Yandex Cloud. Требования к имени:- длина — от 2 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
resource_preset_id— класс хостов. Он определяет технические характеристики виртуальной машины, на которой будет развернут инстанс GitLab. Возможные значения:s2.micro— 2 vCPU, 8 ГБ RAM.s2.small— 4 vCPU, 16 ГБ RAM.s2.medium— 8 vCPU, 32 ГБ RAM.s2.large— 16 vCPU, 64 ГБ RAM.
-
disk_size— размер диска в ГБ. -
admin_login— логин администратора инстанса GitLab. -
admin_email— адрес электронной почты администратора. На этот адрес придет письмо со ссылкой для создания пароля. -
domain— доменное имя инстанса в формате<имя>.gitlab.yandexcloud.net. Для него будут автоматически созданы нужные DNS-записи в домене.gitlab.yandexcloud.net.Доменное имя должно быть уникальным в рамках Yandex Cloud.
- Длина — от 5 до 50 символов.
- Может содержать строчные буквы латинского алфавита, цифры и дефисы.
- Первый и последний символ — не дефис.
-
subnet_id— идентификатор выбранной подсети. -
approval_rules_id— конфигурация правил ревью кода. Возможные значения:BASIC— базовая.STANDARD— стандартная.ADVANCED— продвинутая.
Примечание
Выбранная конфигурация влияет на стоимость использования вычислительных ресурсов инстанса.
-
backup_retain_period_days— срок хранения автоматических резервных копий (в днях). -
deletion_protection— защита инстанса от случайного удаления пользователем. Возможные значения:trueилиfalse.
Более подробную информацию о параметрах ресурса
yandex_gitlab_instanceсм. в документации провайдера. -
-
Создайте ресурсы:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validateЕсли конфигурация является корректной, появится сообщение:
Success! The configuration is valid. -
Выполните команду:
terraform planВ терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply -
Подтвердите изменения: введите в терминале слово
yesи нажмите Enter.
Terraform создаст все требуемые ресурсы. Проверить появление ресурсов можно в консоли управления
или с помощью команды CLI:yc managed-gitlab instance list -
Воспользуйтесь методом REST API Create для ресурса Instance или вызовом gRPC API InstanceService/Create.
Примечание
В Managed Service for GitLab при создании инстанса автоматически генерируется SSL-сертификат. Дополнительная настройка для работы по протоколу HTTPS не требуется.
Активировать инстанс GitLab
После того как статус инстанса принял значение Running, активируйте инстанс:
-
Перейдите по ссылке, полученной на электронную почту администратора после создания инстанса.
Если по ссылке не открывается веб-интерфейс GitLab, создайте отдельную группу безопасности и настройте ее так, чтобы правила разрешали входящий трафик с нужных портов и IP-адресов.
-
Измените пароль администратора.
-
Авторизуйтесь с помощью логина и пароля администратора.
В дальнейшем, чтобы открыть веб-интерфейс GitLab, получите детальную информацию об инстансе и перейдите по ссылке в поле Домен.