Ansible Tower (以前叫’AWX’)是能够帮助任何IT团队更容易使用Ansible的解决方案。该方案基于web。
Tower允许对用户进行权限控制,即使某用户不能传送某SSH凭证,你也可以通过Tower来对该用户共享该凭证。我们可以通过图形化界面来管理Inventory,也可以对各种各样的云资源做同步。Tower可以记录所有job的日志,也可以与LDAP集成,并且拥有强大的可浏览的REST API。Tower也提供了命令行工具,可以与Jenkins轻松集成。Provisioning回调对自动伸缩拓扑图提供了强大的支持。
官方网站:https://www.ansible.com/products/tower
中文指南:http://www.ansible.com.cn/docs/tower.html
官方安装文档:http://docs.ansible.com/ansible-tower/latest/html/quickinstall/index.html
官方源地址:http://releases.ansible.com/ansible-tower/setup-bundle/
环境说明
关闭 selinux 和 firewall
系统环境 Centos 7.4 CPU:4 MEM:4G
已配置 阿里云 epel 源
安装准备
1.开始安装
cd /opt/
wget http://releases.ansible.com/ansible-tower/setup-bundle/ansible-tower-setup-bundle-3.2.3-1.el7.tar.gz
tar zxf ansible-tower-setup-bundle-3.2.3-1.el7.tar.gz
cd ansible-tower-setup-bundle-3.2.3-1.el7
复制以下内容覆盖
/opt/ansible-tower-setup-bundle-3.2.3-1.el7/inventory
文件 (安装配置的清单文件)
[tower]
localhost ansible_connection=local
[database]
[all:vars]
admin_password='admin'
pg_host=''
pg_port=''
pg_database='awx'
pg_username='awx'
pg_password='admin'
rabbitmq_port=5672
rabbitmq_vhost=tower
rabbitmq_username=tower
rabbitmq_password='admin'
rabbitmq_cookie=cookiemonster
# Needs to be true for fqdns and ip addresses
rabbitmq_use_long_name=false
# Isolated Tower nodes automatically generate an RSA key for authentication;
# To disable this behavior, set this value to false
# isolated_key_generation=true
安装依赖环境(通过安装包中提供的相关依赖直接安装,因为需要单独处理一些依赖)
yum -y install `cat /opt/ansible-tower-setup-bundle-3.2.3-1.el7/bundle/base_packages.txt`
yum -y install /opt/ansible-tower-setup-bundle-3.2.3-1.el7/bundle/repos/epel/*
开始安装应用
/opt/ansible-tower-setup-bundle-3.2.3-1.el7/setup.sh
安装完成后打开一下连接可以访问web界面(用户名admin,密码安装清单中配置,示例中密码为admin)
https://192.168.187.12/
修改认证 Ansible Tower License
cd /var/lib/awx/venv/awx/lib/python2.7/site-packages/tower_license
sed -i ‘/def _check_cloudforms_subscription(self)/a\ return True’ __init__.py
python -m py_compile __init__.py
python -O -m py_compile __init__.py
重启服务,重新登录验证
https://192.168.187.12/#/license
ansible-tower-service restart