Files
school-dev-k8s/practice/14.ci-cd/1.1.prepare_cluster
Marsel Ibraev f44beb51a9 Add basic info
2021-09-24 11:51:02 +03:00
..
2021-09-24 11:51:02 +03:00
2021-09-24 11:51:02 +03:00
2021-09-24 11:51:02 +03:00
2021-09-24 11:51:02 +03:00

Подготовка кластера

1. Создаем ns и RBAC

Для этого запускаем скрипт setup.sh, перед запуском <Ваш номер логина> меняем на свой номер студента!!.

bash ~/slurm/practice/14.ci-cd/1.1.prepare_cluster/setup.sh s<Ваш номер логина>-xpaste production

В конце своего выполнения скрипт выдаст нам токен, который необходимо сохранить.

2. Создание variables в gitlab

Для доступа из Gitlab в Kubernetes нам необходимо добавить в Gitlab переменную, в которой будет содержаться токен с предыдущего шага.

  • Переходим в Gitlab

Для этого открываем в браузере свой форк xpaste. <Ваш номер логина> меняем на свой номер студента:

https://gitlab.slurm.io/s<Ваш номер логина>/xpaste
  • Добавляем переменную

Для этого в левом меню находим Settings -> CI/CD -> Variables и нажимаем Expand. Жмем кнопку Add Variable и в поле Key вводим имя переменной:

K8S_CI_TOKEN

В поле Value вводим скопированный токен из вывода команды setup.sh (пункт 1) и нажимаем Add Variable.

3. Создаем token для доступа в registry

Для этого переходим в раздел Settings -> Repository -> Deploy tokens и нажимаем Expand.

В поле Name вводим

k8s-pull-token

Cтавим галочку рядом с read_registry. Все остальные поля оставляем пустыми. Нажимаем Create deploy token.

!!НЕ ЗАКРЫВАЕМ ОКНО БРАУЗЕРА!!

4. Создаем secret в kubernetes

Создаем secret, который будет использоваться для image pull. Для этого возвращаемся на первый master и выполняем команду: Вносим нужные данные в скрипт docker_pull_secret.sh и запускаем его:

Соответственно подставляя на место <> нужные параметры, которые получили на шаге 3.

vim docker_pull_secret.sh
./docker_pull_secret.sh

6. Создание секрета для приложения

Создаем секрет, из которого при деплое будут взяты значения для переменных окружения, таких как доступы к БД и секретный ключ. Вносим нужные данные в скрипт xpaste_secret.sh и запускаем его:

vim xpaste_secret.sh
./xpaste_secret.sh

secret-key-base xxxxxxxxxxxxx это не плэйсхолдер. Можно так и оставить.