- 概述
- 简单的 ansible
- 准备
- ansible 安装
- 免密登录
- 约定
- 因为重点是 iventory, 所以只使用最简单的模块 ping
1. host-simple
- 概述
- 简单版 hosts 文件
- hosts
- 不是 /etc/hosts
- ansible 脚本, 很多时候, 需要主机的环境
- 如果配置 /etc/hosts
- 不太方便
- 没法跟着脚本走
- 不是 /etc/hosts
格式
# hosts-simple 192.168.20.135.nip.io ansible_user=root
命令
# ansible -i <hosts> <hosts/group> -m <module> > ansible -i hosts-simple 192.168.20.135.nip.io -m ping
- 疑问
- nip.io
- 这玩意到底是啥
- nip.io
2. hosts
- 概述
- 类似系统的 hosts 文件
- 文件结构
- 主机名, 地址对
格式
<hostName> ansible_host=<ip>
- 问题
- ansible_host 只是一个属性
- 还有别的属性吗
- ansible_host 只是一个属性
- 集群
- 概述
- 可以引入多个 地址对
格式
[groupName] <hostName> <hostName>
- 概述
- 大集群
- 概述
- 集群还可以继续组
格式
[superGrouop:subGroup] <group> <group>
- 概述
- 属性
- 概述
- 以组为单位, 划分的属性
格式
[group:vars] <key>=<value>
- 疑问
- 不知道有没有 继承 的关系
- 概述
示例
# 1. 服务器 demo ansible_host=192.168.2.135 # 2. 服务器组 [servers] demo # 3. 大组 [cloud:children] servers # 4. 变量 [cloud:vars] ansible_connection=ssh ansible_user=root ansible_private_key_file=~/.ssh/id_rsa host_key_checking=True
- 主机名, 地址对
- ansible 命令: 指定 host 文件
- 默认
- /etc/ansible/hosts
参数
-i <hosts>
- 默认
2. ping 模块
- 概述
- ansible 的功能, 都是靠 模块 来实现的
- ping 模块, 自然就是实现 ping 功能的
参数
-m <module>
3. 分组执行
- 概述
- 脚本执行的粒度, 是可以指定的
命令
# 1. 地址对 > ansible -i hosts demo -m ping # 2. 组 > ansible -i hosts servers -m ping # 3. 大组 > ansible -i hosts cloud -m ping # 4. 所有 > ansible -i hosts all -m ping
ps
- ref
- learn python
- Ansible系列(一):基本配置和使用
- 遗留
- 因为是初学, 所以说很多参数都不甚了解, 等学成之后, 会来补完