AWX快速入门

AWX 是Ansible Tower的开源版,Ansible Tower是一个可视化界面的服务器自动部署和运维管理平台。AWX提供基于Web的用户界面,REST API和构建在Ansible之上的任务引擎。

在云服务器上部署 AWX 预装包之后,请参考下面的步骤快速入门。

准备

  1. 在云控制台获取您的 服务器公网IP地址

  2. 在云控制台安全组中,确保 Inbound(入)规则 下的 TCP:80 端口已经开启

  3. 在服务器中查看 AWX 的 默认管理员账号和密码

  4. 若想用域名访问 AWX,务必先完成 域名五步设置 过程

AWX 初始化向导

详细步骤

  1. 使用本地电脑浏览器访问网址:http://域名http://公网IP, 进入 AWX 登录页面

  2. 输入用户名和密码,登录到 AWX 后台管理界面

  3. 此时,AWX 安装部署已经验证通过

需要了解更多 AWX 的使用,请参考:Ansible Tower Documentation.

出现问题?

若碰到问题,请第一时刻联系 技术支持。也可以先参考下面列出的问题定位或 FAQ 尝试快速解决问题。

AWX 使用入门

下面以 使用 AWX 可视化运行 Ansible 项目 作为一个任务,帮助用户快速入门:

概念

在实战之前,必须先了解几个概念:

AWX后台界面
  • 清单(Inventories):对应 Ansible 的 Inventory,即主机组和主机IP清单列表。

  • 凭证(Credentials):受控主机的用户名、密码(秘钥)以及提权控制

  • 项目(Projects):一个完整可运行的 Ansible 项目

  • 模板(Templates):将清单、项目和凭证关联起来的任务模板,一次创建,多次使用,可修改

  • 作业(Jobs):模板每一次运行视为一次作业

准备

在使用 AWX 运行一个 Ansible 项目之前,请确保符合如下条件:

  • 准备一个可用的 Ansible 项目,例如:Grafana

  • 准备一台新创建的云服务器,此服务器被 AWX 安装 Ansible 项目。建议先运行下面的脚本,在服务中安装主流的仓库,以及 Git,pip 等工具

步骤

下面我们开始列出具体的步骤:

  1. 登录 AWX,创建【清单】,然后在清单中增加【主机】

    创建清单
    创建主机
    创建主机
  2. 创建【凭证】,下面是创建一个 root 账号以及管理密码所对应的范例(凭证类型选择【机器】)

  3. 创建【项目】,下面以我们提供的开源项目 HelloWorld 作为范例

    创建项目
  4. 创建【模板】,分别将前面创建的【凭证】、【清单】、【项目】关联起来,便完成了模板的配置

    也可以直接设置额外变量覆盖交互式

  5. 启动Template,进入 Job 页面,开始安装所需的应用程序

常用操作

修改 URL

域名五步设置 完成后,需登录 AWX,依次打开:【Settings】>【System】, 修改默认的 URL

容器中配置 SSL/HTTPS

通过向 AWX 容器持久化存储目录增加证书的方式来配置 HTTPS,具体如下:

  1. 修改(检查) /data/.awx/docker-compose.yml 文件,确保有如下两项 "- 443:443" 和 "- /data/cert:/etc/ssl/certs":

  2. 上传证书到 /data/cert 目录

  3. 打开虚拟主机配置文件:/data/.awx/nginx.conf ,插入如下的 HTTPS 配置项 到 server 段落中,保存

    以上的配置文件中的路径必须是 awx-web 容器虚拟机的路径:/etc/ssl/certs

  4. 运行如下命令,重置容器

配置 SMTP

  1. 在邮箱管理控制台获取 SMTP 相关参数

  2. 登录 AWX控制台,打开:【ADMINISTRATION】>【NOTIFICATIONS】

  3. 新建一个 Notification 模板,选择【电子邮件】,填写相关 SMTP 参数 AWX SMTP

增加额外变量

AWX 支持从项目之外注入所需的变量,它是通过额外变量机制实现,一方面可以增加变量的多样性,另外可以绕过 Ansible 项目中的交互式。

有两种额外变量的方式:

  • 方式一:在【模板】编辑页面直接增加额外变量 Ansible-Tower 额外变量

  • 方式二:在【模板】编辑页面增加一个【问卷调查】项 Ansible-Tower 问卷调查

详情参考官方文档 Create a Survey

参数

AWX 应用中包含 Nginx, Docker, PostgreSQL 等组件,可通过 通用参数表 查看路径、服务、端口等参数。

通过运行 docker ps,查看 AWX 运行时所有的服务组件:

路径

AWX 配置文件目录 /data/apps/awx AWX 数据目录: /data/apps/awx/data

端口

无特殊端口

版本

服务

命令行

先运行 pip install ansible-tower-cli 安装 AWX CLI ,然后配置使用

更多参考: AWX CLI on AWX Github

API

Ansible Tower API Guide

最后更新于