다음을 통해 공유


DevOps for n00bs (ie. Windows people like me)

DevOpsDaysOhio open space session "DevOps on the Microsoft Stack". Picture credit @caseywest.Tidal Wave: DevOps

There is a tidal wave coming to Windows IT Pros, especially those supporting infrastructure. That tidal wave is called DevOps. I’ve spent the last year wiping out in the surf of the tidal wave, trying to learn the lingo.

As a Windows ops guy I’ve been attending non-Microsoft events where I feel like a floppy disk in a world of microSD cards. The DevOps scene is largely comprised of the open source community who either do not own a Windows machine or have one in the corner they are trying to get rid of. At least that is the stereotype. (To be fair, I’ve been told there are non-Windows sysadmins who have never heard of DevOps either.)

If this is the first time you have seen the term “DevOps”, then we have a lot to discuss. If this is not the first time you have seen the term “DevOps”, then we still have a lot to discuss. Keep reading.

What is it?

Now that DevOps has gone mainstream as the cool new thing, many have tried to define it: Chef, Gartner, Microsoft, Wikipedia, etc. The funny thing in the DevOps community is that anyone who attempts to define it often gets flamed. The most popular sentiment is that DevOps is not technology but culture. Technology implements the pipeline, but the heart of it is a culture shift from top to bottom (or bottom to top) in your IT organization.

The classic IT problem case looks like this:

  • Dev writes code
  • Dev tests code on his box
  • Dev throws code over the wall to ops
  • Ops takes two months to order a server
  • Ops deploys the code to prod
  • Everything breaks
  • Business wonders why IT can’t get along
  • Business is constrained by IT

Practically speaking, DevOps is a process transformation that automates every step of the software development lifecycle (SDLC) so that it flows like a manufacturing line. Dev, build, test, deploy, configure, etc. All processes are automated to flow so smoothly that companies can now deploy new code multiple times per day. This results in business agility. As a side benefit, company culture improves and employees stop looking for jobs at other companies. Ultimately IT becomes a competitive advantage to the business, rather than a liability.

Why should I care?

The best summation of DevOps business value is captured in the annual Puppet Labs State of DevOps Report. This is a great place to start for both you and everyone else up the management chain. This report documents the true business value of DevOps practices like:

  • Reduced downtime
  • Faster deployments
  • Happier employees
  • Competitive advantage
  • Sunshine and rainbows, etc.

The hard numbers in this report demonstrate that everybody wins with DevOps practices, and that translates to the bottom line for multiple people in multiple ways.

Companies who practice DevOps attract key talent from other companies stuck in legacy processes. In our IT staffing shortage this is huge.

My Journey So Far

When I started down the path learning PowerShell Desired State Configuration last year I listened to a lot of talks from Jeffrey Snover. He kept mentioning this foreign term “DevOps”.  It was completely new to me, so I began investigating it. I discovered that Jeffrey had even (gasp!) presented at non-Microsoft events (must watch this). There was some serious cross-over happening. What is this all about?

I set out on a journey to learn the larger DevOps story so that I could give context to the PowerShell DSC work I was doing. I learned that DSC helps with multiple parts of the DevOps pipeline and that it fits in a category called configuration management. One of the first software projects in this category was CFEngine in 1993! I had to ask myself, “Is Microsoft that far behind?” We have products like System Center Configuration Manager, but I’ve never heard it pitched as a DevOps tool.

The Microsoft Story and Resources

Suddenly I understood Jeffrey’s vision. Microsoft is trying to catch up and keep Microsoft relevant to the industry. This conclusion was validated as I began attending local non-Microsoft events. As a Windows guy I was the odd man in the room most times. DevOps automation practices and technologies are business-as-usual for much of the non-Windows side of the world. This is what Jeffrey Snover set out to resolve with the Monad Manifesto in 2002. All of this PowerShell I’ve been enjoying over the last five years was clearing the path for DevOps automation on the Microsoft platform.

Today Microsoft has a good DevOps story, and our products can automate the DevOps pipeline similar to all of the open source alternatives. I suggest that you check out:

You can share this blog post with others using this short link: https://aka.ms/devopsforn00bs

DevOps DaysDevOps Days Ohio

This week I enjoyed attending the DevOps Days Ohio event. It was a great opportunity to connect with local practitioners and hear their stories from the trenches. These events are springing up around the world, and you may be able to find one near you at devopsdays.org.

DevOpsDaysOhio open space session "DevOps on the Microsoft Stack". Picture credit @bilschtw.

