Подготовка окружения#
Выбор способа установки#
Установка DropApp возможна только с помощью предварительно настроенных ansible-ролей.
Примечание
В сценарии используется система управления конфигурациями Ansible. Данный инструмент не входит в состав продукта и требует дополнительной установки, при необходимости запросите у системного администратора.
Примечание
Сценарии предварительных условий и установки одинаковы для операционных систем Platform V SberLinux OS Server и ОС Альт 8 СП.
Предварительные условия#
Общая схема развертывания представлена на диаграмме:

Подготовка окружения#
DropApp настраивается администратором на виртуальной машине с предустановленной ОС (подробнее в разделе «Системные требования» документа «Описание»).
Планирование пула IP-адресов#
DropApp использует балансировщик Metallb для развертывания приложений.
Для использования Metallb необходимо зарезервировать диапазон IP-адресов.
Например, 10 адресов из той же подсети, в которой развернуты серверы для установки DropApp.
DNS#
В DNS должны быть зарегистрированы записи для приложений. Пример указан в таблице ниже.
Приложение |
Пример записи |
IP-адрес |
|---|---|---|
Console |
console.domain.ru |
Первый из пула адресов Metallb |
Harbor |
harbor.domain.ru |
Первый из пула адресов Metallb |
Dex |
dex.domain.ru |
Первый из пула адресов Metallb |
Grafana |
grafana.domain.ru |
Первый из пула адресов Metallb |
Имена должны разрешаться c nodes кластера.
LDAP-каталог или IPA-сервер#
DropApp использует сертифицированный LDAP-каталог пользователей и групп. Например IPA-сервер из дистрибутива Platform V SberLinux OS Server.
В IPA-сервере должны быть настроены группы, согласно ролевой модели.
Стартовый реестр образов#
Для установки DropApp необходим реестр образов контейнеров. Загрузите в него образы из поставки DropApp.
Пример команды для загрузки образа из архива:
podman load --input curl.tar.gz
podman tag <sha-identifier> <registry_image>/dropapp/curl:8.5.0
podman push <registry_image>/dropapp/curl:8.5.0
Где:
<sha-identifier>- SHA-идентификатор;<registry_image>- реестр образов.
Предварительные условия для установки DropApp:
RPM-репозиторий получен пользователем;
выбранные пользователем RPM-пакеты из полученного репозитория загружены в репозиторий пользователя.
Примечание
RPM-репозиторий поставляется в составе дистрибутива отдельным архивом. Пример названия - fstec-rpms-1.4.2-23-distrib.zip.
Настройки node кластера#
Включение IPv6#
Чтобы включить IPv6 из GRUB, необходимо либо поставить ipv6.disable=0, либо удалить ipv6.disable из строки GRUB_CMDLINE_LINUX в конфигурационном файле /etc/default/grub.cfg, как показано ниже:
[root@localhost ~]# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001
inet <0.0.0.0> netmask <0.0.0.0> broadcast <0.0.0.0>
ether 06:23:b3:d6:e9:76 txqueuelen 1000 (Ethernet)
RX packets 1536 bytes 164873 (161.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2715 bytes 269086 (262.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Примечание
В приведенном примере используется роль пользователя с административными полномочиями (например, root) для запуска команд. Возможно использовать роль любого пользователя с sudo доступом для запуска команды.
Отключение использования swap#
Отключите использование swap на каждой виртуальной машине, для этого введите команду:
sudo swapoff -a
Переадресация IPv4#
Настройте переадресацию IPv4 и разрешение на просмотр трафика:
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF
sudo modprobe overlay
sudo modprobe br_netfilter
# параметры sysctl, требуемые при установке (сохраняются при перезагрузке)
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward = 1
EOF
# Применить параметры sysctl без перезагрузки
sudo sysctl --system
Загрузка модулей br_netfilter и overlay#
Убедитесь, что модули br_netfilter и overlay загружены, выполнив следующие команды:
lsmod | grep br_netfilter
lsmod | grep overlay
Проверка системных переменных#
Убедитесь, что для системных переменных net.bridge.bridge-nf-call-iptables, net.bridge.bridge-nf-call-ip6tables, net.ipv4.ip_forward в конфигурации установлено значение 1 sysctl, выполнив следующую команду:
sysctl net.bridge.bridge-nf-call-iptables net.bridge.bridge-nf-call-ip6tables net.ipv4.ip_forward