Tower简介

Tower的官方解释是:Ansible Tower (formerly ‘AWX’) is a web-basedsolution that makes Ansible even more easy to use for IT teams of all kinds. It’s designed to be thehub for all of your automation tasks.

个人理解tower是为了方便操作ansible的页面,包括管理远程主机ip、用户名、登录密码的web页面,安装ansible 和tower 后,访问安装机器的ip,Tower登录页面如下图,支持LADP验证。

ansible有可视化平台吗_Ansible

登录后如下图,可看到最近的执行的任务、管理的inventory(远程主机host)、credentials(远程主机的用户名、密码)、projects、每天执行任务成功和失败的次数。

ansible有可视化平台吗_Ansible_02

任务执行的时候可以看到任务的详细信息(如下图中的1位置),以及执行playbook每个步骤的结果(如下图中的2位置)。

ansible有可视化平台吗_Ansible_03

怎么在Tower中创建一个任务并执行?

1、创建project,在ansible默认目录/var/lib/awx/projects下选择写好的playbook具体路径

ansible有可视化平台吗_ansible有可视化平台吗_04

2、创建inventory,添加远程ip:

ansible有可视化平台吗_ansible有可视化平台吗_05

3、创建credentials,添加username和password:

ansible有可视化平台吗_ansible有可视化平台吗_06

4、创建job template,并添加需要的外部变量,playbook中的{{resin_code}}、{{nginx_code}}、{{nginx_path}}、{{resin_path}}、{{getcode}}变量就是从这里来的,选择之前步骤创建的inventory、project、credentials、playbook。

ansible有可视化平台吗_ansible有可视化平台吗_07

ansible有可视化平台吗_Ansible_08

5、执行以上创建步骤后,点击火箭标志就可以运行了,在步骤4中创建job template,以后就可以复用了。

ansible有可视化平台吗_用户名_09

六、原有操作的痛点以及目前操作的优势:

原有操作痛点

目前操作优势

1、步骤重复、繁琐:

无线前端每周有例行上线两次,加其他紧急上线、重大上线,压力操作每周平均需要3~4次;

2、修改配置人工误操作风险较高:

曾发生修改配置文件不正确,压力打到线上服务的情况;

3、过度依赖人工:

压力启停后需及时操作监控平台;

4、无法在手机上操作,有时测试同学无法响应:

紧急上线时,有可能测试同学已经在下班的路上,由于部署环境需要通过xshell连接线下测试环境,会造成测试人员无法操作的情况,影响上线进度。

1、自动化

实现一键压力,到最后收到邮件;

2、降低打压力门槛

良好的交互,从此压力,人人可打;

3、降低人工误操作带来的风险

很大程度上避免人工的干预;

4、压力过程更清晰

tower 显示各个流程的执行时间和执行结果;

5、随时随地打压力

手机连上vpn,通过移动端浏览器随时可以打压力,即使下班路上都可随时响应。

七、通过ansible & tower 我们还能做什么?

Ansible的优势在于对多台远程主机进行批量操作部署,组内对ansible & tower另外一个简单的应用是,对组内的测试机进行磁盘监控,如下图,front_test1这个inventory中包含组内的所有测试机器,磁盘空间的使用率阈值以及收件人作为外部变量传递给playbook。

ansible有可视化平台吗_用户名_10

ansible有可视化平台吗_Ansible_11

另外,tower中可以设置定时运行任务,如下图所示,设置起始时间、运行频率,这样组内的机器磁盘空间使用率大于阈值的时候,就可以收到邮件了。

ansible有可视化平台吗_ansible有可视化平台吗_12