)
动机:
在开发或者运维过程中, 难免会遇到经常要部署文件的烦恼,特别是有多台主机的情况;如何快速有效的进行多台设备的开发部署以及运维就显得至关重要。(总不可能一台一台的部署吧。。。慢而且容易出错)。 网上搜罗了一下,发现ansible是一个比较好用的工具,遗憾的是只支持Linux平台,又不想装虚拟机那么笨重的东西(其实是自己C盘被塞满了。。。), 怎么办呢,那就用Docker吧。Docker优点太多了就不罗嗦了,直接走起!
一:简介
-
术语介绍:
-
控制节点(Control node)
- 说白了就是我们的电脑,里面运行着ansible
-
受控节点(Managed nodes)
- 也就是我们要批量部署的主机
-
清单(Inventory)
- 受控节点的列表; 一般在 /etc/anaible/hosts文件,也可通过修改配置文件(/etc/ansible/ansible.cfg)指向自定义的任意名称的主机列表文件(只要符合ansible编写规则即可)
-
模块(Modules)
- ansible工作的核心,它是依靠各个模块进行工作的,比如常见的复制文件、拉取文件或批量执行命令等
-
任务(Tasks)
- 构成剧本的基础单元
-
剧本(Playbooks)
- 可以理解为脚本化运行的运维任务,由task构成; 目前的工作中没有用到这个,后期用会再更新
-
-
管理主机的两种方式
- 通过命令行方式(Ad-hoc command)。缺点就是不能保存命令,当然也可以把