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发布 来一起看看这个配置管理新贵的更多相关文章

  1. Visual Studio Code 1.0发布,支持中文在内9种语言

    Visual Studio Code 1.0发布,支持中文在内的9种语言:Simplified Chinese, Traditional Chinese, French, German, Italia ...

  2. Apache Flume 1.7.0 发布,日志服务器

    Apache Flume 1.7.0 发布了,Flume 是一个分布式.可靠和高可用的服务,用于收集.聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型.这是一个可靠.容错的服务. 本次更 ...

  3. Percona Server 5.6.33-79.0 发布

    Percona Server 5.6.33-79.0 发布了,该版本基于 MySQL 5.6.33,包含了所有的 bug 修复,是Percona Server 5.6 系列中的正式版本.该版本主要是修 ...

  4. Rubinius 2.0 发布,Ruby 虚拟机

    Rubinius 2.0 发布了,官方发行说明请看这里. Rubinius是一个运行Ruby程序的虚拟机,其带有Ruby的核心库. Rubinius的设计决定了其调试功能的强大,使得在运行时常规的Ru ...

  5. Restful.Data v2.0发布,谢谢你们的支持和鼓励

    v1.0发布后,承蒙各位博友们的热心关注,也给我不少意见和建议,在此我真诚的感谢 @冰麟轻武 等朋友,你们的支持和鼓励,是这个开源项目最大的推动力. v2.0在除了细枝末节外,在功能上主要做了一下更新 ...

  6. 网页动物园2.0发布,经过几个月的努力,采用JAVA编写!

    网页动物园2.0发布,经过几个月的努力,采用JAVA编写! 网页动物园2.0 正式发布!游戏发布 游戏名称: 网页动物园插件 游戏来源: 原创插件 适用版本: Discuz! X1.5 - X3.5 ...

  7. Redisson-Parent 2.5.0 和 3.0.0 发布

    Redisson-Parent 2.5.0 和 3.0.0 发布了,Redisson 是基于 Redis 服务之上构建的分布式.可伸缩的 Java 数据结构,高级的 Redis 客户端. Rediss ...

  8. Rsync 3.1.0 发布,文件同步工具

    文件同步工具Rsync 3.1.0发布.2013-09-29 上一个版本还是2011-09-23的3.0.9 过了2年多.Rsync基本是Linux上文件同步的标准了,也可以和inotify配合做实时 ...

  9. EasyCriteria 3.0 发布

    EasyCriteria 3.0 发布了,这是一个全新的版本,进行了大量的重构.官方发行说明请看:http://uaihebert.com/?p=1898 EasyCriteria 是一个轻量级的框架 ...

随机推荐

  1. git 常用的撤销操作

    git 开发时的使用流程,从同事那里学习的, 第一步,先建立一个新的分支,可以在GITLAB或通过命令git checkout -b newbranch 或通过IDE插件 第二步,让项目切换到该分支, ...

  2. How can For each...

    Answer:   I understand the IEnumerator/IEnumerable methods and properties and also how they are inte ...

  3. 51nod 1391 01串(hash+DP)

    题目链接题意:给定一个01串S,求出它的一个尽可能长的子串S[i..j],满足存在一个位置i<=x <=j, S[i..x]中0比1多,而S[x + 1..j]中1比0多.求满足条件的最长 ...

  4. Oracle中的substr()函数详解案例

    1)substr函数格式   (俗称:字符截取函数) 格式1: substr(string string, int a, int b); 格式2:substr(string string, int a ...

  5. servlet的总结

    tomcat在启动的时候 加载webapp下面的web.xml,加载里面定义的servlet. web.xml文件有两部分:servlet类定义和servlet映射定义每个被载入的servlet类都有 ...

  6. BeanFactory与ApplicationContext

    本文总结自:https://www.cnblogs.com/xiaoxi/p/5846416.html 我们常说的Spring容器(即Spring Ioc 容器),是如何创建bean的? BeanFa ...

  7. Oracle查询一个表的数据插入到另一个表

    1. 新增一个表,通过另一个表的结构和数据 create table XTHAME.tab1 as select * from DSKNOW.COMBDVERSION 2. 如果表存在: insert ...

  8. 拓扑排序(dfs)

    int c[N];//c[u]=0表示从来没有访问过:c[u]=1表示已经访问过,并且还递归访问过它的所有子:c[u]=-1表示正在访问. int topo[N],t; int G[N][N]; bo ...

  9. Windows下如何配置apache虚拟主机

    其实apache配置虚拟主机说简单也简单,但是就是就有几个坑,要是稍不注意就掉坑里了. --小树前言 坑三连 没遇到这三个坑,就配置得很顺畅了 用自己指定的域名进入不了任何页面. 只能进apache的 ...

  10. PyTorch源码解读之torch.utils.data.DataLoader(转)

    原文链接 https://blog.csdn.net/u014380165/article/details/79058479 写得特别好!最近正好在学习pytorch,学习一下! PyTorch中数据 ...