Подготовка окружения к установке
1. Отключение SELinux
Убедитесь, что SELinux отключён, или переведен в режим Permissive
2. Проверка и настройка DNS
- Убедитесь, что все серверы могут правильно разрешать доменные имена (через DNS или
/etc/hosts). - Создайте соответствующие DNS A-записи, указывающие на IP-адреса хостов, где будут развернуты сервисы.
- Для S3 API в версии 2.9 используется единая схема адресации
<workspace>.<FQDN>. Глобальное пространство имён доступно по адресуglobal.<FQDN>.
Для базового кластера и Single Node:
1*.zakroma.internal → хост(ы) с Zakroma-Storage (рабочие области S3 API) 2ИЛИ 3global.zakroma.internal → хост(ы) с Zakroma-Storage (глобальное пространство имён, если нет возможности делать A-Записи с wildcard) 4zakroma-admin.zakroma.internal → хост(ы) с Zakroma-Storage 5keycloak.zakroma.internal → хост(ы) с Keycloak (опционально) 6kafka.zakroma.internal → хост(ы) с Kafka (опционально) 7kafka-ui.zakroma.internal → хост(ы) с Kafka-UI (опционально)
Для мультикластера:
1*.cluster-1.zakroma.internal → хост(ы) с Zakroma-Storage (рабочие области S3 API) 2ИЛИ 3global.zakroma.internal → хост(ы) с Zakroma-Storage (глобальное пространство имён, если нет возможности делать A-Записи с wildcard) 4zakroma-admin.cluster-1.zakroma.internal → хост(ы) с Zakroma-Storage 5zakroma-cdn.cluster-1.zakroma.internal → хост(ы) с Zakroma-Storage 6keycloak.cluster-1.zakroma.internal → хост(ы) с Keycloak (опционально) 7kafka-1.cluster-1.zakroma.internal → хост(ы) с Kafka 8kafka-ui.cluster-1.zakroma.internal → хост(ы) с Kafka-UI (опционально) 9 10*.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage (рабочие области S3 API) 11ИЛИ 12global.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage (глобальное пространство имён, если нет возможности делать A-Записи с wildcard) 13zakroma-admin.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage 14zakroma-cdn.cluster-2.zakroma.internal → хост(ы) с Zakroma-Storage 15keycloak.cluster-2.zakroma.internal → хост(ы) с Keycloak (опционально) 16kafka-1.cluster-2.zakroma.internal → хост(ы) с Kafka 17kafka-ui.cluster-2.zakroma.internal → хост(ы) с Kafka-UI (опционально)
Если в инсталляции сохраняется Nginx, используется классическая схема адресации ps/vs: <workspace>.ps.<FQDN> для path-style и <workspace>.vs.<FQDN> для virtual-hosted-style. Такая схема относится к legacy-инсталляциям с Nginx и настраивается отдельно: Настройка Nginx.
В инструкции используется пример домена zakroma.internal.
Вы можете заменить его на собственную доменную зону, соответствующую вашей инфраструктуре (например, zakroma.company.com или zakroma.internal).
3. Подготовка сертификатов (TLS/SSL)
Сгенерируйте и/или получите сертификаты для следующих доменных имен:
Для базового кластера:
1*.zakroma.internal 2ИЛИ 3global.zakroma.internal (если нет возможности cделать сертификат с wildcard) 4zakroma-admin.zakroma.internal 5keycloak.zakroma.internal (опционально) 6kafka-ui.zakroma.internal (опционально)
Для мультикластера:
1*.cluster-1.zakroma.internal 2ИЛИ 3global.cluster-1.zakroma.internal (если нет возможности cделать сертификат с wildcard) 4zakroma-admin.cluster-1.zakroma.internal 5zakroma-cdn.cluster-1.zakroma.internal 6keycloak.cluster-1.zakroma.internal (опционально) 7kafka-ui.cluster-1.zakroma.internal (опционально) 8 9*.cluster-2.zakroma.internal 10ИЛИ 11global.cluster-2.zakroma.internal (если нет возможности cделать сертификат с wildcard) 12zakroma-admin.cluster-2.zakroma.internal 13zakroma-cdn.cluster-2.zakroma.internal 14keycloak.cluster-2.zakroma.internal (опционально) 15kafka-ui.cluster-2.zakroma.internal (опционально)
Эти сертификаты будут использоваться для безопасного доступа к Закрома.Хранение и Keycloak по HTTPS.
Если используется Nginx с классической схемой ps/vs, подготовьте сертификаты также для доменов *.ps.<FQDN> или *.vs.<FQDN>. Подробнее см. Настройка Nginx.
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-7.1.0 2ANSIBLE_CONFIG=ansible.cfg ansible-playbook -i inventories/base-cluster/hosts playbooks/sample-play-zakroma-storage.yml
Пример для одноузлового варианта:
1cd zakroma-roles-7.1.0 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 не является обязательным компонентом стандартной установки. Проверка пакета Nginx требуется только для legacy-инсталляций, где используется отдельная конфигурация Nginx.
Для такой конфигурации на целевых узлах должен быть доступен для установки из репозиториев пакетного менеджера или уже установлен Nginx версии от 1.14.1 до 1.29.1. С более ранними версиями Nginx возможны проблемы с совместимостью.
Инструкция по настройке: Настройка Nginx.