001. Ansible简介

一 简介

Ansible是一款极其简单的自动化运维工具, 基于Python开发, 集合了众多运维工具(puppet, cfengine, chef, func, fabric)的优点。 实现了批量系统配置, 批量程序部署, 批量运行命令等功能。

Ansible是基于模块工作的, 本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块, Ansible只是提供一种框架。主要包括:

  1. Play books:任务剧本(任务集),编排定义Ansible任务集的配置文件,由Ansible依次执行多个任务,通常是JSON格式的YML文件;
  2. Host inventory: Ansible管理主机的清单,指定操作的主机, 是一个配置文件里面定义监控的主机;
  3. Modules:各种模块核心模块, command模块等,也包括自定义模块;
  4. Connection plugins: 负责和被监控端实现通信;
  5. Plugins:模块功能的补充,如连接类型插件、循环插件、变量插件等,可借助于插件完成更丰富的功能。

二 工作机制

  1. 用户使用Ansible或Playbook,在服务器中断输入Ansible的Ad-Hoc命令集或Playbook;
  2. Ansible遵循预先编排的规则将Playbooks逐条拆解为Play;
  3. Play组织成Ansible可识别的任务(Task);
  4. Task会调用任务所涉及的所有模块(Module)和插件(Plugin);
  5. 读取Inventroy中定义的主机列表;
  6. 通过SSH认证(默认)将任务集以临时文件或命令的形式传输到远程客户端执行并返回执行结果。

三 特性

  1. no agents: 不需要在被管控主机上安装任何客户端,只需SSH、Python即可,建议Python版本为2.6.6以上;
  2. no server: 无服务器端, 使用时直接运行命令即可;
  3. modules in any languages: 基于模块工作, 丰富的内置模块,可使用任意语言开发模块;
  4. yaml, not code: 使用yaml语言定制剧本playbook,易于管理,API简单明了;
  5. ssh by default: 基于SSH工作,整个过程简单、方便、安全,建议使用公钥方式认证;
  6. strong multi-tier solution: 可实现多级指挥。

四 优点

(1).轻量级, 无需在客户端安装agent, 更新时只需在操作机上进行一次更新即可;

(2).批量任务执行可以写成脚本, 而且不用分发到远程就可以执行;

(3).使用python编写, 维护更简单, ruby语法过于复杂;

(4).支持sudo。

五 应用场景

5.1 操作角度划分

文件传输:文件的本地传输和异地传输,所有文件的空间形态、时间形态变化均构成文件传输类操作;

命令执行:终端所有操作对系统来说都是指令的组成,对运维操作的用户行为来说,除文件传输以外的其他操作均可称为命令操作。

5.2 工作类型划分

  1. 应用部署
  2. 配置管理
  3. 任务流编排

原文地址:https://www.cnblogs.com/itzgr/p/9898623.html

时间: 2024-07-31 05:06:16

001. Ansible简介的相关文章

Ansible简介

Ansible简介Ansible是自动化运维工具框架(内含模块插件), 不需要安装客户端软件,通过SSH协议进行通信: 基于模块工作,模块可以由多个语言开发: 不仅支持命令行使用,也可以支持编写yaml格式的playbook剧本,易于编写和阅读: 安装十分简单,CentOS一般通过配置yum源直接安装: 提供UI界面,www.ansible.com/tower.需要收费 Ansible一辈RedHat公司收购,在github上是一款非常受欢迎的开源软件: 原文地址:http://blog.51c

001.Redis简介及安装

原文:001.Redis简介及安装 一 Redis简介 1.1 Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key-value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用. Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储. Redis支持数据的备份,即master-sla

001 Windows 简介

001 Windows简介 #Windows 简介 Windows版本历史 16位图形用户界面 16位和32位混合操作系统 64位操作系统 移动设备操作系统 NT架构 #Windows与编程语言 Windows API SDK&API&MFC SDK (SoftWare Development Kit) API (Application Programming Interface) MFC (Microsoft Foundation Classes) Windows API分类 基础服务

Ansible简介与实验

一.简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能. ansible是基于模块工作的,本身没有批量部署的能力.真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架. 主要特点: 模块化,调用特定的模块,完成特定的任务,基于Python语言实现,易于扩展: 部署简单,agentless,无需客户端安装软件,

1. ansible简介

特性: No agents:不需要在被管控主机上安装任意客户端 No server:无服务器端,使用时直接运行命令即可 Modules in any languages:基于模块工作,可使用任意语言开发模块 YAML,not code:使用yaml语言定制剧本playbook SSH by default:基于SSH工作 Strong multi-tier solution:可实现多级指挥   基本架构:   命令格式: 1234567891011 #常用格式ansible <host-patt

001.NFS简介

一 简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法. NFS 的基本原则是"容许不同的客户端及服务端通过一组RPC分享相同的文件系统",它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享. NFS在文件传

001.iSCSI简介

一 iSCSI简介 Internet小型计算机系统接口是一个机遇TCP/IP的协议,用于通过IP网络仿真SCSI高性能本地存储总线,从而为远程存储设备提供数据传输和管理.作为SAN协议,iSCSI跨本地和广域网扩展SAN,通过分布式服务器和数组提供独立于位置的数据存储检索. 二 iSCSI优点 使用SAN摆脱了本地布线限制,促进了本地或远程数据中心的存储整合: iSCSI结构是逻辑性的,仅使用软件配置来进行新的存储分配,无需其他电缆和物理磁盘: iSCSI使用多个远程数据中心简化了数据复制.迁移

001.etcd简介及单节点使用

一 etcd简介 1.1 概述 etcd 是 CoreOS 团队发起的开源项目,是一个管理配置信息和服务发现(service discovery)的项目,它的目标是构建一个高可用的分布式键值(key-value)数据库,基于 Go 语言实现. 特点: 简单:支持 REST 风格的 HTTP+JSON API 安全:支持 HTTPS 方式的访问 快速:支持并发 1k/s 的写操作 可靠:支持分布式结构,基于 Raft 的一致性算法 延伸:ZooKeeper 是一套分布式系统中进行同步和一致性管理的

001.HAProxy简介

一 HAProxy简介 HAProxy是可提供高可用性.负载均衡以及基于TCP(从而可以反向代理mysql等应用)和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy非常适用于并发大(并发达1w以上)web站点,这些站点通常又需要会话保持或七层处理.HAProxy的运行模式使得它可以很简单安全的整合至当前的架构中,同时可以保护web服务器不被暴露到网络上. HAProxy实现了一种事件驱动.单一进程模型,此模型支持非常大的并发连接数.多进程或多线程模型受内存限