Ansible 1.9.0发布 来一起看看这个配置管理新贵
Ansible 1.9.0(版本代号是Dancing In the Street,Ansible每个主要版本代号都是VanHallen乐队的一首曲子)的主要变化是:
- Added kerberos support to winrm connection plugin.
- Tags rehaul: added 'all', 'always', 'untagged' and 'tagged' special tags and normalized tag resolution. Added tag information to --list-tasks and new --list-tags option.
- Privilege Escalation generalization, new 'Become' system and variables now will handle existing and new methods. Sudo and su have been kept for backwards compatibility. New methods pbrun and pfexec in 'alpha' state, planned adding 'runas' for winrm connection
plugin. - ……
更多详情可以参考这里。
配置管理也是一个选择多多的领域,维基百科里洋洋洒洒列了十几二十个,其中Puppet、Chef和Salt以及CFEngine、Vagrant和NixOS大家都已经耳熟能详了。不过后起之秀Ansible的人气更高,GitHub上Star居然超过1万,远远高于Puppet和Chef的三四千,Salt的4953,只有非直接竞争的Vagrant的8000多能望其项背。
在Ansible公司网站上,Twitter、Evernote、NASA、GoPro、Atlassian等知名企业都是他们的用户。
Ansible为什么这么火呢?我们从它的开始说起。
2012年2月,曾在Red Hat开发Cobbler和Func、又在Puppet工作过的Michael DeHaan看到了IT自动化领域的机会:Linux管理员不得不用好几类工具来应付不同的工作——配置管理是Puppet或Chef,部署时要用Fabric或Capistrano,还要Func或mCollective处理其他任务,总体上还是太复杂了。同时,多结点部署却没有工具处理得很好,而在云和大规模互联网基础设施里,这恰恰是最有意思的问题。
一天,DeHaan在自己的沙发上开始用Python开发一个新工具,他的目标是:极为易用,连他自己都很想用;任何人可以在几分钟之内学会并用起来,而且6个月不用,还能很容易地想起来。这就是Ansible。
由于DeHaan在运维圈已经很有名气,Ansible发布后很快流行起来。这期间,Fedora的Seth Vidal(yum作者,2013年7月车祸身亡)的采用和4月High Scalability文章的发表,都非常关键。
这之后,DeHaan还参与了OpenStack的开发,但在用Puppet自动化OpenStack的过程中不断撞墙。这时候,Ansible在GitHub上火起来了。很快他决定成立公司——AnsibleWorks。2013年8月公司获得600万投资。
Ansible只依赖SSH,无需在远程机器上安装代理,上手极为容易。Hacker News上有人称之为(shell scripting)++,很到位。
DeHaan后来这样总结Ansible的成功原因:
关键的想法是,开发一个好的自动化系统,能认识计算机是一组而不只是一个个分开的机器,也就是所谓“多层编排”。建模过程与建模状态同样重要。不按传统配置管理依赖定制代理架构的思路,避免了证书交换,以及反向解析DNS和NTP的问题。默认可插拔,人人都可以很容易地贡献,因此获得了广泛的参与和采用。保持简单(用YAML等),制定计划并坚持,然后乐观其成。
Ansible 1.9.0的版本代号是Dancing In the Street,Ansible每个主要版本代号都是Van Halen乐队的一首曲子。对了,DeHaan在今年1月已经离开Ansible公司也不再太多参与Ansible社区,而是加盟DataStax(Cassandra背后的公司)任工程经理了。他告别文章的标题Happy
Trails也是Van Halen的歌曲名。不过他在Hacker News上仍然活跃。
今天,在配置管理方面,Ansible和Salt是双星闪耀。那它们之间又该如何选择呢?
Hacker News上有很多相关讨论。其中两段比较说明问题:
Ansible要简单得多,本质上混合了声明式和命令式,在大型集群上性能可能差一些。Salt设置起来要重得多,有代理和服务器,有远程机器的元数据,而且很多术语和概念都是自己的一套。在小一些的环境(20-50台机器)里Ansible更合适。
SaltStack感觉功能更全、更强大。Ansible没有依赖图,有时候很难模块化。我自己是这么用的:Ansible启动Salt,然后让Salt干脏活累活。
小米运维博客有简明的介绍。
Ansible 1.9.0发布 来一起看看这个配置管理新贵的更多相关文章
- Visual Studio Code 1.0发布,支持中文在内9种语言
Visual Studio Code 1.0发布,支持中文在内的9种语言:Simplified Chinese, Traditional Chinese, French, German, Italia ...
- Apache Flume 1.7.0 发布,日志服务器
Apache Flume 1.7.0 发布了,Flume 是一个分布式.可靠和高可用的服务,用于收集.聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型.这是一个可靠.容错的服务. 本次更 ...
- Percona Server 5.6.33-79.0 发布
Percona Server 5.6.33-79.0 发布了,该版本基于 MySQL 5.6.33,包含了所有的 bug 修复,是Percona Server 5.6 系列中的正式版本.该版本主要是修 ...
- Rubinius 2.0 发布,Ruby 虚拟机
Rubinius 2.0 发布了,官方发行说明请看这里. Rubinius是一个运行Ruby程序的虚拟机,其带有Ruby的核心库. Rubinius的设计决定了其调试功能的强大,使得在运行时常规的Ru ...
- Restful.Data v2.0发布,谢谢你们的支持和鼓励
v1.0发布后,承蒙各位博友们的热心关注,也给我不少意见和建议,在此我真诚的感谢 @冰麟轻武 等朋友,你们的支持和鼓励,是这个开源项目最大的推动力. v2.0在除了细枝末节外,在功能上主要做了一下更新 ...
- 网页动物园2.0发布,经过几个月的努力,采用JAVA编写!
网页动物园2.0发布,经过几个月的努力,采用JAVA编写! 网页动物园2.0 正式发布!游戏发布 游戏名称: 网页动物园插件 游戏来源: 原创插件 适用版本: Discuz! X1.5 - X3.5 ...
- Redisson-Parent 2.5.0 和 3.0.0 发布
Redisson-Parent 2.5.0 和 3.0.0 发布了,Redisson 是基于 Redis 服务之上构建的分布式.可伸缩的 Java 数据结构,高级的 Redis 客户端. Rediss ...
- Rsync 3.1.0 发布,文件同步工具
文件同步工具Rsync 3.1.0发布.2013-09-29 上一个版本还是2011-09-23的3.0.9 过了2年多.Rsync基本是Linux上文件同步的标准了,也可以和inotify配合做实时 ...
- EasyCriteria 3.0 发布
EasyCriteria 3.0 发布了,这是一个全新的版本,进行了大量的重构.官方发行说明请看:http://uaihebert.com/?p=1898 EasyCriteria 是一个轻量级的框架 ...
随机推荐
- 对于近阶段公司代码 review 小结
来新公司,给公司的SDK review了一下.发现了不少小问题,在此总结一下. (我下面说明问题可能是很简单,但是搞清楚某些问题还是花了些时间的,大家引以为戒吧) 先谈谈处理的问题: 1.某天QA说有 ...
- 伪类 :after 清除浮动的原理和方法
浮动元素容器的clearing问题1. 问题的由来有这样一种情形:在一个容器(container)中,有两个浮动的子元素.<div> <div style=" ...
- 【Thinking in Java, 4e】初始化与清理
[用构造器确保初始化] [方法重载] 涉及基本类型的重载 1.如果传入的数据类型小于方法中声明的形式参数类型:实际数据类型会被提升. 2.如果传入的数据类型大于方法中声明的形式参数类型:编译器报错,应 ...
- golang中文字符编码转换
golang 有很多需要将中文转成utf8的 网上搜到一个直接转的,记录下,备用 package main import "golang.org/x/text/encoding/simpli ...
- 20145312 《Java程序设计》第十周学习总结
20145312 <Java程序设计>第十周学习总结 学习笔记 Chapter 17反射与类加载器 17.1 运用反射 .class文档反应了类基本信息,因而从Class等API取得类信息 ...
- 20145314郑凯杰 《Java程序设计》实验二 实验报告
20145314郑凯杰 <Java程序设计>实验二 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...
- 20145324 《Java程序设计》第9周学习总结
20145324 <Java程序设计>第9周学习总结 教材学习内容总结 第十六章 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API中的接口会有数据库厂商操作 ...
- windchill系统安装大概步骤
1.安装VMware Workstation虚拟机 2.win7的64位操作系统(为什么不用32位?因为32位的内存最大只能设置4G) 3.安装Oracle数据库(映射iso文件[上面栏的虚拟机-&g ...
- 使用maven命令进行打包,部署项目到远程仓库
如果要部署项目到远程仓库, 方法一:配置pom.xml: <distributionManagement> <repository> <id>releases< ...
- UVa 10883 超级平均数(二项式系数+对数计算)
https://vjudge.net/problem/UVA-10883 题意: 给出n个数,每相邻两个数求平均数,依次类推,最后得到1个数,求该数. 思路: 演算一下可以发现最后各个数的系数就是二项 ...