New-Edge-Engineering.rundeck
Ansible Rundeck 角色
这是一个 Ansible 角色,用于安装、配置并确保 Rundeck 正在运行。欢迎提供反馈、错误报告和请求,可以通过 GitHub 问题页面 提交。
执行要求
- 在 Mac OS X 上使用 Ansible 2.0 进行测试。
角色变量
以下变量可以被覆盖:
rundeck_protocol
:默认为 http,但应设置为用于访问 Web 应用程序的协议。rundeck_domain
:默认为 localhost:4440,但应设置为访问 Web 应用程序的主机名。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 列表,将下载并安装到 Rundeck 的 libext 目录中,默认无。rundeck_extra_bootstrap
:一个额外的 jar URL 列表,将下载并安装到 Rundeck 的启动中,默认无。rundeck_generate_ssh
:自动生成 SSH 密钥,默认为True
,设置为False
可停止此操作。rundeck_ldap
:确定是否使用 LDAP 认证,覆盖 rundeck_users。默认值为 False。LDAP 服务器必须有一个user
组来提供对 Rundeck Web 界面的访问。rundeck_ldap_url
:LDAP 服务器的地址,例如:ldap://localhost:389。rundeck_ldap_bind_user
:访问 LDAP 服务器的 DN,例如:cn=Manager,dc=example,dc=com。rundeck_ldap_bind_pass
:访问 LDAP 服务器的 DN 用户密码,secret。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
:获取 Crowd JAAS jar 的 URL 列表。rundeck_crowd_name
:默认值:'RunDeck'。访问 Crowd 的应用名称。rundeck_crowd_pass
:默认值:'secret'。访问 Crowd 的应用密码。rundeck_crowd_url
:默认值:'http://localhost/crowd/'。rundeck_crowd_maxconn
:默认值:20。http最大连接数。rundeck_crowd_timeout
:默认值:5000。http超时。rundeck_crowd_proxy_host
:默认值:未定义。rundeck_crowd_proxy_port
:默认值:未定义。rundeck_crowd_proxy_username
:默认值:未定义。rundeck_crowd_proxy_password
:默认值:未定义。rundeck_crowd_debug
:默认值:False。启用/禁用 Crowd 认证调试。
依赖关系
此角色没有对任何其他角色的硬性依赖,但 Rundeck 需要安装 Java(根据社区的请求进行解耦)。smola 的 ansible-java-role 是一个不错的选择,具体配置如下:
- Debian: 确保 java_packages 中包含 Debian 的 Java 软件包,例如:openjdk-7-jre-headless。
- RedHat: 确保 java_packages 中包含 RedHat 的 Java 软件包,例如:java-1.7.0-openjdk,必须调整角色以在 main.yml 中包含 RedHat.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.rundeck
许可证
mit
下载
505
拥有者
We provide software and infrastructure engineering, architecture consulting, process strategy.