一、主机变量和主机组变量的演示

1、主机变量和主机组变量的基本语法和规则

请访问https://www.cnblogs.com/itwangqiang/p/13592362.html

2、首先在/etc/ansible/下创建清单文件

[root@localhost ~]# cat /etc/ansible/inventory
[test]
client.example.com

3、实例一:针对特定主机定义变量

1️⃣:首先在/etc/ansible目录下创建host_vars目录(注意:目录名必须是host_vars;且与清单文件所在目录相同)

[root@localhost ansible]# mkdir host_vars
[root@localhost ansible]# ls
ansible.cfg hosts host_vars inventory playbook.yaml roles

2️⃣:在host_vars创建与主机同名的文件(如果主机是IP地址,则文件名必须是IP地址)

[root@localhost ansible]# cd host_vars/
[root@localhost host_vars]# vim client.example.com
[root@localhost host_vars]# cat client.example.com
user: lisi
[root@localhost host_vars]# cat ../inventory
[test]
client.example.com
//文件名必须与主机的名字一样

3️⃣:编写playbook文件

[root@localhost ansible]# cat playbook.yaml
---
- hosts: client.example.com
tasks:
- name: create user
user:
name: "{{ user }}"
create_home: no
state: present

4️⃣:测试是否可执行

[root@localhost ansible]# tree /etc/ansible/
/etc/ansible/
├── ansible.cfg
├── hosts
├── host_vars
│   └── client.example.com
├── inventory
├── playbook.yaml
└── roles [root@localhost ansible]# ansible-playbook -C playbook.yaml PLAY [client.example.com] ************************************************************************************************************************************************* TASK [Gathering Facts] ****************************************************************************************************************************************************
ok: [client.example.com] TASK [create user] ********************************************************************************************************************************************************
changed: [client.example.com] PLAY RECAP ****************************************************************************************************************************************************************
client.example.com : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
//测试成功

4、实例二:针对主机组定义变量

(接着上面的操作) 

1️⃣:创建主机组清单文件

[root@localhost ansible]# cat inventory
[example]
client.example.com

2️⃣:在/etc/ansible文件在创建group_vars目录(注意:目录名必须是group_vars;且与清单文件所在目录相同)

[root@localhost ansible]# mkdir group_vars
[root@localhost ansible]# tree /etc/ansible/
/etc/ansible/
├── ansible.cfg
├── group_vars
├── hosts
├── inventory
├── playbook.yaml
└── roles

3️⃣:在group_vars目录下创建与主机组名称相同的文件

[root@localhost ansible]# cd group_vars/
[root@localhost group_vars]# vim example
[root@localhost group_vars]# cat example
user: lisi

4️⃣:测试是否可执行

[root@localhost ansible]# tree /etc/ansible/
/etc/ansible/
├── ansible.cfg
├── group_vars
│   └── example
├── hosts
├── inventory
├── playbook.yaml
└── roles [root@localhost ansible]# ansible-playbook -C playbook.yaml PLAY [client.example.com] ************************************************************************************************************************************************* TASK [Gathering Facts] ****************************************************************************************************************************************************
ok: [client.example.com] TASK [create user] ********************************************************************************************************************************************************
changed: [client.example.com] PLAY RECAP ****************************************************************************************************************************************************************
client.example.com : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
//测试成功

  

