Ansible自动化运维之批量主机循环做本地解析 (主机常用变量的使用)

ansible主机常用变量的调用

ansible主机信息的查看

  • ansible有内置模块 (setup模块)专门可以查看主机信息;我们也可以利用这一模块来找寻我们需要的变量
[devops@server1 ansible]$ ansible web -m setup |less  ##分页的方式查看 web对象主机的信息

在这里插入图片描述

变量定义的方式

以主机ip为例

可以在setup这一模块获取到ip信息变量:可以看到多个描述ip信息的变量,都可以用于变量定义
在这里插入图片描述
在这里插入图片描述
主机名变量有多种方式,如下,

主机ip(1):{{ansible_all_ipv4_addresses[-1]}} 
主机ip(2):{{ansible_default_ipv4['address']}} 
主机ip(3):{{ansible_default_ipv4.address}} 
主机ip(4):{{ansible_facts['default_ipv4']['address']}} 

官方推荐 使用"ansible_facts"方式定义
在这里插入图片描述

常用变量的定义

[devops@server1 ansible]$ cat var.j2
主机ip(1):{{ansible_all_ipv4_addresses[-1]}} 
主机ip(2):{{ansible_default_ipv4['address']}} 
主机ip(3):{{ansible_default_ipv4.address}} 
主机ip(4):{{ansible_facts['default_ipv4']['address']}} 
主机名:{{ ansible_facts['hostname'] }}
主机网关:{{ ansible_facts['default_ipv4']['gateway'] }}
主机dns:{{ ansible_facts['dns']['nameservers'][-1] }}
主机空闲内存:{{ ansible_facts['memfree_mb'] }}
系统磁盘空间:{{ansible_facts['devices']['dm-0']['size']}}
系统内核:{{ansible_facts['kernel']}}
系统版本:{{ansible_facts['distribution']}}-{{ansible_facts['distribution_version']}}

在这里插入图片描述

利用变量循环做本地解析

[devops@server1 ansible]$ cat etc.j2
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

{% for host in groups ['test'] %}
{{ hostvars[host]['ansible_facts']['eth0']['ipv4']['address'] }} {{ hostvars[host]['ansible_facts']['hostname'] }}
{% endfor %}
[devops@server1 ansible]$ cat etc.yml
---
- hosts: all
  tasks:
    - name: update hosts
      template:
        src: etc.j2
        dest: /etc/hosts
[devops@server1 ansible]$ 

在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值