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

71 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Подготовка кластера
## 1. Создаем ns и RBAC
Для этого запускаем скрипт `setup.sh`, перед запуском `<Ваш номер логина> меняем на свой номер студента!!`.
```bash
bash ~/slurm/practice/14.ci-cd/1.1.prepare_cluster/setup.sh s<Ваш номер логина>-xpaste production
```
В конце своего выполнения скрипт выдаст нам токен, который необходимо сохранить.
## 2. Создание variables в gitlab
Для доступа из Gitlab в Kubernetes нам необходимо добавить в Gitlab переменную, в которой будет содержаться токен с предыдущего шага.
* Переходим в Gitlab
Для этого открываем в браузере свой форк xpaste. `<Ваш номер логина> меняем на свой номер студента`:
```bash
https://gitlab.slurm.io/s<Ваш номер логина>/xpaste
```
* Добавляем переменную
Для этого в левом меню находим `Settings -> CI/CD -> Variables` и нажимаем Expand. Жмем кнопку `Add Variable` и в поле `Key` вводим имя переменной:
```bash
K8S_CI_TOKEN
```
В поле `Value` вводим скопированный токен из вывода команды setup.sh (пункт 1) и нажимаем `Add Variable`.
## 3. Создаем token для доступа в registry
Для этого переходим в раздел `Settings -> Repository -> Deploy tokens` и нажимаем Expand.
В поле `Name` вводим
```bash
k8s-pull-token
```
Cтавим галочку рядом с `read_registry`. Все остальные поля оставляем пустыми. Нажимаем `Create deploy token`.
```!!НЕ ЗАКРЫВАЕМ ОКНО БРАУЗЕРА!!```
## 4. Создаем secret в kubernetes
Создаем secret, который будет использоваться для image pull. Для этого возвращаемся на первый master и выполняем команду:
Вносим нужные данные в скрипт `docker_pull_secret.sh` и запускаем его:
Соответственно подставляя на место `<>` нужные параметры, которые получили на `шаге 3`.
```bash
vim docker_pull_secret.sh
./docker_pull_secret.sh
```
## 6. Создание секрета для приложения
Создаем секрет, из которого при деплое будут взяты значения для переменных окружения, таких как доступы к БД и секретный ключ.
Вносим нужные данные в скрипт xpaste_secret.sh и запускаем его:
```bash
vim xpaste_secret.sh
./xpaste_secret.sh
```
`secret-key-base xxxxxxxxxxxxx` это не плэйсхолдер. Можно так и оставить.