Files
school-dev-k8s/practice/21.ci-cd/3.prepare_cluster
2021-12-10 00:05:25 +05:00
..
2021-12-08 18:05:43 +03:00
2021-12-10 00:05:25 +05:00
2021-12-09 17:30:09 +03:00
2021-12-08 18:05:43 +03:00

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

1.

Для этого запускаем скрипт setup.sh.

bash setup.sh xpaste development

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

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

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

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

Для этого открываем в браузере свой форк xpaste.

  • Добавляем переменную

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

K8S_DEV_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

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

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

vim xpaste_secret.sh
./xpaste_secret.sh

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