zoukankan      html  css  js  c++  java
  • ansible

    ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。
     
     
    ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:
    (1)、连接插件connection plugins:负责和被监控端实现通信;
    (2)、host inventory:指定操作的主机,是一个配置文件里面定义监控的主机;
    (3)、各种模块核心模块、command模块、自定义模块;
    (4)、借助于插件完成记录日志邮件等功能;
    (5)、playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。

    ansible特点

    部署简单, 只需要在控制主机上部署ansible环境,被控制端上只要求安装ssh和python 2.5以上版本,这个对于类unix系统来说相当与无需配置.

    1. no angents: 被管控节点无需安装agent
    2. no server: 无服务端,使用是直接调用命名
    3. modules in any languages: 基于模块工作, 可以使用任意语言开发模块
    4. 易读的语法: 基于yaml语法编写playbook
    5. 基于推送模式: 不同于puppet的拉取模式,直接由调用者控制变更在服务器上发生的时间
    6. 模块是幂等性的:定义的任务已存在则不会做任何事情,意味着在同一台服务器上多次执行同一个playbook是安全的

    ansible程序目录结构:

    • 配置文件: /etc/ansible/
    • 执行文件目录: /usr/bin/
    • lib依赖库: /usr/lib/python2.7/site-packages/ansible/
    • help文件: /usr/lib/python2.7/site-packages/ansible

    ansible任务执行

     ansible任务执行模式

    Ansible任务执行模式分为以下两种:

    • ad-hoc模式(点对点模块)
      使用单个模块,支持批量执行单条命令,相当与在bash中执行一句shell命令
    • playbook模式(剧本模式)
      ansible主要的管理方式,通过多个task的集合完成一类功能,可以理解为多个ad-hoc的配置文件

    2.2 ansible执行流程:

     
     
  • 相关阅读:
    SPOJ GSS4 Can you answer these queries IV ——树状数组 并查集
    SPOJ GSS3 Can you answer these queries III ——线段树
    SPOJ GSS2 Can you answer these queries II ——线段树
    SPOJ GSS1 Can you answer these queries I ——线段树
    BZOJ 2178 圆的面积并 ——Simpson积分
    SPOJ CIRU The area of the union of circles ——Simpson积分
    HDU 1724 Ellipse ——Simpson积分
    HDU 1071 The area ——微积分
    HDU 4609 3-idiots ——FFT
    BZOJ 2194 快速傅立叶之二 ——FFT
  • 原文地址:https://www.cnblogs.com/wyglog/p/12562990.html
Copyright © 2011-2022 走看看