Ansible-playbook如何获取ip?
公司的模块都新加了加密算法,现在就是需要把约100台机器的zk 进行调整,目前在 ansible控制机上已经写好了新的zk ip,然后计划是把这个新zk ip的文件下发到那100台机器里,然后这100台机器的文件中把他们各自的ip和hostname添加到这个文件上。
于是就写了一个ansible-playbook:
---
- hosts: all
tasks:
- name: 将原有的hosts文件备份
shell: mv /etc/hosts /etc/hosts_bak
- name: 将ansible端的hosts复制到各自机器上
copy: src=/root/hosts dest=/etc/ owner=root group=root mode=0544
- name: 在新的hosts文件后面追加各自机器内网ip和hostname
lineinfile: dest=/etc/hosts line="`ansible_all_ipv4_addresses` `ansible_hostname`"
但是写完之后执行出来,却是这样的效果:
而我想要的是这样的效果:
遇到这种情况怎么办?
后来调整了一下,变量用 IP: "{{ ansible_eth0['ipv4']['address'] }}",而不是`ansible_all_ipv4_addresses`。
修改了之后的playbook 如下:
---
- hosts: all
vars:
IP: "{{ ansible_eth0['ipv4']['address'] }}"
tasks:
- name: 将原有的hosts文件备份
shell: mv /etc/hosts /etc/hosts_bak
- name: 将ansible端的hosts复制到各自机器上
copy: src=/root/hosts dest=/etc/ owner=root group=root mode=0644
- name: 在新的hosts文件后面追加各自机器内网ip和hostname
lineinfile: dest=/etc/hosts line="`IP` `ansible_hostname`"
这样就达到目的了。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
MariaDB10.1.22 Spider3.3腾讯补丁版分库分表下载
鉴于腾讯Tspider未开源,我拿到了原作者Kentoku Shiba的Spider3.3源代码(集成了腾讯的补丁,性能有所加强),并且编译到MariaDB 10.1.22 GA版本里,二进制下载地址http://www.liyanlan.com/download/mariadb/spider/mariadb-10.1.22-spider-3.3.11-linux-x86_64.tgz 注:新版本的参数为110个,比之前的3.2.37RC公测版多了9个参数。 调优参数: spider spider_multi_split_read = 1spider_low_mem_read = 0spider_conn_recycle_mode = 1spider_bgs_mode = 1spider_bka_mode = 2spider_quick_mode = 3spider_casual_read = 1optimizer_switch = ‘engine_condition_pushdown=on,mrr=on,mrr_sort_keys=on’spider_block_size = 429...
- 下一篇
十、syslog日志与loganalyzer日志管理
10.1、rsyslog简介 syslog是一个历史悠久的日志系统。几乎所有的UNIX和Linux操作系统都采用syslog进行系统日志的管理和配置。Linux系统内核和许多程序会产生各种错误信息、警告信息和其他的提示信息。syslog可以根据信息的来源以及信息的重要程度将信息保存到不同的日志文件中。在默认的syslog配置下,日志文件通常都保存在/var/log目录下,在Centos6中,syslog的守护进程为rsyslog,系统启动时,默认会自动运行rsyslog守护进程。 在syslog中定义了一些日志文件,这些日志文件的位置以及说明: /var/log/dmesg 记录init进程启动之前的信息/sbin/init 进程启动后日志需要滚动(日志切割)/var/log/maillog邮件系统产生的日志信息/var/log/secure 安全系统产生的日志信息/var/log/messages系统标准错误日志信息;非内核产生引导信息;各子系统产生的信息 10.2、rsyslog配置 syslog的配置文件为/etc/rsyslog.conf,在该文件中指定了rsyslog...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)