Ansible 快速入门到放弃
Ansible 快速入门到放弃
最是人间留不住,朱颜辞镜花辞树。
1-Ansible 简介
- Ansible是一个配置管理和配置工具,它使用SSH 连接到服务器并运行配置好的任务,服务器上只需要开启ssh,所有工作都交给client 端的ansible 负责。
- 当我们有批量部署的需求时,我们可以自己写脚本,但是更推荐使用 Ansible。使用 Ansible 无需编码只需要配置 yaml 文件,并且 Ansible 已经内置了幂等性、并发度控制等功能,大大减少了批量部署时的工作量。
Ansible 是基于模块工作的,本身没有批量部署的能力,真正具有批量部署的是ansible 所运行的模块,ansible只是提供一种框架。主要包括:
- 连接插件connection plugins:负责和被监控端实现通信;
- host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;
- 各种模块核心模块、command模块、自定义模块;
- 借助于插件完成记录日志邮件等功能;
- playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。
Ansible 特点,主要有以下几点:
- 不需要安装客户端,通过sshd去通信;
- 安装简易,centos上可直接yum安装;
- 基于模块工作,模块可以由任何语言开发;
- 不仅支持命令行使用模块,也支持编写yam l 格式的playbook,易于编写和阅读。
Ansible 大致原理,主要一下三点:
- hosts 配置文件,作用是告诉 Ansible 你的程序要部署到哪些机器。
- yaml 文件,作用是告诉 Ansible 在目标机器上执行哪些操作。
- Ansible 不需要在目标机器上安装客户端,它通过 SSH 把指令和要部署的程序发送到目
2-Ansible 安装
Ansible 支持集群,资源有限本示例仅在本地虚拟机使用两台机器进行演示,角色如下。
- 192.168.8.135 角色-服务端
- 192.168.8.136 角色-客户端
只需要在服务端上安装ansible,安装命令如下。
yum list |grep ansible