rundeck

Роль Ansible для Rundeck

Это роль для Ansible, предназначенная для установки, настройки и обеспечения работы Rundeck. Ваши отзывы, сообщения об ошибках и запросы приветствуются и могут быть оставлены в github issues.

Требования к выполнению

  • Тестировалось на Mac OS X с Ansible 2.0.

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

Следующие переменные можно переопределить:

  • rundeck_protocol: По умолчанию http, но следует установить протокол, по которому будет доступно веб-приложение.
  • rundeck_domain: По умолчанию localhost:4440, но следует установить имя хоста, по которому будет доступно веб-приложение.
  • rundeck_database_type: По умолчанию hsqldb, но можно установить на postgresql или mysql для использования этих баз данных. Пользователи и базы данных автоматически не создаются.
  • rundeck_database_host: По умолчанию localhost, и следует задать только если используется внешняя база данных.
  • rundeck_database_port: По умолчанию None, необходимо установить, если используется другая база данных, отличная от стандартной hsqldb.
  • rundeck_database_name: По умолчанию rundeck, но позволяет использовать другое имя базы данных для rundeck.
  • rundeck_database_user: По умолчанию rundeck, но позволяет использовать другое имя пользователя для доступа к базе данных rundeck.
  • rundeck_database_pass: По умолчанию rundeck, но позволяет использовать другой пароль для доступа пользователя к базе данных rundeck.
  • rundeck_users: Список словарей с именем, паролем (в хэшированном виде) и списком ролей (одна из ролей должна быть администраторской). Если список пуст, стандартный администратор не удаляется.
  • rundeck_plugins: Список URL плагинов, которые будут загружены и установлены в libext rundeck, по умолчанию - отсутствует.
  • rundeck_extra_bootstrap: Список дополнительных URL jar-файлов, которые будут загружены и установлены в bootstrap rundeck, по умолчанию - отсутствует.
  • rundeck_generate_ssh: Автоматическое создание ssh-ключа, по умолчанию True, установите на False, чтобы остановить это действие.
  • rundeck_ldap: Определяет, следует ли использовать аутентификацию через LDAP, переопределяет rundeck_users. По умолчанию False. Сервер LDAP должен иметь группу user для предоставления доступа к веб-интерфейсу rundeck.
  • rundeck_ldap_url: Адрес сервера LDAP, т.е. ldap://localhost:389
  • rundeck_ldap_bind_user: DN для доступа к серверу LDAP, т.е. cn=Manager,dc=example,dc=com
  • rundeck_ldap_bind_pass: Пароль пользователя DN для доступа к серверу LDAP.
  • rundeck_ldap_user_dn: DN пользователей, т.е. ou=People,dc=test1,dc=example,dc=com
  • rundeck_ldap_user_rdn_attr: Атрибут, идентифицирующий имя пользователя, т.е. uid
  • rundeck_ldap_user_id_attr: Атрибут, идентифицирующий имя пользователя, т.е. uid
  • rundeck_ldap_bindinglogin: По умолчанию: false. Если true, выполняется привязка как пользователь, проходящий аутентификацию, иначе выполняется привязка как администратор с поиском для проверки пароля пользователя.
  • rundeck_ldap_user_pass_attr: Атрибут, идентифицирующий пароль пользователя, т.е. userPassword
  • rundeck_ldap_user_filter: objectClass, используемый для поиска пользователя, т.е. account
  • rundeck_ldap_role_dn: DN ролей, т.е. ou=Groups,dc=test1,dc=example,dc=com
  • rundeck_ldap_role_name_attr: Имя атрибута роли, т.е. cn
  • rundeck_ldap_role_username_attr: Переопределяет rundeck_ldap_role_member_attr, определяющий членство пользователя в ролях, т.е. uid
  • rundeck_ldap_role_member_attr: Используется для определения членства пользователя в ролях, т.е. member
  • rundeck_ldap_role_filter: objectClass, используемый для поиска роли, т.е. groupOfNames
  • rundeck_ldap_netsted_groups: По умолчанию: false. Если true, будут разрешены все вложенные группы для аутентифицированных пользователей.
  • rundeck_ldap_debug: По умолчанию: false. Включить/выключить отладку ldap.
  • rundeck_crowd: По умолчанию: False. Определяет, следует ли использовать аутентификацию Atlassian Crowd, переопределяет rundeck_users.
  • rundeck_crowd_jaas_jars: Список URL для загрузки jar-файлов Crowd JAAS.
  • rundeck_crowd_name: По умолчанию: 'RunDeck'. Имя приложения для доступа к Crowd.
  • rundeck_crowd_pass: По умолчанию: 'secret'. Пароль приложения для доступа к Crowd.
  • rundeck_crowd_url: По умолчанию: 'http://localhost/crowd/'.
  • rundeck_crowd_maxconn: По умолчанию: 20. httpMaxConnections.
  • rundeck_crowd_timeout: По умолчанию: 5000. httpTimeout.
  • rundeck_crowd_proxy_host: По умолчанию: Неопределено.
  • rundeck_crowd_proxy_port: По умолчанию: Неопределено.
  • rundeck_crowd_proxy_username: По умолчанию: Неопределено.
  • rundeck_crowd_proxy_password: По умолчанию: Неопределено.
  • rundeck_crowd_debug: По умолчанию: False. Включить/выключить отладку аутентификации Crowd.

Зависимости

Эта роль не зависит от других ролей для развертывания, но для работы Rundeck требуется установленный Java (по запросу со стороны сообщества). Хорошим выбором будет ansible-java-role с следующей конфигурацией:

  • Debian: Убедитесь, что java_packages содержит дебианский пакет java, т.е. openjdk-7-jre-headless.
  • RedHat: Убедитесь, что java_packages содержит дебианский пакет java, т.е. java-1.7.0-openjdk, нужно отредактировать роль, чтобы включить RedHat.yml в main.yml, чтобы она работала.

Если вы решили использовать базу данных, убедитесь, что она установлена перед выполнением этой роли. Для создания баз данных были использованы следующие роли:

  • Ubuntu 12.04 & 14.04/PostgreSQL: postgresql.
  • Centos 6.5 & 7.0/PostgreSQL: postgresql-on-el6 (с доработками, следите за обновлениями).

Тестирование

Пожалуйста, проверьте изменения, используя предоставленные vagrant-браузеры, т.е.:

cd tests/vagrant-centos65
vagrant up

Чтобы использовать базу данных PostgreSQL, сначала экспортируйте плейбук, т.е.:

export PLAYBOOK=postgresql_redhat_test.yml

Лицензия

Лицензия MIT. Смотрите файл LICENSE для деталей.

О проекте

installation and configuration of rundeck

Установить
ansible-galaxy install New-Edge-Engineering/ansible-rundeck
Лицензия
mit
Загрузки
492
Владелец
We provide software and infrastructure engineering, architecture consulting, process strategy.