1. ansible概述

  • Ansible 是一个 IT 自动化的“配置管理”工具,自动化主要体现在 Ansible 集成了丰富模块,以及强大的功能组件,可以通过一个命令行完成一系列的操作。进而能减少我们重复性的工作,以提高工作的效率。
  • 创始人,Michael DeHaanCobbler Func 的作者)。
  • 2015-10-17,Red Hat宣布收购。

1.1 ansible的功能

  • 批量执行远程命令,可以对N多台主机同时进行命令的执行。
  • 批量配置软件服务,可以进行自动化的方式配置和管理服务。
  • 实现软件开发功能, jumpserver 底层使用 ansible 来实现的自动化管理。
  • 编排高级的IT任务, AnsiblePlaybook 是一门编程语言,可以用来描绘一套 IT 架构。

1.2 ansible的特性

  • 容易学习:无代理,基于SSH实现,不像 saltstack既要学客户端与服务端,还需要学习客户端与服务端中间通讯协议;
  • 操作灵活: Ansible 有较多的模块,提供了丰富的功能、 playbook 则提供类似于编程语言的复杂功能;
  • 简单易用:体现在 Ansible 一个命令可以完成很多事情;
  • 安全可靠:因为 Ansible 使用了 SSH 协议进行通讯,既稳定也安全;
  • 移植性高:可以将写好的 playbook 拷贝至任意机器进行执行;
  • 幂等性:一个任务执行1遍和执行n遍效果一样,不会因为重复执行带来意外情况;

1.3 ansible的架构

  • ANSIBLE PLAYBOOKS:任务剧本(任务集),编排定义Ansible任务集的配置文件,由Ansible顺序依次执行,通常是JSON格式的YAML文件;

  • INVENTORYAnsible管理主机的清单/etc/anaible/hosts;

  • MODULESAnsible执行命令的功能模块,多数为内置核心模块,也可自定义;

  • PLUGINS:模块功能的补充,如连接类型插件、循环插件、变量插件、过滤插件等,该功能不常用;

  • API:供第三方程序调用的应用程序编程接口;

  • Ansible主要操作对象:HOSTS主机,主机组和NETWORKING网络设备;

利用ansible实现管理的方式:

  • Ad-Hoc

    即执行单条的ansible命令,主要用于临时命令使用场景;

  • Ansible-playbook

    主要用于长期规划好的,大型项目的场景,需要有前提的规划;

    执行过程:

    将已有编排好的任务集写入Ansible-Playbook

    通过ansible-playbook命令分拆任务集至逐条ansible命令,按预定规则逐条执行。

1.4 ansible注意事项

  • 执行ansible的主机一般称为主控端,中控,master或堡垒机;
  • 主控端Python版本需要2.6或以上;
  • 被控端Python版本小于2.4需要安装python-simplejson
  • 被控端如开启SELinux需要安装libselinux-python
  • windows不能做为主控端;
  • 建议使用ssh的秘钥验证方式管理被控主机;

ansible系列(1)--ansible基础的更多相关文章

  1. Ansible系列(五):playbook应用和roles自动化批量安装示例

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  2. Ansible系列(七):执行过程分析、异步模式和速度优化

    本文目录:1.1 ansible执行过程分析1.2 ansible并发和异步1.3 ansible的-t选项妙用1.4 优化ansible速度 1.4.1 设置ansible开启ssh长连接 1.4. ...

  3. Ansible系列(四):playbook应用和roles自动化批量安装示例

    Ansible系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html playbook是ansible实现批量自动化最重要的手段.在其中可以使用变 ...

  4. Ansible系列(二):选项和常用模块

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  5. Ansible系列(一):基本配置和使用

    本文目录:1.1 安装Ansible1.2 配置Ansible 1.2.1 环境配置 1.2.2 SSH互信配置 1.2.3 简单测试1.3 inventory Ansible是一种批量.自动部署工具 ...

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

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

  7. Ansible系列(三):YAML语法和playbook写法

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

  8. Ansible系列(六):循环和条件判断

    本文目录:1. 循环 1.1 with_items迭代列表 1.2 with_dict迭代字典项 1.3 with_fileglob迭代文件 1.4 with_lines迭代行 1.5 with_ne ...

  9. Ansible第一章:基础认识--小白博客

    ansible Ansible:Ansible的核心程序Host Lnventory:记录了每一个由Ansible管理的主机信息,信息包括ssh端口,root帐号密码,ip地址等等.可以通过file来 ...

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

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

随机推荐

  1. python爬虫反爬之快速配置免费IP代理池(ProxyPool)

    关注我的公众号[靠谱杨阅读人生]回复ProxyPool可以免费获取网盘链接. 也可自行搜索下载:https://github.com/Python3WebSpider/ProxyPool.git 1. ...

  2. 开启 Keep-Alive 可能会导致http 请求偶发失败

    大家好,我是蓝胖子,说起提高http的传输效率,很多人会开启http的Keep-Alive选项,这会http请求能够复用tcp连接,节省了握手的开销.但开启Keep-Alive真的没有问题吗?我们来细 ...

  3. #Manacher,并查集#洛谷 3279 [SCOI2013]密码

    题目 分析 这些回文长度可以提供相等或者不等的信息, 不等的直接连边强制不等,相等用并查集合并连通块, 但是这样判断是\(O(n^2)\),考虑这些回文长度当用Manacher求时, 所有的回文长度都 ...

  4. JDK 14的新特性:文本块Text Blocks

    目录 举个例子 Indentation编排 Escaping转义 formatted格式化 总结 说起来,Text Blocks是在JDK13中以第一次预览版本引入的.现在在JDK14中是第二次预览版 ...

  5. Go 语言函数、参数和返回值详解

    函数是一组语句,可以在程序中重复使用.函数不会在页面加载时自动执行.函数将通过调用函数来执行. 创建函数 要创建(通常称为声明)一个函数,请执行以下操作: 使用 func 关键字. 指定函数的名称,后 ...

  6. 重新整理 .net core 实践篇—————grpc工具[三十四]

    前言 简单整理一下grpc工具. 正文 工具核心包: Grpc.Tools 这个是项目要引用的包,用来生成cs代码的. dotnet-grpc 这个就是cli,命令行工具 dotnet-grpc 核心 ...

  7. gitlib配置

    第1步:下载Java并安装Java.一般来说下载jdk对应的版本就行. 第2步:配置Java环境变量,具体如下: 1. 新建:变量名:JAVA_HOME:变量值:C:\Program Files\Ja ...

  8. A7-100T的图像处理开发板

    深圳市飞录科技有限公司 一:概述 开发板主控采用Xilinx Artix-7系列FPGA,型号为XC7A100T-2FGG676C,具有100K LUTs, 240个DSP, 芯片集成了LVDS.DD ...

  9. WPF开发随笔收录-查看PDF文件

    一.前言 在项目的开发过程中,涉及到查看服务器生成的pdf报告文件的查看,起初的方案是通过spire.pdf这个库来将pdf文件转换成图片,然后在进行查看.但是经常被吐槽预览不清晰,后面上网发现了一个 ...

  10. JavaScript中的事件模型如何理解?

    一.事件与事件流 javascript中的事件,可以理解就是在HTML文档或者浏览器中发生的一种交互操作,使得网页具备互动性, 常见的有加载事件.鼠标事件.自定义事件等 由于DOM是一个树结构,如果在 ...