Руководство по установке
Требования к минимальной конфигурации:
Управляющий узел (виртуальная машина с Linux) - как минимум 1 шт.:
Любая Linux-подобная ОС, включая российские (РЕД ОС, Альт, Астра Линукс)
Наличие 500 МБ свободного места на диске.
Наличие установленной и работоспособной утилиты kubectl версии 1.33 и выше.
Для установки kubectl можно использовать руководство: https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/
Вычислительный узел (пустая виртуальная машина или физический сервер без установленной операционной системы):
Архитектура: x86_64
vCPU/CPU: 4 ядра
vRAM/RAM: 16 GB
Основной диск: чистый диск, размер от 20ГБ (в формате RAW/IDE для виртуальной машины)
Дополнительный диск (опционально): чистый диск, размер от 200ГБ (в формате RAW/IDE для виртуальной машины)
Сеть: IPv4, обязательно автоматическое получение адреса по DHCP при загрузке
Подготовительные действия для вычислительного узла (выполняются в системе управления виртуальными машинами или management-консоли сервера):
Загрузить ISO-образ по ссылке:
http://files.katamarina.ru/download
Подключить ISO-образ к виртуальной машине (или через виртуальный CD-ROM к серверу).
Выставить порядок загрузки устройств, чтобы он начинался с ISO/CD-ROM.
Включить виртуальную машину/сервер.
Дождаться загрузки с ISO-образа.
Корректно загруженная система должна выглядеть следующим образом:
Убедиться, что в верхней панели статуса присутствует поле KATAMARINA v1.11*, в поле STAGE отображается статус “Maintenance”.
Сохранить/запомнить присвоенный по DHCP управляющий IP-адрес вычислительного узла для следующего шага (в примере - 192.168.122.34).
В случае отличий - произвести полную очистку основного диска (или пересоздать новый (в случае ВМ) и перезагрузить систему с ISO-образа заново).
Первоначальное развертывание кластера, выполняется на управляющем узле:
Установка выполняется из под пользователя с правами администратора/root.
1. Установить управляющую утилиту:
curl -sL http://files.katamarina.ru/scripts/install |sh
2. Проверить корректность установки (вывод должен совпадать):
talosctl
Пример корректного вывода команды:
A CLI for out-of-band management of Kubernetes nodes created by Talos
Usage:
talosctl [command]
Available Commands:
apply-config Apply a new configuration to a node
root@demo:~#
3. Установить управляющий IP-адрес вычислительного узла (который был сохранен в предыдущем шаге):
export TALOS_CONTROL_PLANE_IP=192.168.122.34
4. Сгенерировать конфигурацию для будущего кластера:
talosctl gen config katamarina-demo https://$TALOS_CONTROL_PLANE_IP:6443
Пример корректного вывода команды:
generating PKI and tokens
Created /root/controlplane.yaml
Created /root/worker.yaml
Created /root/talosconfig
root@demo:~#
5. Применить конфигурацию вычислительного узла:
talosctl apply-config --insecure -n $TALOS_CONTROL_PLANE_IP --file ./controlplane.yaml
6. Вычислительный узел будет автоматически перезагружен, дождаться перезагрузки.
После перезагрузки экран вычислительного узла должен выглядеть следующим образом:
Убедиться, что IP-адрес вычислительного узла остался прежним (в примере - 192.168.122.34).
7. Инициализировать базовую конфигурацию кластера:
Команды далее - по прежнему выполняются в консоли управляющего узла.
talosctl bootstrap --nodes $TALOS_CONTROL_PLANE_IP --endpoints $TALOS_CONTROL_PLANE_IP --talosconfig=./talosconfig
8. Сформировать кластер:
talosctl kubeconfig kubeconf --nodes $TALOS_CONTROL_PLANE_IP --endpoints $TALOS_CONTROL_PLANE_IP --talosconfig ./talosconfig
9. Проверить, что управляющий кластер был сформирован.
./kubectl --kubeconfig ./kubeconf get nodes
Пример корректного вывода команды:
NAME STATUS ROLES AGE VERSION
talos-xxq-hug NotReady control-plane 21s v1.34.1
root@demo:~#
- Базовая установка завершена, для дальнейшего конфигурирования используйте Руководство Администратора.