一、ansible配置文件解析

  1、/etc/ansible/ansible.cfg配置文件详解

[root@node3 ~]# cat /etc/ansible/ansible.cfg |grep -Ev "^#|^$"
[defaults] #默认配置,对所有应用程序都生效
roles_path = /etc/ansible/roles:/usr/share/ansible/roles
[inventory]
[privilege_escalation] #默认登陆时使用的普通用户,当需要做一些管理配置时就需要将其转换成另外一个拥有特权的管理用户
[paramiko_connection] #python应用程序使用指定库连接各目标主机时使用的选项
[ssh_connection]
[persistent_connection]
[accelerate]
[selinux]
[colors] #显示的颜色
[diff]

  2、那么ansible所用的操作什么时候才会被执行呢?在ansible主机上由管理员手动执行ansible playbook,这样所有的被管控的主机才能测试其是否处于目标状态,如果没有处于目标状态则强制其处于目标状态,如果说我们的目标主机不幸被别人手动修改了怎么办呢?比如有人一不小心给其程序包卸载了,服务停止了,配置文件删除了等,此时我们就只有重新执行一遍我们的playbook才能确保其生效,那么什么时候重新执行呢?

    a、如果有必要的话可以把ansible的 playbook定义成计划任务,每隔半小时执行一次,所以目标主机即便是不行的被别人有意或无意的修改了 ansible的playbook的自动执行都能确保他们处于目标状态。

    b、但是如果我们客户端主机之上期望自己来检查ansible playbook中所定义的角色和自己相关的配置是否匹配又该怎么办呢?在我们ansible2.0后的功能是支持刚刚所说的功能的。在每一个被管控主机端只需要安装上ansible,有一个命令叫ansible-pull,他能够连接至ansible服务器获取与自己相关的配置内容并应用于本地。  

    c、ansible-vcs:我们使用ansible-vcs的方式可以实现ansible的pull机制,那么他是什么呢?你可以理解为他就是ansible对应的各playbook通过某个套接字提供服务的某个配置。对应文件为https://github.com/andrewrothstein/ansible-vcs/blob/master/tasks/main.yml,如果真的用到这个模型的时候应该是用salt或puppet好。

mage Ansible学习3 ansible role实例的更多相关文章

  1. 自动化运维工具ansible学习+使用ansible批量推送公钥到远程主机

    目录: 一.ansible简介 1.1.ansible是什么 1.2.ansible如何工作 1.3.ansible优缺点 1.4.ansible安装方式 1.5.ansible文件简单介绍 1.6. ...

  2. mage Ansible学习2 Playbook

    一.上集回顾 1.运维: 手动 --> 标准化 --> 工具化 --> 自动化 --> 智能化 2.工具化 OS Install:PXE ,Cobbler:Virutaliza ...

  3. mage Ansible学习1 常用模块

    一.Ansible特点 二.Ansible架构 1.core modules实现常用模块 2.Custom modules实现自定义模块 3.Connection Plugins 连接插件,可通过SS ...

  4. Ansible学习实战手记-你想要知道的可能都在这里了

    最近接触了ansible工具,查找了一些资料,也做了一些总结.希望能给刚接触的新手带来一些帮助. 此总结有实际例子,大部分也是从实践中用到才逐一总结的. 当然可能肯定一定会存在一些错误和纰漏,还望大家 ...

  5. ansible 学习与实践

    title: ansible 学习与实践 date: 2016-05-06 16:17:28 tags: --- ansible 学习与实践 一 介绍 ansible是新出现的运维工具是基于Pytho ...

  6. ansible学习笔记三:playbook和roles

    参考博客: Ansible 系列之 Playbooks 剧本 -飞走不可(博客园) linux运维学习之ansible的playbook及roles的使用 - 51CTO博客 nginx 基于uwsg ...

  7. ansible学习笔记一

    ansible学习笔记一 参考博客: ansible学习 - 51CTO博客 一.安装 1 .下载epel源 wget -O /etc/yum.repos.d/epel.repo http://mir ...

  8. python学习之ansible api

    Python API 2.0 从2.0的事情开始更复杂一些,但是你会得到更多离散和可读的类: #!/usr/bin/env python import json from collections im ...

  9. Ansible学习 ad-hoc命令

    Ansible提供两种方式去执行命令,一种是ad-hoc命令,一种是写入Ansible playbook.类似于前者在命令行敲shell,后者是写shell-script脚本,前者解决一些简单的任务, ...

随机推荐

  1. Android--打开指定程序(微博/微信/QQ等)

    Intent intent = new Intent(); ComponentName cmp = new ComponentName("com.sina.weibo"," ...

  2. Xcode中提高效率的快捷键

    依稀记得大神都是使用超多的快捷键来开发的.虽然要成为大神的路很远,不过把下面这些快捷键用熟练,就相当于把宝剑磨的既快又光,相当于有了一件极品的装备,对于接下来的打(升)怪(职)升(加)级(薪)那肯定是 ...

  3. Spring Cloud Alibaba学习笔记(19) - Spring Cloud Gateway 自定义过滤器工厂

    在前文中,我们介绍了Spring Cloud Gateway内置了一系列的内置过滤器工厂,若Spring Cloud Gateway内置的过滤器工厂无法满足我们的业务需求,那么此时就需要自定义自己的过 ...

  4. Unity3D 跨平台原理

    Unity3D的跨平台原理核心在于对指令集CIL(通用中间语言)的应用. 机理 首先需要知道,Unity中的Mono是基于 通用语言架构(Common Language Infrastructure, ...

  5. HTTPDNS

    传统 DNS 缺点 1.域名缓存问题     它可以在本地做一个缓存,也就是说,不是每一个请求,它都会去访问权威 DNS 服务器,而是访问过一次就把结果缓存到自己本地,当其他人来问的时候,直接就返回这 ...

  6. c#连接Access数据库及增删改查作

    access:版本2003(后缀.mdb,新版access可另存为2003兼容版) using: using System;using System.Data;using System.Windows ...

  7. PKPM BIMViewer的使用

    模型的使用,目前有两个方案, 一个是使用全局组件,在单页面的主页面中进行嵌套 <template> <div id="model"> <!-- 这样的 ...

  8. VBA 字符串-相关函数(6-12)

    Mid()函数 Mid()函数返回给定输入字符串中指定数量的字符. 语法 Mid(String,start[,Length]) 参数 String - 必需的参数.输入从中返回指定数量的字符的字符串. ...

  9. 论PM与团队与敏捷开发

    敏捷开发是每个有追求的PM都会去读的书 敏捷开发是很少程序会去读的书 敏捷开发是团体其他人很少会读的书 然而, 据我的 所见, 所闻, 所论 敏捷开发在大家的脑袋里分为很多种版本 既有可以一辩的新鲜思 ...

  10. 苹果手机浏览器的$(document).on(“click”,function(){}) 绑定的事件点击无效

    需要给对应的元素加上 cursor: pointer  的css样式才可以生效点击事件: