分类目录归档:Ansible

安装ansible tower

ansible tower是ansible的一个图形化界面,IT自动化的管理平台,本文整理了安装过程中的步骤以及碰到的坑。

前提条件

操作系统版本:

  • Red Hat Enterprise Linux 7.4 or later 64-bit
  • CentOS 7.4 or later 64-bit
  • Ubuntu 16.04 LTS 64-bit

数据库版本:

  • PostgreSQL version 9.6.X以上
  • Ansible version 2.2 (最低版本) 来运行 Ansible Tower versions 3.2以上

Tower安装

下载

wget https://releases.ansible.com/ansible-tower/setup-bundle/ansible-tower-setup-bundle-latest.el7.tar.gz -P /root/tower/
cd /root/tower/
tar xvf ansible-tower-setup-bundle-latest.el7.tar.gz -C ./
cd ansible-tower-setup-bundle-3.4.3-1.el7/

目录结构,跟playbook类似

[root@zabbix-stb ansible-tower-setup-bundle-3.4.3-1.el7]# ll
总用量 52
-rw-r--r--  1 root root   143 3月  27 07:55 backup.yml
drwxr-xr-x  2 root root    17 3月  27 07:55 group_vars
-rw-r--r--  1 root root  8314 3月  27 07:55 install.yml
-rw-r--r--  1 root root   494 5月  20 16:37 inventory
drwxr-xr-x  3 root root  8192 3月  27 07:55 licenses
-rw-r--r--  1 root root  2526 3月  27 07:55 README.md
-rw-r--r--  1 root root  1393 3月  27 07:55 restore.yml
drwxr-xr-x 20 root root   320 3月  27 07:55 roles
-rwxr-xr-x  1 root root 11068 3月  27 07:55 setup.sh

编辑inventory配置

[tower]
localhost ansible_connection=local

[database]

[all:vars]
admin_password='admin'

pg_host='127.0.0.1'
pg_port='5432'

pg_database='awx'
pg_username='awx'
pg_password='awx'



rabbitmq_port=5672
rabbitmq_vhost=tower

rabbitmq_username=tower
rabbitmq_password='tower'
rabbitmq_cookie=cookiemonster

# Isolated Tower nodes automatically generate an RSA key for authentication;
# To disable this behavior, set this value to false
# isolated_key_generation=true


# Needs to be true for fqdns and ip addresses
rabbitmq_use_long_name=false

运行脚本

./setup.sh

限制

echo codyguo > /var/lib/awx/i18n.db

访问地址就是ip

简介

导航栏说明

# viewes
Dashboard           仪表盘展示信息的
Jobs                跑过的任务记录
Schedules           计划任务
My View             查看用户的工作模版,和任务记录

# resources
Templates           任务模版,配置调用playbook执行时的各种参数,从此处添加计划任务
Credentials         配置连接 机器/云主机api Key/自定义的凭证类型 的账号密码等信息
Projects            这里配置项目对应的playbook,可以从Git上拉取或从本地文件夹读取playbook
Inventories         资产清单
Inventory Scripts   自定义获取资产清单的脚本

# access
Organizations       组织管理
Users               用户管理
Teams               用户组管理

# Administration
Credential Types    自定义凭证类型,添加后可在Credentials中使用
Notifications       配置任务通知,支持电子邮件,Twillio电话等
Management Jobs     计划任务管理
Instance Groups     资产组管理
Applications        自定义应用
Settings            设置

导入现有的主机

[root@ ansible-tower-setup-bundle-3.4.3-1.el7]# tower-manage inventory_import --source=/root/hosts --inventory-id=2
    2.704 INFO     Updating inventory 2: 所有主机
    2.859 INFO     Reading Ansible inventory source: /root/hosts
    4.627 INFO     Processing JSON output...
    4.632 INFO     Loaded 10 groups, 184 hosts
    6.417 INFO     Inventory import completed for  (所有主机 - 7) in 3.7s