
Why Red Hat Acquired Ansible - anacleto
http://www.redhat.com/en/about/blog/why-red-hat-acquired-ansible
======
shadeless
I hope that mpdehaan2 is getting a good chunk from that sale, he really
deserved it. He not only made it and built a community but he was very active
in the discussions on HN, blog & Gist comments etc.

Even though I'm looking forward to using NixOps/GuixOps, I'm a very happy
Ansible user both in personal projects and in the company I'm working for.

~~~
tomaac
I really would like to hear his opinion about this. Is this how he imagined
Ansible when he started this project?

~~~
mpdehaan2
Hi! Thanks for the nice words, folks!

Wasn't thinking of saying much but I'll chime in just once.

Was it what I expected when I started? nah, I remember when I thought having a
IRC channel with 30 people was crazy-insanely huge, it took off at completely
unexpected rates. Just to get some early looks at it from Seth Vidal and
Jeremy Katz (and a commit or two!) was awesome enough for me at the time. It
wasn't engineered with the idea that it would be a business at that point at
all.

BTW, extremly huge thanks for this really should also go to all the
contributors out there and people that helped spread ansible around, that was
completely unpredictable and a lot of fun watching it take off, especially
stuff like seeing so many AM tweets in Japanese and then trying to translate
them, or seeing someone automate random vending machines or electronics
projects. This got built trying to help people like you, so a huge thanks for
all of the input and help!

Anyway, those words mean a lot, and I greatly appreciate them.

~~~
smprk
Congratulations, and thanks for making a simple automation tool that I have
come to love!

You guys definitely were very active in the community. Enough for the likes of
me to also become an active tweet-er. I was pretty excited when @tybstar (Tim
Gerla), Ansible's co-founder, chimed in once. I hope you guys share some chunk
of the sale with him too! ;)

------
zimbatm
The biggest question is: is Red Hat going to release Tower as open-source ?

Red Hat is an open-source company and I would expect them to do so but they
didn't even mention Tower.

EDIT: From their FAQ[0] it's not clear either. It seems to be pointing towards
no.

> Red Hat plans to continue to develop, sell and support Ansible and Ansible
> Tower.

[0]: [https://www.redhat.com/en/about/blog/faq-red-hat-acquires-
an...](https://www.redhat.com/en/about/blog/faq-red-hat-acquires-ansible)

~~~
eLobato
Red Hatter here. We have open sourced all acquisitions, I don't know what
exactly leads you to think it won't be open sourced, the FAQ just states
there'll be a timeline, as it was the case previously for ManageIQ
(manageiq.org)

------
LordKano
You mean, it's not to take the lead in the fight against the Formics?

------
geerlingguy
Also see the FAQ, which answers (more or less) many of the questions that have
popped up in these threads: [http://www.redhat.com/en/about/blog/faq-red-hat-
acquires-ans...](http://www.redhat.com/en/about/blog/faq-red-hat-acquires-
ansible)

------
pm90
I feel somewhat pleased that they mention the "Hacker News" community :)

~~~
geerlingguy
Specifically: [http://dberkholz-
media.redmonk.com/dberkholz/files/2015/04/h...](http://dberkholz-
media.redmonk.com/dberkholz/files/2015/04/hacker_news_all.png)

(Graph of mentions of popular CM/orchestration tools on HN.)

------
scardine
The project name is also excellent, Ender's Game is among my favorite books.

~~~
100k
Orson Scott Card borrowed the name from Ursula K, LeGuin. You should check out
The Dispossesed (about the inventor of the ansible). It's a great book.

------
agentgt
I have a feeling the reasons listed in that posting hardly even come close to
the primary real reasons why the acquisition happened.

What the real reasons are I'm not sure entirely but I'm fairly certain its
some what Red Hat getting some talented people back and Red Hat giving money
back to its friends and family (much of Ansible's talent formerly worked at
Red Hat).

------
elktea
I like and use Ansible, but unfortunately I have always found the quality of
the 3rd party software playbook (both on Galaxy and elsewhere) is not nearly
as professional or comprehensive as equivalent Puppet or Chef ones. Hopefully
people invest more time into this side of things now Red Hat is involved.

------
miles932
Congrats to the _unmitigated badasses_ on the Ansible team! You know who you
be!

~~~
afandian
I went to the Ansible conference in London last year. We were looking into
whether or not to use Ansible, thinking that going to the conference would
shed some light.

To be honest, we were put off by the (I use this word advisedly) fanboyism.
There was a huge amount of "Ansible is amazing!" and (in my opinion) not much
actual substance. It felt like there was lots of back-slapping.

Toward the end of the day there was a presentation which presented features
(possibly new ones) demonstrating how they were contorting (presumably
declarative) YAML into a new programming language with control structures (and
templating, my memory is hazy). It felt like "our deployment scripts were
over-complicated so we took out the complexity and put it in a declarative
non-executable format. Then we had to put the features back because we needed
them after all, except now it's in new less powerful language".

Anyway, the conference was informative, but probably not in the way intended.

That said, if you can give some substantial reasons why to use Ansible, it
would be great to hear them.

~~~
mjolk
>That said, if you can give some substantial reasons why to use Ansible, it
would be great to hear them.

I'm using Ansible, but with a handful of powerful plugins that I developed and
haven't contributed back (sorry, but I don't have the time to do support for
that ugly-ish code).

I use it because:

\- Having an agentless setup is ideal (anyone that tells you that Chef/Puppet
agents have never cost him/her time is either a new user or trying to sell you
something)

