Подготовка окружения к установке
1. Отключение SELinux
Убедитесь, что SELinux отключён, или переведен в режим Permissive
2. Проверка и настройка DNS
- Убедитесь, что все серверы могут правильно разрешать доменные имена (через DNS или
/etc/hosts). - Создайте соответствующие DNS A-записи, указывающие на IP-адреса хостов, где будут развернуты сервисы:
Для базового кластера и Single Node:
1*.ps.zakroma.internal → хост(ы) с Zakroma-Storage (для обращения к S3 по path-style) 2zakroma-gateway.zakroma.internal → хост(ы) с Zakroma-Storage 3zakroma-admin.zakroma.internal → хост(ы) с Zakroma-Storage 4keycloak.zakroma.internal → хост(ы) с Keycloak (опционально) 5kafka.zakroma.internal → хост(ы) с Kafka (опционально) 6kafka-ui.zakroma.internal → хост(ы) с Kafka-ui (опционально)
Для мультикластера:
1*.ps.cluster-1.zakroma.internal → хост(ы) с Zakroma-Storage (для обращения к S3 по path-style) 2zakroma-gateway.cluster-1.zakroma.internal → хост(ы) с Zakroma-Storage 3zakroma-admin.cluster-1.zakroma.internal → хост(ы) с Zakroma-Storage 4zakroma-cdn.cluster-1.zakroma.internal → хост(ы) с Zakroma-Storage 5keycloak.cluster-1.zakroma.internal → хост(ы) с Keycloak (опционально) 6kafka-1.cluster-1.zakroma.internal → хост(ы) с Kafka 7kafka-ui.cluster-1.zakroma.internal → хост(ы) с Kafka-ui (опционально) 8 9*.ps.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage (для обращения к S3 по path-style) 10zakroma-gateway.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage 11zakroma-admin.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage 12zakroma-cdn.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage 13keycloak.cluster-2.zakroma.internal → хост(ы) с Keycloak (опционально) 14kafka-1.cluster-2.zakroma.internal → хост(ы) с Kafka 15kafka-ui.cluster-2.zakroma.internal → хост(ы) с Kafka-ui (опционально)
В инструкции используется пример домена zakroma.internal.
Вы можете заменить его на собственную доменную зону, соответствующую вашей инфраструктуре (например, zakroma.company.com или zakroma.internal).
3. Подготовка сертификатов (TLS/SSL)
Сгенерируйте и/или получите сертификаты для следующих доменных имен:
Для базового кластера:
1*.ps.zakroma.internal 2zakroma-gateway.zakroma.internal 3zakroma-admin.zakroma.internal 4keycloak.zakroma.internal (опционально) 5kafka-ui.zakroma.internal (опционально)
Для мультикластера:
1*.ps.cluster-1.zakroma.internal 2zakroma-gateway.cluster-1.zakroma.internal 3zakroma-admin.cluster-1.zakroma.internal 4zakroma-cdn.cluster-1.zakroma.internal 5keycloak.cluster-1.zakroma.internal (опционально) 6kafka-ui.cluster-1.zakroma.internal (опционально) 7 8*.ps.cluster-2.zakroma.internal 9zakroma-gateway.cluster-2.zakroma.internal 10zakroma-admin.cluster-2.zakroma.internal 11zakroma-cdn.cluster-2.zakroma.internal 12keycloak.cluster-2.zakroma.internal (опционально) 13kafka-ui.cluster-2.zakroma.internal (опционально)
Эти сертификаты будут использоваться для безопасного доступа к Zakroma и Keycloak по HTTPS.
4. Подготовка для работы с Ansible
- Проверьте, что доступно SSH-подключение к каждому хосту.
- Убедитесь, что пользователь имеет привилегированный (sudo) доступ.
- Установите или обновите Ansible. Поддерживаются версии от 2.15.0 до 2.18.15. С иными версиями могут встречаться ошибки при запуске плейбука.
- Установите пакет
sshpassиз дистрибутива вашей ОС, если планируется подключение к узлам по логину и паролю. - Рекомендуется запускать
ansible-playbookиз корневой директории архива с ролями, где находятсяansible.cfg,inventories/,playbooks/,roles/иcollections/. Это позволяет использовать относительные пути из поставки без дополнительных правок. - Рекомендуемый вариант запуска: явно указать конфигурационный файл через переменную окружения
ANSIBLE_CONFIG=ansible.cfg, а затем выполнить нужный playbook из каталогаplaybooks/.
Пример для базового кластера:
1cd zakroma-roles-6.0.2 2ANSIBLE_CONFIG=ansible.cfg ansible-playbook -i inventories/base-cluster/hosts playbooks/sample-play-zakroma-storage.yml
Пример для одноузлового варианта:
1cd zakroma-roles-6.0.2 2ANSIBLE_CONFIG=ansible.cfg ansible-playbook -i inventories/single-node/hosts playbooks/sample-play-zakroma-zds-fs.yml
5. Настройка PostgreSQL
Настройте PostgreSQL согласно инструкции.
6. Подготовка дисков и точек монтирования для Zakroma-ZDS
- Подготовьте дисковое пространство (например, используйте LVM или отдельные разделы).
- Смонтируйте разделы на серверах, где будет использоваться Zakroma-ZDS.
- Добавьте точки монтирования в
/etc/fstab, используя UUID. - Рекомендуемые параметры:
- Файловая система: XFS или EXT4.
- Использование групп томов (Volume Groups) для большей гибкости управления.
7. Пакет Nginx
На будущих узлах кластера Закрома.Хранение должен быть доступен для установки из репозиториев пакетного менеджера или уже установлен Nginx версии от 1.14.1 до 1.29.1. С более ранними версиями Nginx возможны проблемы с совместимостью.