博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ansible之setup、条件判断、tags、循环handlers
阅读量:5046 次
发布时间:2019-06-12

本文共 2215 字,大约阅读时间需要 7 分钟。

一、setup

ansible all -m setup 查询出所有的信息

过滤:ansible all -m setup -a "filter=ansible_os_family"

1 ansible_all_ipv4_addresses # ipv4的所有地址 2 ansible_all_ipv6_addresses # ipv6的所有地址 3 ansible_date_time # 获取到控制节点时间 4 ansible_default_ipv4 # 默认的ipv4地址 5 ansible_distribution # 系统 6 ansible_distribution_major_version # 系统的大版本 7 ansible_distribution_version # 系统的版本号 8 ansible_domain #系统所在的域 9 ansible_env #系统的环境变量10 ansible_hostname #系统的主机名11 ansible_fqdn #系统的全名12 ansible_machine #系统的架构13 ansible_memory_mb #系统的内存信息14 ansible_os_family # 系统的家族15 ansible_pkg_mgr # 系统的包管理工具16 ansible_processor_cores #系统的cpu的核数(每颗)17 ansible_processor_count #系统cpu的颗数18 ansible_processor_vcpus #系统cpu的总个数=cpu的颗数*CPU的核数19 ansible_python # 系统上的python20 ansible cache -m setup -a 'filter=*processor*' # 用来搜索
View Code

 

二、条件判断

1 - hosts: db2   remote_user: root3   tasks:4   - name: createfile5     copy: content="大弦嘈嘈如急雨" dest=/tmp/a.txt6     when: a=="3"7   - name: cratefile8     copy: content="小弦切切如私语" dest=/tmp/a.txt9     when: a=="4"

 

三、tags 可以指定执行部分任务

1 - hosts: web 2   tasks: 3   - name: installnginx 4     yum: name=nginx 5   - name: copyfile 6     copy: src=/etc/nginx/nginx.conf dest=/etc/nginx/nginx.conf 7     tags: copyfile 8   - name: start 9     service: name=nginx state=started10

 

四、循环 with_items

1 - hosts: web2   tasks:3   - name: crateuser4     user: name={
{item}}5 with_items:6 - user17 - user28 - user3

嵌套循环

1 - hosts: web 2   tasks: 3   - name: crategroup 4     group: name={
{item}} 5 with_items: 6 - wulaoshi30 7 - wulaoshi31 8 - wulaoshi32 9 - name: createuser10 user: name={
{item.name}} group={
{item.group}} # 循环每个字典取值11 with_items:12 - {
'name':alex40,'group':wulaoshi30} 13 - {
'name':alex41,'group':wulaoshi31}14 - {
'name':alex42,'group':wulaoshi32}

 

template模块
template模块和copy模块的区别

  • copy模块不替代参数

  • template模块替代参数

1 - hosts: web2   tasks:3   - name: installredis4     yum: name=redis5   - name: copyfile6     template: src=redis.conf dest=/etc/redis.conf7   - name: start8     service: name=redis state=started

在本机的redis的配置文件里bind 的ip随被控管机改变而改变

bind {

{ ansible_default_ipv4.address }}

 

转载于:https://www.cnblogs.com/liaopeng123/p/10414510.html

你可能感兴趣的文章
总结一下web前端常用的各类网站(不全,后期有更新)
查看>>
mysql使用笔记
查看>>
chrome 调试
查看>>
Import .bak file to a database in SQL server
查看>>
HTTP协议基本知识
查看>>
Ruby入门——哈希表
查看>>
noip2016 天天爱跑步
查看>>
[NOI2012]随机数生成器
查看>>
Ubuntu Linux IP configuration
查看>>
Java 变参函数的实现
查看>>
day12_框架一tools.py代码
查看>>
死磕 java同步系列之Semaphore源码解析
查看>>
好代码是什么样的?
查看>>
网页登入验证码的实现(java&html)
查看>>
sed -i 命令替换字符串时,软链接被破坏
查看>>
Python奇技
查看>>
算法-求两个有序数组两两相加的值最小的K个数
查看>>
net.sf.json 迄今 时刻 格式 办法
查看>>
奇怪++操作
查看>>
Oracle建立表空间和用户
查看>>