I am looking for a central configuration management framework that supports the following scenarios:
- Desired State Configuration. My expectation is to express the desired configuration in code and have the framework ensure it constantly to prevent the configuration drift. And, of course, it should support the pull mode.
- All the configuration is managed in the Source Control (git, for example). I.e. no ad hoc scripts.
I come from the software development environment where having code outside of the Version Control is unthinkable. I want to treat my DSC specs the same - everything is in the version control, so when the configuration is changed by anyone it is easy to know exactly when, why, how and who changed it.
I started to look at the Azure Automation DSC, not sure if it fits the bill though - see Is it possible to keep all the DSC configurations in Version Control and make Azure Automation fetch it from there automatically?
Our servers are Windows Servers. Mostly 2012R2 with 2016 being slowly introduced.