\- The YAML, then Jinja2 parse can be annoying, but it's ultimately not that
painful once you're used to it

\- N-number of SSH Bastion/Ansible-runners fed from a git branch scales better
than Chef Server

\- I'm a Python developer and I've found it reasonably easy to "monkey-patch"
in behaviors that I prefer/need

\- Ansible doesn't force a workflow on you, so you can just focus on "getting
shit done"

\- I plan on taking the YAML that my team generates and feeding it into a
different system and the fact that it's in a popular format makes that easier
than the alternatives

I had the same experience as you after attending an AnsibleFest and dialed-
back on my time spent supporting users in IRC and contributing to the project
after. I expected a collection of hackers and instead came away disheartened
by the number of sales or marketing bros/chicks and how corporate-smarmy it
all felt.

~~~
eropple
_> \- Having an agentless setup is ideal (anyone that tells you that
Chef/Puppet agents have never cost him/her time is either a new user or trying
to sell you something)_

An agentless setup is ideal iff you have an effective method of service
discovery and strongly consistent data storage. Most of my clients don't, and
chef-server is the closest thing. My own systems use chef-zero, which is
agentless; since they're generally immutable servers, this just gets dropped
into AWS userdata, much as I do when I use Ansible, for a one-shot
configuration and I'm off to the races.

 _> \- The YAML, then Jinja2 parse can be annoying, but it's ultimately not
that painful once you're used to it_

It's significantly worse than "if (var) { block }", though, yeah? I mean, yes,
it works, but I think that having a programming language with conventionally
understood data structures and functions, to say nothing of a parsed
configuration spec that you can do transforms over, is a decent bit more
useful in the general case. Faster to write, easier to read, and, over the
long term, I tend to think it's easier to maintain.

I mean--I'm a programmer. Programming things is easier for me than maintaining
YAML files. =)

 _> \- I'm a Python developer and I've found it reasonably easy to "monkey-
patch" in behaviors that I prefer/need_

This is really the big plus to Ansible that I can see; if you're a Python
person and not a Ruby person, I can see some value here. (I am a Ruby person.)

 _> \- Ansible doesn't force a workflow on you, so you can just focus on
"getting shit done"_

Chef Zero here too (though Berks tends to be helpful anyway). Running chef-
zero over `ssh` is a pretty fair approximation of what most folks use Ansible
for.

All that said, I'm not saying you shouldn't use Ansible, and I dig that you
have some perspective about it. Just offering a different point of view. =)

~~~
mjolk
>An agentless setup is ideal iff you have an effective method of service
discovery and strongly consistent data storage.

Sure, or use tag and/or have AWS (aws can be used as a node classifier).

>It's significantly worse than "if (var) { block }", though, yeah? I mean,
yes, it works, but I think that having a programming language with
conventionally understood data structures and functions

I'm not sure what you mean -- it's YAML + Jinja2. It's just powerful enough
that you can hand it off to an Ops team and they can get stuff done.

>I mean--I'm a programmer. Programming things is easier for me than
maintaining YAML files. =)

Agreed. I actually hit a point that I said "fuck this" and almost just wrote
chunks of python to stitch together with jinja includes, then base64, send and
run. I didn't because with Ansible, I can just point others at a doc that I
don't maintain (not to say the docs aren't garbage).

>(though Berks tends to be helpful anyway)

Ha -- petty, but I hate the amount of memes like "berkshelf" in the Ruby/Chef
toolchain. "berks" is enough to make me involuntarily scoff.

>All that said, I'm not saying you shouldn't use Ansible, and I dig that you
have some perspective about it. Just offering a different point of view. =)

Didn't take it that way :) I spent over a year with Chef+agent/Chef-zero/Chef-
solo, about a year with Puppet, before using Ansible. I find that Ansible
"just goes away" with less effort and doesn't just grow until it eats your
entire ops team.

------
kallus
How does it work when an open source project is acquired? What's the benefit
for RH compared to just forking the project?

I guess the choice of license can get really important in this situation? Are
there any old decisions by the founder that now turn out to be especially
important?

------
jgrowl
Congrats to all. I love ansible.

------
kasramoradi_66
kheyli ali bod

------
kasramoradi_66
very nice

------
notacoward
I wonder how much F5 paid for that mention in the "why Ansible" section. Maybe
I shouldn't, maybe it was a genuinely spontaneous example, but product
positioning has become so ubiquitous that I can't help it.

~~~
nailer
It (and the Cisco and Microsoft mentions) might be a case of Red Hat showing
that Ansible can configure what their customers use. As web developers, we
have haproxy and nginx for load balancers, but at financial firms 'F5' is
synonymous with the term. Disclosure: used to work at Red Hat.

~~~
exelius
A lot of larger companies use commercial load balancing appliances (A10 / F5)
to provide a stable / secure implementation pipeline for SSL sites across
multiple datacenters.

Nginx/HAproxy are great if you're a developer (and in fact, many developers at
these companies will use one of those behind an appliance) but they kind of
suck if you're trying to manage SSL certificates across a few thousand domains
load balanced in 2-3 datacenters with round-robin IPs.

Also, the throughput on commercial load balancer appliances is crazy high, and
there are plugins for injecting various headers, doing geographic load
balancing, etc. Once you get into the high-traffic side of load balancing,
your load balancer platform is also running your DNS -- so it can dole out the
right IP address (with a short TTL, naturally) based on your proximity to
specific exit nodes. It's nice to be able to manage all that from one platform
if you're supporting several dozen sites / applications.

