Extant Server DSC Authoring

Good morning,

I’m not going to ask this question right because I don’t have it clearly defined in my head, yet. But, here goes! I want to author a DSC Powershell script to as closely match an existing server as possible. Does anyone have a best-practice process for this that lets me take an existing server, identify the DSC Resources I have to add, and come up withe a relatively close starting point?

I want to take this piece of infrastructure and reverse-engineer the process that would allow me to configure one exactly like it.

Thoughts?

Nope. It’s pretty much a pure-human activity, and it involves knowing your servers. Honestly, what you’re suggesting is probably going to be really hard, depending on what that server is doing. If it’s running in-house apps, for example, “documenting” those dependencies is really hard. You almost have to start from scratch, get developers involved in authoring their bits of the DSC configuration, and so on. I mean, if you’re just looking at Windows Features (like on a DC or something), then it’s easy. Get into a complex Web server, and it’s very, very hard. Basically - what would you need to do if you rebuilt the server from scratch? There’s zero reliable way to examine an existing server and come up with that list. If it isn’t already documented someplace, that’s what you’re faced with.

Don,

Thanks for replying. So, to be clear, DSC is a tool best used to configure and manage servers moving forward.

Yup.

And, well… what would you do if some existing server died? Do you have documentation on how to rebuild it?

This environment is very blamey. I assume there would be a big shouting match and lots of finger pointing. :slight_smile:

We’d restore from backup. Backups here are extensive and deep. Dailies roll up to weeklies roll up to monthlies, etc.

There is some version we could get back, regardless the server. I sure would like to be able to retro-actively manage those servers with DSC as well, but that seems rather daunting at this point. I’m using multiple resources to guide me along, including “http://www.systemcentercentral.com/announcing-the-100-days-of-devops-with-powershell-series/”.

I’ll get where I need to go, eventually. Thanks for your help!

Yeah, honestly, if your ability to restore (from backup) exists, but no ability to rebuild (from scratch), DSC probably is going to be incredibly hard. You just don’t know what’s on those servers, and there’s no easy way to find out. That’s kind of the point of DSC, but it does mean you need to know what’s there to begin.