自动化运维工具 ansible(六)playbook中的变量+内置变量+注册变量+setup,debug模块+在playbook中实现交互
文章目录基本概念定义+使用变量定义变量的方法二定义多个变量用属性的方式定义用文件的方式引入变量setup参数指定获取某些在远程主机中收集的信息debug参数变量名与关键字的结合注册变量(register)获取执行结果的键值对如何在playbook中实现交互设置输入时的默认值如何用playbook在远程主机添加用户encryptconfirm基本概念定义+使用变量定义变量的方法二...
·
基本概念


定义+使用变量




定义变量的方法二


定义多个变量






用属性的方式定义








用文件的方式引入变量









定义的变量的值从外部获取


一次从命令行获取一个值


当playbook中定义了变量,但是不传值时会报错





命令行传入变量

命令行传入变量文件




在文件中的tasks中定义变量

用set_fact 参数



用set_fact将一个变量的值赋给另外一个变量






set_fact中定义的值就是全局变量





shell模块+注册变量实现某变量的全局化





setup模块




2.

指定获取某些在远程主机中收集的信息
1.



2.
3.指定受管主机中的位置
ansible中的内置变量
1、Ansible内置了一些变量以方便主机之间相互调用各自的变量。这些变量包括:
* hostvars允许你访问另一个主机的变量,当然前提是ansible已经收集到这个主机的变量了:
group_names:是当前主机所在的group列表
groups:是所有inventory的group列表
inventory_hostname:是在inventory里定义的主机名(ip或主机名称)
play_hosts是当前的playbook范围内的主机列表
inventory_dir和inventory_file是定义inventory的目录和文件
查看ansible的版本信息

获取当前操作的目的主机的名称




获取短名称

获取清单中的组和信息





查看某个小分组的信息

查看不在任何组之内的主机

查看某个主机属于哪些组




获取ansible主机清单的存放路径

debug模块
1.



2.


3.

变量名与关键字的结合







注册变量(register)







获取执行结果的键值对


如何在playbook中实现交互
1.
!

2.


设置输入时的默认值

用户不输入时,默认值是A
如何用playbook在远程主机添加用户



encrypt
1.测试加密模块是否正常

2.在远程主机添加用户



confirm




更多推荐




所有评论(0)