mongodb_install

Ansible Роль: mongodb_install

CI CD

Эта роль устанавливает серверное метапакет MongoDB Community edition, mongodb-org, с помощью менеджера пакетов ОС (по умолчанию) или двоичных файлов сервера через tar-файл. В настоящее время по умолчанию устанавливается последняя версия начиная с 4, вы можете установить более новую основную версию, установив mongodb_version: 6.0.16. Для получения информации о совместимости смотрите раздел "Проверенные платформы и версии".

Кроме того, вы можете установить двоичные файлы сервера MongoDB - mongo, mongod, mongos, установив mongodb_pkg_install: false, и роль загрузит последний tar-файл начиная с 4 или более новую основную версию, установив mongodb_version. Если вы хотите установить двоичный файл с вашего локального управляющего хоста Ansible, скачайте соответствующий tar-файл, mongodb-linux-x86_64-{DISTRO}-{VERSION}.tgz, в вашу директорию files и установите следующие две переменные в вашем плейбуке:

  • mongodb_tar_src: mongodb-linux-x86_64-{DISTRO}-{VERSION}.tgz
  • mongodb_tar_src_remote: false

Смотрите раздел "Примеры плейбуков" для работающих примеров. Эта роль не настраивает сервер, она использует значения конфигурации по умолчанию и минимальные рекомендуемые настройки ulimit. Рекомендуется настроить сервер для производственного использования, подробности см. по ссылке: https://www.mongodb.com/docs/manual/administration/production-notes/

Установка роли

Вы можете установить эту роль с помощью CLI Ansible Galaxy:

ansible-galaxy install trfore.mongodb_install

Также вы можете включить ее в файл requirements.yml и установить с помощью ansible-galaxy install -r requirements.yml, используя формат:

---
roles:
  - trfore.mongodb_install

Проверенные платформы и версии

MongoDB Community 7.0.12

  • CentOS Stream 8 и 9
  • Debian 11 и 12
  • Ubuntu 20.04 и 22.04

MongoDB Community 6.0.16

  • CentOS Stream 8 и 9
  • Debian 10 и 11
  • Ubuntu 20.04 и 22.04

MongoDB Community 5.0.28

  • CentOS Stream 8
  • Debian 10 и 11
  • Ubuntu 20.04

MongoDB Community 4.4.29

  • CentOS Stream 8
  • Debian 10
  • Ubuntu 20.04

Требования

  • ansible-core>=2.14.0

Зависимости

  • community.general.yum_versionlock (для целевого хоста CentOS и RHEL)

    ansible-galaxy collection install community.general
    

Переменные роли

Общие переменные

Общие переменные перечислены ниже вместе с значениями по умолчанию (см. defaults/main.yml):

Переменная По умолчанию Описание Обязательная
mongodb_pkg_install true Логическое значение, true для установки MongoDB через менеджер пакетов Нет
mongodb_version 4.4.29 Стабильные версии MongoDB Community v4.4, v5, v6, v7 Нет
mongodb_version_maj Автоматически Извлекает основное значение из mongodb_version Автоматически
mongodb_version_maj_minor Автоматически Извлекает основные и вторичные значения из mongodb_version Автоматически

Переменные установки пакетов

defaults/main.yml:

Переменная По умолчанию Описание Обязательная
mongodb_gpg_key URL GPG-ключ MongoDB Нет
mongodb_pkg_hold true Логическое значение, true для блокировки версии пакета Нет
mongodb_pkg_hold_list Пакеты MongoDB Список пакетов MongoDB, установленных из mongodb-org, v4.4 до v7 Нет

Переменные установки двоичных файлов

defaults/main.yml:

Переменная По умолчанию Описание Обязательная
mongodb_tar_src URL URL или относительный ПУТЬ, tar-файл двоичных файлов MongoDB Community (tar установка) Нет
mongodb_tar_src_remote true Логическое значение, true, если загрузка происходит по URL (tar установка) Нет
mongodb_path_exec /usr/bin ПУТЬ, путь к двоичным файлам MongoDB (tar установка) Нет

Другие специфические для ОС переменные

vars/debian.yml:

Переменная По умолчанию Описание Обязательная
mongodb_path_db /var/lib/mongodb ПУТЬ, папка базы данных MongoDB (tar установка) Нет
mongodb_path_log /var/log/mongodb ПУТЬ, папка логов MongoDB (tar установка) Нет
mongodb_dependencies ["libcurl4","openssl","liblzma5"] Необходимые пакеты для MongoDB (tar установка) Нет
mongodb_pkg_hold_list Пакеты MongoDB Список пакетов MongoDB, установленных из mongodb-org (pkg установка) Нет

vars/redhat.yml и vars/redhat_mongo_v{4-6}.yml:

Переменная По умолчанию Описание Обязательная
mongodb_path_db /var/lib/mongo ПУТЬ, папка базы данных MongoDB (tar установка) Нет
mongodb_path_log /var/log/mongodb ПУТЬ, папка логов MongoDB (tar установка) Нет
mongodb_dependencies ["libcurl-minimal","openssl","xz-libs"] Необходимые пакеты для MongoDB (tar установка) Нет
mongodb_pkg_hold_list Пакеты MongoDB Список пакетов MongoDB, установленных из mongodb-org (pkg установка) Нет

Примеры плейбуков

  • Установка пакета через менеджер пакетов дистрибутива.
- hosts: servers
  become: true
  roles:
    - name: Установить MongoDB
      role: trfore.mongodb_install
- hosts: servers
  become: true
  vars:
    mongodb_pkg_install: true
    mongodb_version: "6.0.16"
  roles:
    - name: Установить MongoDB
      role: trfore.mongodb_install
  • Установка двоичных файлов из tar-файла.
- hosts: servers
  become: true
  vars:
    mongodb_pkg_install: false
    mongodb_version: "6.0.16"
  roles:
    - name: Установить MongoDB
      role: trfore.mongodb_install
  • Установка двоичных файлов из tar-файла, если вы вручную скачаете tar-файл на ваш управляющий хост.
- hosts: servers
  become: true
  vars:
    mongodb_pkg_install: false
    mongodb_tar_src: mongodb-linux-x86_64-debian10-4.4.29.tgz
    mongodb_tar_src_remote: false
  roles:
    - name: Установить MongoDB
      role: trfore.mongodb_install

Лицензия

Эта роль Ansible имеет лицензию MIT.

MongoDB Community - это программное обеспечение под лицензией Server Side Public License от MongoDB, Inc. Для получения дополнительной информации смотрите: https://www.mongodb.com/licensing/server-side-public-license

Информация об авторе

Тейлор Фор (https://github.com/trfore)

Связанные роли и плейбуки

Github Ansible Galaxy
ansible-role-jsvc trfore.jsvc
ansible-role-mongodb-install trfore.mongodb_install
ansible-role-omada-install trfore.omada_install

Ссылки

MongoDB

О проекте

Install MongoDB Community Edition on RedHat/CentOS and Debian/Ubuntu.

Установить
ansible-galaxy install trfore/ansible-role-mongodb-install
Лицензия
mit
Загрузки
642
Владелец