From c498e391d2fefafe33bf99ed2c2b9cb6fc662f47 Mon Sep 17 00:00:00 2001 From: dannc Date: Tue, 20 Dec 2022 10:58:41 +0700 Subject: [PATCH] common: add readme for configuration k8s cluster in terraform --- src/terraform/k8s-mini-cluster/readme.md | 45 ++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/terraform/k8s-mini-cluster/readme.md diff --git a/src/terraform/k8s-mini-cluster/readme.md b/src/terraform/k8s-mini-cluster/readme.md new file mode 100644 index 0000000..85288b5 --- /dev/null +++ b/src/terraform/k8s-mini-cluster/readme.md @@ -0,0 +1,45 @@ +## Cluster configuration + +1. Авторизация в `yandex.cloud` (токен действует одни сутки) + + ```shell + yc iam create-token + ``` + +2. Применение конфигурации `terraform` + + ```shell + terraform apply + ``` + +3. Конфигурация `kubespray`. Нужно заполнить `inventory.ini`: `control ansible_host` и `node1 ansible_host`. + Так же нужно добавить в файле `group_vars/k8s_cluster/k8s_cluster.yml` значение в `supplementary_addresses_in_ssl_keys` + ip-адрес control-ноды. +4. Применение конфигурации `kubespray` (проходит довольно долго) + + ```shell + ansible-playbook -u ubuntu -i inventory/mycluster/inventory.ini cluster.yml -b -v + ``` +5. Конфигурация `kubectl` на control-ноде + + ```shell + ssh ubuntu@ + mkdir ~/.kube + sudo cp /etc/kubernetes/admin.conf ~/.kube/config + sudo chown ubuntu:ubuntu ~/.kube/config + ``` + +6. Конфигурация `kubectl` на локальной машине + + ```shell + scp ubuntu@:/home/ubuntu/.kube/config ~/.kube/kubespray-do.conf + ``` + + После этого нужно заменить ip-адрес `clusters.[0].cluster.server` с `127.0.0.1` на `control ansible_host`. + + В случае, если нужна постоянная конфигурация, то нужно переименовать файл `kubespray-do.conf` на `config`. + Иначе, можно задать конфигурацию только для текущей сессии терминала: + + ```shell + export KUBECONFIG=~/.kube/kubespray-do.conf + ```