ansible tower docker安装

  1. ansible流程
    ansible通过ssh方式访问服务器并执行管理操作的,首先需要在ansible服务器上通过key-gen命令生成密钥对,并将公钥(id_rsa.pub)拷贝到被管理服务器.ssh目录下的authorized_keys文件里,可以通过ssh-copy-id命令发送。
    配置完成后,通过ssh命令验证免密登陆:ssh root@192.168.0.1。
    ansible安装比较简单,其配置文件为:/etc/ansible.cfg,管理的服务器列表为:/etc/ansible/host。配置完成后通过ping命令验证:ansible all -m ping。
    ansible命令及模块操作参考:
    https://www.cnblogs.com/keerya/p/7987886.html

  2. ansible-tower
    ybalt/ansible-tower将依赖包都配置好了,直接启动即可:

docker pull ybalt/ansible-tower
docker run -p 32233:443 --name tower ybalt/ansible-tower

浏览器访问tower,用户密码为:admin/password
https://localhost:32233

  1. tower配置
    首先tower是docker化配置的,需要将步骤1中的私钥(id_rsa)拷贝一份到容器的.ssh目录下,或者重新生成密钥对进行配置。
    具体配置流程如下:
  • 授权配置:登陆目标机器的授权方式,可以是ssh免密,也可以是用户密码方式。如果执行的ansible代码托管在git上,还需要添加一个读取git的授权。
  • PROJECTS:工程配置,及需要执行的ansible脚本工程,可以是本地导入,也可以是git仓库。本地默认目录为:/var/lib/awx/projects。如果是git仓库,需要选择上一步配置的git授权。
  • INVENTORIES:资源配置,及被管理的机器列表。添加相应的hosts,可以配置自定义参数。
  • TEMPLATES:模版配置,及真正执行的任务列表。从上述配置好的PROJECTS中选择要执行的任务,并制定具体的脚步。从INVENTORIES中选择哪些机器要执行,以及机器对应的授权选择。

完成TEMPLATES配置后就可以执行,也可以配置定时执行计划。
配置参考:
https://kionf.com/2018/11/21/tower-useage/

  1. 遇到问题
  • module_stdout": "/bin/sh: 1: /usr/bin/python: not found
    确认ansible服务器和目标机器是否都有:/usr/bin/python
    参考:https://www.cnblogs.com/zoujiaojiao/p/13993363.html
  • [WARNING]: Could not match supplied host pattern, ignoring:test_host
    通过playbook编写任务时,找不到host,在playbook中将host配置为all:
- hosts: all
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容