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]# 

  

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