ansible介绍

1.ansible前言
1.1运维工具分类(一)
1.1.1OS Provisioning(用来提供操作系统)
PXE:整合集中服务提供了系统的预执行环境,dhcp(udp 67,68),tftp(udp 69),http或者ftp服务
Cobbler:把单个使用的pxe环境做了进一步的抽象,除了可以提供dhcp和解析服务除了dhcp和bind的话,还有一种软件叫dnsmasq,这个软件既可以提供dhcp服务也可以提供域名解析服务。
RedHat Satellite:需购买红帽服务,一般金融类的公司使用的多。
1.1.2OS Config(用来统一配置)
Puppet:在执行任务方面能力相当薄弱
Saltstack
func
1.1.3Task Excute(任务执行)
fabric
Func,也具有这个功能,可以归类到两类工具汇总
Saltatck,这个也可以完成统一配置,也可以任务执行
Deployment(部署应用)
Fabric
Ansible,尚未实现的功能就是os provisioning,据说也在研发中,本身也是轻量级的。不像puppet,chef,func,指挥其它主机配置,称为管理主机,必须有专门的安全通道。基本都是基于ssl
1.2运维工具分类(二)
1.2.1 Agent
puppet,func,salatstac
1.2.2 Agentless
(1)依赖于每个被管理主机需要运行ssh服务
(2)需要账号和密码,尤其是root账号
ansible,fabric,依赖于ssh
2.ansible简介
(1)2012年问世
(2)源代码托管在github上,有很多追随者
(3)2012 top 10优秀开源项目
(4)使用python语言编写
3.ansible特性
(1)不需要专门部署agent,也不需要部署专门的服务器
(2)融合了众多功能,实现多层联动,可以说是将多种工具集于一身
①configuration:cfengine(网络配置),chef(大厨),puppet(木偶,傀儡)
②deployment:capistrano(人名,卡皮斯特拉诺),fabric(组织,构造)
③ad-hoc tasks:func(函数)
④multi-tier (多层)orchestration(管弦乐队):juju,(护符,小玩物)sort of
(3)轻量级
(4)前后没有次序,自己定义动作,依赖关系。只要任何一个任务出错,可以马上停止,来进行修改
(5)因为是基于ssh,所以不会用到ssl,也就不依赖于证书
(6)功能都是模块化的,实现任何功能都是调用模块。而且模块可以使用任何编程语言来编写,包括shell脚本
(7)yaml,使用标签来定义格式,也可以根据角色来进行构建
4.ansible组件
4.1 Host Inventery
(1)文本文件
(2)包含主机的ip地址,掩码,ssh服务监听的地址,端口号,账号密码等,有了这些让远程管理成为可能。
4.2 Core Modules
(1)完成大部分的日常管理任务,但并不是所有任务
(2)例如希望主机1来新建一个账户,ansible并不能指挥host1来做这件事,而是要调用这个模块。
4.3 Custom Modules
自定义模块,可以使用任何编程语言来编写。
4.4 Connection Plugins
(1)与其它主机进行通信,调用的是python里边的Paramiko模块
(2)默认使用ssh协议,基于ssh协议的客户端。
4.5 plugs
(1)Login:进入到日志中
(2)Email:通知相关管理员
(3)Other:自行开发
4.6 Playbooks
(1)使用的是PyYAML和 jinja2这两个模块。将多个任务写入yaml文件中,可以多次调用
(2)在同一主机上操作多次,结果也是相同的。

原文地址:http://blog.51cto.com/zhangdl/2349371

时间: 2024-08-29 16:18:14

ansible介绍的相关文章

ansible介绍+基本操作

1ansible介绍 - Ansible基于Python语言实现,由paramiko和PyYAML两个关键模块构建 - 不需要安装客户端,通过sshd去通信 - 基于模块工作,模块可以由任何语言开发 - 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 - 有提供UI(浏览器图形化)www.ansible.com/tower,收费的 - 官方文档  http://docs.ansible.com/ansible/latest/index.html - ansibl

