Перейти к основному содержимому

Автоматизированная установка при помощи Ansible-скриптов

Сведения

При переходе к данному разделу предполагается, что процессподготовки к установке уже пройден.

Данный раздел рассматривает процесс автоматизированной установки СУБД Pangolin при помощи Ansible-скриптов.

Внимание!

Конфигурационные файлы и сценарии, приведенные в данном руководстве, являютсяпримерами. Значение приведенных параметров и переменных зависит от конкретного случая установки.

Порядок установки

Для осуществления автоматизированной установки Pangolin выполните последовательно следующие шаги:

  1. Распакуйте дистрибутив новой версии СУБД Pangolin. Убедитесь в наличии лицензии.
  2. Настройте конечные узлы СУБД.
  3. Настройте пользователя с доступом к sudo без пароля.
  4. Подготовьте виртуального окружения.
  5. Подберите сценарий установки: с помощью Pangolin Installer (целевой) либо при помощи Ansible плейбука (альтернативный).
  6. Выполните подготовку и запуск выбранного сценария автоматизированной установки.
  7. Проверьте результат процесса установки.
Подсказка

Все блоки подготовки и процесса установки являются обязательными, кроме блоков с указанием признака в заголовке: опционально.

Ограничения и требования

Убедитесь, что:

  • Операционная система и ее версия на узле, с которого выполняется установка, совпадает с ОС и версией на узле/узлах (в зависимости от конфигурации) экземпляра СУБД Pangolin.
  • На всех узлах, в том числе и на том, с которого планируется запуск автоматизированной установки, установлены требуемые пакеты, указанные в разделе «Список пакетных зависимостей, необходимых для корректной работы Ansible-скриптов».
  • Установлена версия пакета ansible-core не ниже 2.11.0 и не выше 2.12.0. Данный пакет устанавливается в рамках поставляемого пакета ansible-venv-controller, который устанавливается в рамках подготовки виртуального окружения.

Предварительная настройка конечных узлов СУБД

Для ускорения автоматизированной установки, следует на всех конечных узлах СУБД добавить строку следующего вида в файл /etc/sudoers:

Defaults: user !requiretty

Где user - пользователь, через которого выполняется подключение на конечные узлы и имеющий привилегированные права sudo.

Настройка пользователя с доступом к sudo без пароля

Для корректной автоматизированной установки необходимо, чтобы пользователь, через которого осуществляется подключение, имел доступ к команде sudo без ввода пароля. Для этого необходимо внести изменения в файл sudoers.

Пример последовательной настройки для пользователя dbadmin:

  1. Откройте файл sudoers в текстовом редакторе. Например, с помощью команды:

    visudo
  2. Добавьте в конец файла строку:

    dbadmin ALL=(ALL) NOPASSWD: ALL
  3. (Опционально) Для ускорения выполнения автоматизированных сценариев добавьте:

    Defaults: dbadmin !requiretty
  4. Сохраните файл и закройте редактор.

Подготовка виртуального окружения

Рекомендуется запускать развертывание СУБД Pangolin в виртуальной среде Python. Для этого необходимо выполнить установку пакета pangolin-ansible-venv-controller на управляющем хосте, который поставляется в составе дистрибутива:

  1. Разархивируйте rpm-пакет venv из папки 3rdparty архива дистрибутива:

    tar -xz -f 3rdparty/3rdparty.tar.gz ./pangolin-ansible-venv-controller*
  2. Выполните установку пакета:

    sudo dnf install pangolin-ansible-venv-controller-{product_version}-{OS}.x86_64.rpm
    Подсказка

    Пример готовой команды:

       sudo dnf -y install pangolin-ansible-venv-controller-6.7.6-sberlinux8.x86_64.rpm
  3. Активируйте виртуальное окружение для начала последующей установки:

    source /opt/pangolin-ansible-venv-controller/bin/activate
Подсказка

При установке пакета pangolin-ansible-venv-controller выполняется проверка наличия всех необходимых пакетных зависимостей для корректного выполнения процесса установки на стенде запуска Ansible сценариев.

Кроме того, при запуске автоматизированной установки также выполняется проверка зависимостей на узлах СУБД Pangolin и автоматически устанавливается пакет pangolin-ansible-venv-controlled.

Если какой-либо пакет отсутствует или его версия ниже требуемой, будет выведена ошибка, и процесс установки СУБД будет приостановлен.

Выбор сценария установки

Для автоматизированного развертывания СУБД доступны два варианта:

  • Pangolin Installer – инструмент автоматизированной установки и обновления СУБД Pangolin, поддерживающий запуск в терминальном режиме. Предлагает интуитивно понятный интерфейс и автоматизацию процесса установки/обновления. Подходит для DBA специалистов, в связи с низкими требованиями к настройке и навыкам администрирования, но сохраняя надежность и контроль над процессом установки/обновления. При этом во внутренней реализации утилиты используются Ansible скрипты, входящие в состав плейбука.

  • Ansible плейбук напрямую предназначен для DevOps инженеров, так как требует навыков работы с YAML и заполнения конфигурационных файлов. Обеспечивает гибкую настройку параметров системы и расширенный контроль над процессом установки. Может быть использован, например, при интеграции в работу собственных сценариев автоматизации.

Способ установкиПреимуществаНедостатки
Pangolin Installer- Простота и удобство использования;
- Автоматизация процесса установки/обновления;
- Минимальные требования к настройке;
- Визуализация статуса выполнения процесса установки/обновления;
- Одна точка конфигурирования
- Меньшая гибкость по сравнению с плейбуком;
- Отсутствие возможности интеграции инструмента в собственную автоматизацию;
- Невозможность развертывания дополнительных настроек ролевой модели
Ansible плейбук- Высокая степень контроля над процессом развертывания;
- Гибкая настройка параметров системы;
- Возможность использование плейбука в собственной автоматизации
- Требуются знания YAML и навыки работы с автоматизированными скриптами;
- Ручная настройка параметров в конфигурационных файлах;
- Дополнительные шаги по установке необходимых пакетов

Воспользуйтесь одной из предложенных инструкций, в зависимости от выбранного сценария:

Проверка результата

Для проверки успешности установки рекомендуется использовать чек-лист проверки корректности работы СУБД Pangolin.

Действия, в случае неудачной установки

В случае, если установка прошла неудачно, выполните следующие пункты перед началом новой установки:

  1. Очистите КТС. Для этого выполните удаление продукта СУБД Pangolin по инструкции.
  2. Очистите файл ansible.log перед повторным запуском установки.
  3. Очистите директорию ./installer/cache.json.
  4. Добавьте ключ --flush-cache при повторном запуске установки.