DevOps: Get ready for the futureBy Marco Shaw
Don’t miss the train. The term “DevOps” has been around for a few years. And while it may seem to be slowly coming along, it has the potential to get much bigger very soon.
What is DevOps?
I liken DevOps to being a “one-click release.” For me, DevOps is the merger of development and operations into a combined group, working together to put things into production much more efficiently.
For this to happen, each side needs to understand what the other does. For example, developers need to understand more about what operations does, and operations needs to understand more about what development does.
To me, the result is when someone (or an automated task) takes a new service or an updated one and pushes or moves that into production and it just works.
There are a number of technologies and practices that give insight to the growing importance of DevOps.
When Microsoft decided to take a “PowerShell first” approach when designing their Virtual Machine Manager (VMM) product, it made sure PowerShell could do everything, and the user interface was simply a layer on top of that.
That approach has continued with each release of VMM, and now the latest VMM 2012 R2 version provides all kinds of tools to manage network layer devices as part of its concept of service templates. Service templates allow you to basically bundle entire services together and launch them with a few clicks.
I’ve been using PowerShell for several years, but I’m very thankful for VMM’s wizards. Basically, as you go through any task in VMM, the wizard will present you with the PowerShell code that would be run in the background. The code isn’t for the light-hearted, but being able to run through a scenario, get the code involved, and actually be able to read the code and modify it is an amazing time-saver.
In other words, don’t assume that because VMM includes a wizard, just anyone will be able to read and modify the code for their own specific use case. Having an intermediate-level understanding of PowerShell is a definite advantage.
VMware is the current leader in the virtualization space. It recently released a new product called NSX, which is meant to be a complete network virtualization platform that supports a large number of partners.
Another part of more complex deployments is the networking aspect of new or updated services, with the ability to write code to handle networking configurations. From a single management interface, two groups that used to typically work apart, server administration and network administration, can now be more tightly integrated. Operations and development is converging, and working together will cause more and more synergies, even within each group.
Gartner recently suggested that “software-defined anything” (SDx) should be something on senior management’s game plan as they look to the future.
To me, this speaks volumes to the DevOps mindset, and further pushes the things towards combining development and operations towards a convergence point where these two groups become one, and work in a much more integrated fashion.
An extreme example
I once worked at a company that had an interesting standard for getting their teams to develop a DevOps mindset, maybe even without knowing it. They would wipe everyone’s development environment on a monthly basis. Now, just imagine if you need to spend two weeks rebuilding your development environment every month; you might get a bit frustrated with having to redo your infrastructure each time, only having maybe two weeks left to get any new work done. In a scenario like this, you wouldn’t have much of an option to automate as much of the setup or build as you could.
What should I learn?
I think two very important technologies for the operations side to learn to make sure to not be left behind are PowerShell and Python. For the developer, take a look at how to build private clouds. Learn the important concept of VMM service templates, which I mentioned above.
Don’t get left behind. This industry continuously evolves, and you need to as well.
About the Author
Marco Shaw is an IT consultant working in Canada. He has been working in the IT industry for over 12 years. He was awarded the Microsoft MVP award for his contributions to the Windows PowerShell community for 5 consecutive years (2007-2011). He has co-authored a book on Windows PowerShell, contributed to Microsoft Press and Microsoft TechNet magazine, and also contributed chapters for other books such as Microsoft System Center Operations Manager and Microsoft SQL Server. He has spoken at Microsoft TechDays in Canada and at TechMentor in the United States. He currently holds the GIAC GSEC and RHCE certifications, and is actively working on others.