Ansible_主机变量和主机组变量的演示的更多相关文章

  1. zabbix 创建主机、主机群组、监控第一台服务器

    前面介绍了zabbix服务器和zabbix agent的安装配置,今天使用zabbix监控第一台服务器. 1. 安装zabbix agent 在被监控的服务器上安装zabbix agent . 参考& ...

  2. Ansible系列(六):各种变量定义方式和变量引用

    本文目录:1.1 ansible facts1.2 变量引用json数据的方式 1.2.1 引用json字典数据的方式 1.2.2 引用json数组数据的方式 1.2.3 引用facts数据1.3 设 ...

  3. Ansible系列(五):各种变量定义方式和变量引用

    Ansible系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1.1 ansible facts facts组件是用来收集被管理节点信息的 ...

  4. 007.Ansible变量Fact,魔法变量和lookup生成变量

    一 fact变量 1.1  fact简介 ansible有一个模块叫setup,用于获取远程主机的相关信息,并可以将这些信息作为变量在playbook里进行调用.而setup模块获取这些信息的方法就是 ...

  5. 通过lua获取nginx的内置变量,通过这些变量做些逻辑的处理

    Nginx提供了很多内置的变量,如: $arg_PARAMETER 这个变量包含在查询字符串时GET请求PARAMETER的值. $args 这个变量等于请求行中的参数. $binary_remote ...

  6. 【环境变量】Linux 下三种方式设置环境变量与获取环境变量

    1.在Windows 系统下,很多软件安装都需要配置环境变量,比如 安装 jdk ,如果不配置环境变量,在非软件安装的目录下运行javac 命令,将会报告找不到文件,类似的错误. 2.那么什么是环境变 ...

  7. 【转】nginx的模块变量(HTTP核心模块变量)

    nginx的HTTP核心模块引入了大量的变量,可以在指定范围内使用这些变量的值,可以分为三类:一是客户请求头中发送的变量.二是服务器端响应头中的变量,第三是nginx产生的各种变量,我们可以使用$变量 ...

  8. Linux设置环境变量小结:设置永久变量&临时变量 全局变量&局部变量

    1.总结背景 在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现“command not found”的提示内容.如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁 ...

  9. JavaScript | 新手村(一)变量,运算和变量方法

    资料来自:JavaScript 第一步 1. 向 html 页面添加 JavaScript 1.1 内部 JavaScript 在 html 文件中的 </body> 标签前插入代码: & ...

随机推荐

  1. Dynamics CRM安装教程六:CRM产品安装

    接下来就要开始进行CRM产品的安装了 首先要安装IIS,以及.NET FrameWork4.6及相关功能 打开服务器管理器,在添加角色功能向导中勾选IIS,点击添加功能 默认下一步 选择角色服务这里的 ...

  2. 消息中间件-RabbitMQ集群和高可用

    多机多节点集群部署 一. 环境准备 准备三台安装好RabbitMQ 的机器,安装方法见 安装步骤 10.10.1.41 10.10.1.42 10.10.1.43 提示:如果使用虚拟机,可以在一台VM ...

  3. 嗨,你知道吗,Spring还有这些高级特性!

    目录 Spring介绍 设计理念 核心组件的协同工作 设计模式的应用 代理模式 策略模式 特性应用 事件驱动编程 异步执行 定时任务 日常开发使用非常多的Spring,它的设计理念是什么呢?有哪些核心 ...

  4. 这种ERP系统核查工作实际是在做无用功

    前段时间跟朋友聊起他们公司持续了好几年的ERP核查工作,此时他正在一家分公司做核查.ERP核查工作我是知道的,一个季度一次,每个模块出一个人去子公司巡回巡查,主要核查ERP系统的使用情况. 核查工作主 ...

  5. Vue入门学习

    目录 Vue 简介 第一个Vue程序 Vue基本语法 双向绑定 组件 Axios异步通信 计算属性 Slot 自定义事件 第一个Vue-cli程序 webpack学习使用 Vue-Router路由 v ...

  6. 754. Reach a Number

    You are standing at position 0 on an infinite number line. There is a goal at position target. On ea ...

  7. 基于三层交换机的VRRP技术--MSTP、VRRP的综合运用

    MSTP (多生成树) 每个VLAN或者几个VLAN拥有一颗生成树,基于实例的生成树.instance 1.instance 2 每个实例拥有一颗生成树.MSTP可以实现多VLAN 的负载分担,可以实 ...

  8. HTTP协议之分块传输与分段编码

    目录 数据的分块传输 数据的分段编码(transfer-encoding) 前置知识:HTTP协议 数据的分块传输 我们都知道http协议是由TCP协议封装而来的应用层协议.我们和服务器之间的每次ht ...

  9. 获取Shell后的操作

    对于Windows系统主机和Linux系统主机,获取Shell后的操作都不同. Windows 当我们通过对Web服务器进行渗透,拿到了该Web服务器的shell后,可以执行系统命令后,我们该如何操作 ...

  10. linux中定时运行php(每分钟执行一次为例)

    注:使用Crontab定时执行php脚本文件 1. 安装crontab yum install crontabs 说明:/sbin/service crond start //启动服务/sbin/se ...