These events have something called open spaces, ad hoc breakout discussions each afternoon of the event. I proposed a conversation DevOps on the Microsoft Stack, and we had a respectable representation of attendees who could choose from six separate topics in that time slot. We discussed nano server, containers on Windows Server 2016, PowerShell DSC, Visual Studio Release Management, Azure, and other technologies that facilitate DevOps in a Microsoft shop.

After the session many thanked me for proposing the topic, because they, too, felt alone in the open source world of DevOps.

The DevOps BookThePhoenixProject

There are many books in the DevOps/agile/lean category. But the one book everyone starts with is The Phoenix Project. This is a fictional novel that describes the day-to-day woes of the average company struggling with broken IT processes. If you work in IT, this will be both scary and familiar. However, using the ways of DevOps the company turns things around for a happy ending. Reading novels is not in my skillset. If you are like me, then try the audio book version.

I had a conversation with a customer recently who related this story.  Six months ago the CIO read The Phoenix Project. He immediately bought a copy for everyone in the IT department. Then he re-tasked one of his managers as the “Implementer of DevOps” and told him to “make it so”.

What are you waiting for? Go get your own copy to find out what this is all about.

Podcasts

Here is a list of podcasts you can use to learn more during your commute:

Put these on your phone today.

PowerShell Summit Now Includes DevOps

This year the PowerShell Summit event has been retitled as PowerShell and DevOps Global Summit. This strategic move is timely and serves as a wake-up call to Windows admins everywhere. It is time to get on the DevOps train.

This event is your chance to connect directly with the Microsoft PowerShell product team and PowerShell MVPs from around the world. I’ll be presenting a couple sessions again this year, and I hope to see you there.

Register early, because it fills up fast!

DevOps Enterprise Summit

The DevOps stereotype usually fits with startups and scrappy small tech companies. Lumbering large enterprises struggle the most with moving from legacy culture to catching up with the DevOps cool kids. Addressing this gap is the goal of the DevOps Enterprise Summit. This event occurred last month, and all the videos are up now, including our own Jeffrey Snover, The Cultural Battle To Remove Windows from Windows Server and an interview.

There’s a dot com for that

Yip. DevOps.com. This is a great landing page for all things DevOps industry-wide.

Time to Get Started Learning… Again

If after reading this post the DevOps concept is still fuzzy to you, then welcome to the club. I have attempted to drown you in DevOps resources as you get started on your own journey down this path on the Microsoft stack. These are the resource I have found helpful so far. I am sure there are more. Click every link. You know you want to. That is why you are in IT. You enjoy learning new things.

Start evangelizing DevOps in your company today. Begin by sharing this post with your Microsoft peers.

Disclaimer

This post is my own experience and observations on the DevOps journey. I am likely incorrect on points. I am an ops guy. I am sure that Windows Devs may have a different angle. I am making no official statements representing Microsoft or its intentions. If I got it wrong, flame away in the comments below. Thanks for starting the dialogue. Smile

Comments

  • Anonymous
    November 21, 2015
    Ashley,

    What are some technologies or tools you've learned about or picked up on your DevOps journey? Some that come to mind for me are Git,Jenkins,TeamCity, and Pester.
  • Anonymous
    November 27, 2015
    Nice summup, in the near future DevOps for the ITpro is not only about making your IaaS SO, but also make your SaaS (application) in the (Azure) private/public Cloud SO.
  • Anonymous
    December 02, 2015
    Thanks for all the resources and great summary you provided in this post. Keep it up!
  • Anonymous
    December 03, 2015
    Hi Josh,
    Yip. Git, TeamCity, Pester, Visual Studio Online, Visual Studio Release Manager, etc. As an old ops guy I want to learn more about each of these.
    Ashley
    @GoateePFE
  • Anonymous
    December 08, 2015
    funny - for 15 years I've done scripting, automation and looking to work myself out of a boring parts of my job. Now they put a cool buzzword like DevOPS and a few tools to make it formal and "hip". Good write-up.
  • Anonymous
    January 19, 2016
    Rather than "The Phoenix Project" I personally much prefer:
    http://www.informit.com/store/continuous-delivery-reliable-software-releases-through-9780321770424
    http://the-cloud-book.com/

    (Apologies for the retailer link, it generates no kick-backs for me).

    I honestly find both of those books significantly better for properly understanding the DevOps "story" and full of solid real-world advice; the former nicely covers all the aspects a Dev Shepherd (and Release Eng) cares about, and the latter is great for the Infracoder.