… unless you are ready to clarify what exactly do you mean by “DevOps”, I suggest you
shut up don’t use that word at all.
The reason not to call a person “DevOps” is that DevOps seems to be a set of principles but not a person nor a job position. None of the amorphous definitions say it’s a person or position so don’t call DevOps anyone please.
Here is why I don’t recommend using this term at all:
- There is no exact definition. I’ve asked several people from in the industry and none of them could define the term precisely.
- Some people think that using specific tools is being DevOps. Some don’t. I don’t. Specific tools can not be used all the time as situations are different.
- Wikipedia has a description which I’m not sure can be used as a definition because some people would agree and some won’t.
- New Relic guys write “First, let’s just say there is no definitive answer.” in the article What is DevOps?.
- Automation seems to be one of the principles. Does it mean that an unsuspecting person that automates processes is now suddenly practicing DevOps? Are we just naming existing practices with a new fancy term now?
If you read the news you get the impression that OpenStack is the answer to anything (along with Docker but that’s for another post). I would like to balance this hype a bit. This post is my personal opinion.
tl;dr – TCO much higher than expected
When I first started working with OpenStack few years ago numerous issues caused me to mentally summarize “Not ready for production, re-visit in a year or two”. Unfortunately this still stands in 2016.
If you are considering OpenStack for your private cloud, think twice. Here are some examples of what I experienced few years back till now with two different clients that use OpenStack.
- Using API is a suffer
- API is inconsistent between components like Nova and Neutron so you will have more code.
- Neutron documentation for Python client is ridiculous: create network and list networks. That’s all. This is in contrast to the counterpart Nova documentation which is OK.
- Few years ago I have edited instance types (“flavors”) using the web UI. Somehow it screwed up all the types. Unfortunately I don’t know if there was an open issue for that.
- About a year ago we had production system workaround with a line of bash that would do internal ping within the message bus that OpenStack uses. Without this it would randomly get stuck and not respond to any management commands (create/delete instance for example). If I remember correctly this bug was fixed in Juno or Kilo, unfortunately I can’t find it.
Be sure to visit the bugs lists before your decision.