(1)ansible介绍

随着业务系统的蓬勃发展,苦逼的运维需要管理的机器越来越多,从all in one 到 几十 .成百上千.过万都有可能,往往岗位配置就那么几个,面对无此多的设备管理.配置工作压力爆炸,为了减少重复频繁的的工作内容,运维一般会写很多脚本+定时任务,完成一定程度上的自动化,不过写脚本实现多项功能,对于脚本功底和所花的时间也不秀气,为了能够在基础平台上实现一定的自动化,不得不求助于外界的一些开源技术来弥补这一不足.当下可选择的开源使用的自动化工具非常多,代表的有,saltstack.Puppet.Fab

自动化运维工具ansible介绍(1)

ansible 自动化运维体系分为3个结构 安装操作系统:OS Provision 代表产品:PXE,cobbler 安装特定的文件:OS config 代表产品:puppet 执行特定的操作(命令):deployment 代表产品:ansible ansible总体框架图: ansible简介 1.基于模块工作,ansible只是一个框架 2.借助于插件完成记录日志邮件等功能: 3.连接插件connection plugins:负责和被监控端实现通信: 4.host inventory:指定操

ansible介绍以及安装

ansible是个啥? ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能.ansible是基于模块工作的,本身没有批量部署的能力.真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架.主要包括: (1).连接插件connection plugins:负责和被监控端实现通信: (2).host inventory:

Ansible介绍/安装/入门

Ansible是一个IT自动化工具. 它可以配置系统,部署软件,并编排更先进的IT任务,如持续部署或零停机滚动更新. Ansible的主要目标是简单易用. 它还强调了安全性和可靠性,具有最少的移动部件,用OpenSSH来传输(使用加速socket模式和pull模式作为替代方案) 是一种针对人们的可审计性设计的语言 - 甚至这些人都不熟悉项目. 我们认为简单性与各种规模的环境相关,因此我们为所有类型的繁忙用户设计:开发人员,系统管理员,发布工程师,IT经理以及两者之间的所有人员. 可适用于管理所有

ansible 介绍

Ansible特性: 模块化:调用特定的模块,完成特定任务: 基于Python语言实现,由Paramiko, PyYAML和Jinja2三个关键模块: 部署简单:agentless: 支持自定义模块: 支持playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务.: 连接插件connection plugins:负责和被监控端实现通信: host      inventory:指定操作的主机,是一个配置文件里面定义监控的主机: 各种模块核心模块.command模块.自定义模块:借

Ansible介绍(2)

Ansible: 运维工作:系统安装(物理机.虚拟机)--> 程序包安装.配置.服务启动 --> 批量操作 --> 程序发布 --> 监控 OS Provisioning: 物理机:PXE.Cobbler 虚拟机:Image Templates Configration: puppet (ruby) saltstack (python) chef cfengine Command and Control: fabric.func.capistrano 预发布验正: 新版本的代码先发

一:Ansible介绍及安装

一:Ansible基本概述 1 什么是ansible Ansible是一个自动化统一配置管理工具,自动化主要体现在Ansible集成了丰富模块以及功能组件,可以通过一个命令完成一系列的操作,进而能减少重复性的工作和维护成本,可以提高工作效率. 2 同类型管理工具对比 1.puppet 学习难,安装ruby环境难,没有远程执行功能 2.ansible 轻量级,大规模环境下只通过ssh会很慢,串行的 3.saltstack 一般选择salt会使用C/S结构的模式,salt-master和salt-m

ansible安装及介绍

Ansible使用标准的SSH连接来执行自动化流程,不需要代理 (其他描述可自行搜索) 本文系统: centos 6.5 x64 ip:172.16.162.129 hostname:vm.lansgg.com 测试client主机: centos 6.5 x64 ip : 172.16.162.130 hostname:vm1.lansgg.com #####摘自网友总结#####         一.Ansible介绍 ansible是一款的自动化运维工具,基于Python开发,集合了众多运