1,ansible1

开启免交互:
[root@es1 ansible]# cat ansible.cfg |grep host_key_check
host_key_checking = False
[root@es1 ansible]# 

默认模块是: -m command

查看帮助文档:ansible-doc

定义变量方式一(主机变量):
[root@es1 ansible]# cat hosts
[webservers]
192.168.0.12 ansible_ssh_user=root ansible_ssh_pass=123456  http_port=123
192.168.0.13 ansible_ssh_user=root ansible_ssh_pass=123456  http_port=123

[root@es1 ansible]# ansible webservers -a 'echo {{ http_port }}'
192.168.0.13 | CHANGED | rc=0 >>
123
192.168.0.12 | CHANGED | rc=0 >>
123
[root@es1 ansible]# 



定义变量方式二(组变量,可见主机变量的优先级更高):
[root@es1 ansible]# cat hosts
[webservers]
192.168.0.12 ansible_ssh_user=root ansible_ssh_pass=123456  http_port=123
192.168.0.13 ansible_ssh_user=root ansible_ssh_pass=123456  http_port=123

[webservers:vars]
http_port=80
[root@es1 ansible]# 
[root@es1 ansible]# ansible webservers -a 'echo {{ http_port }}'
192.168.0.12 | CHANGED | rc=0 >>
123
192.168.0.13 | CHANGED | rc=0 >>
123
[root@es1 ansible]# 


定义变量方式三(创建变量目录)
[root@es1 group_vars]# mkdir /etc/ansible/group_vars
[root@es1 group_vars]# touch webservers.yml
[root@es1 group_vars]# cat ../hosts 
[webservers]
192.168.0.12 ansible_ssh_user=root ansible_ssh_pass=123456  http_port=123
192.168.0.13 ansible_ssh_user=root ansible_ssh_pass=123456  http_port=123

[root@es1 group_vars]# 
[root@es1 group_vars]# cat webservers.yml 
http_port: 8080
server_name: www
[root@es1 group_vars]# 
[root@es1 group_vars]# 
[root@es1 group_vars]# ansible all -a 'echo {{ server_name }}'
192.168.0.12 | CHANGED | rc=0 >>
www
192.168.0.13 | CHANGED | rc=0 >>
www
[root@es1 group_vars]# 

  

posted @ 2020-11-15 11:26  pwcc  阅读(72)  评论(0)    收藏  举报