Ansible主机清单 inventory
1.自定义主机清单
[root@server dm]# vim /etc/ansible/hosts
node1
node2
node1.example.com
node2.example.com
[web] //主机组名
node1
node2
(node[1:2]也可以)
[xian:children] //嵌套主机组,只包含主机组 格式[名字:children]
web
ansible 主机/主机组 -m command(模块) a '参数hostname'
[root@server dm]# ansible node1 -m command -a 'hostname'
node1 | CHANGED | rc=0 >>
node1.example.com
[root@server dm]# vim /etc/ansible/hosts
[root@server dm]# ansible web -a 'hostname'
node1 | CHANGED | rc=0 >>
node1.example.com
node2 | CHANGED | rc=0 >>
node2.example.com
自己给自己发脚本
[root@server dm]# ssh-copy-id -i server
[root@server zx]# ansible server -a 'hostname'
server | CHANGED | rc=0 >>
server
查看主机清单
[root@server dm]# ansible all --list-hosts
[root@server dm]# ansible-inventory --graph
@all:
|--@ungrouped:
| |--node1.example.com
| |--node2.example.com
| |--server
|--@web:
| |--node1
| |--node2
自定义路径清单文件:
ansible all -i 自定义路径 --list-hosts
通配符匹配:(:,&,!)
[root@servera ~]# ansible 'web:!mail' --list-hosts
案例
1)安装和配置ansible以及ansible控制节点[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JHRXEc6W-1672643317821)(file:///C:\Users\ACER\AppData\Roaming\Tencent\QQTempSys%W@GJ$ACOF(TYDYECOKVDYB.png)]server.example.com如下:
2)创建一个名为/home/student/ansible/inventory的静态库存文件如下所示:
2.1)node1 是dev主机组的成员
2.2)node2是test主机组的成员
2.3)node1和node2是prod主机组的成员
2.4)node1是balancers主机组的一员
2.5)prod组是webservers主机组的成员
[root@server /]# mkdir /home/student/ansible/ -p
[root@server ansible]# vim inventory
[dev]
node1
[test]
node2
[prod]
node1
node2
[balancers]
node1
[webservers:children]
prod
[root@server ansible]# ansible-inventory -i /home/student/ansible/inventory --graph
@all:
|--@balancers:
| |--node1
|--@dev:
| |--node1
|--@test:
| |--node2
|--@ungrouped:
|--@webservers:
| |--@prod:
| | |--node1
| | |--node2
文章评论