Welcome to MSDN Blogs Sign in | Join | Help

Manageability Extensions for Enterprise Library January 2006

If it's true that men are from Mars and women from Venus, then it would probably be fair to say that developers and infrastructure/operations people are from different galaxies. With few exceptions, these groups of people view the world from entirely opposing directions, follow different processes, speak different languages, and use different tools and technologies. Which is all fine, until these galaxies collide with the release of a new application. Far too often, the application was not built to fit in with the infrastructure, tools or processes that rule the datacenter - and the result is at best an application which is inefficient to mamange, and at worst an application that cannot be deployed.

While I really do believe this problem has far more to do with people and culture than technology, the fact that many key operations technologies are unknown or inaccessible to developers does compound the problem. How many .NET developers do you know who are able to implement technologies such as WMI, Group Policy, ETW, MMC or even CAS? Probably not many - and to be fair to all you developers, many of these are not even properly exposed through managed APIs.

I'd love to be able to tell you that we've solved the whole problem, but alas it's going to take a long and concerted effort from all of us (yes, you too :-). However, we're hoping that the release of the Manageability Extensions for Enterprise Library January 2006 will be a small but valuable step in the right direction.

The idea behind these extensions is to make it very easy for configuration data in Enterprise Library applications to be exposed to WMI and Group Policy, without it being necessary for the developers to be experts in these technologies. The heart of these extensions is a new Configuration Source class called the ManageableConfigurationSource. As far as the developer and even the application is concerned, this configuration source seems to act almost identically to the standard FileConfigurationSource - that is, it will read the configuration data from a .config file and return the information as ConfigurationSections to the blocks and the application.

However there is something sneaky going on beneath the covers. The ManageableConfigurationSource is spying on the configuration data and reporting it via WMI, so it can be queried using tools such as Microsoft Operation Manager. Currently the WMI APIs in the .NET Framework are read-only, so it isn't currently possible to manipulate the configuration data using WMI - however this capability should be supported in a future release of the platform. However it is currently possible to use Group Policy to manipulate the configuration information. If an administrator has configured the application for group policy, they can push configuration changes to machines and users via Active Directory. The ManageableConfigurationSource will query the registry for the group policy changes and merge this into the configuration information before handing it off to the application. And if you're using the built-in Enterprise Library blocks, all of this happens without developers needing to write any addional code!

We'd love you to try out these extensions and use them to build more manageable .NET applications. We plan on rolling these extensions into the next release of Enterprise Library, so it would be great to hear any feedback on the extensions (good or bad) to help us ensure the next release is even better. And these extensions are only a part of our wider effort around guidance for building more manageable applications - so let us know what else you'd like to see.

Published Thursday, July 20, 2006 12:24 PM by tomholl
Filed under:

Comments

Friday, July 21, 2006 5:24 PM by Elizabeth

# re: Manageability Extensions for Enterprise Library January 2006

Hello Tom Hollander.  Interesting blog.
Sunday, July 23, 2006 2:42 PM by Alois Kraus

# re: Manageability Extensions for Enterprise Library January 2006

Hi Tom,

I am not sure if these things will be welcome in low trust scenarios. At least WMI will need Admin privileges to work properly. The idea to deploy configuration via group policies is interesting. I will look deeper into this but here does the trouble begin. At work I cannot alter my forest becaus in a big enterprise domain (we have about 30 000 users inside one domain) only very few have administrative access to these things. As far as I know I need an Active Directory installation with full access to it to try it out. This could become difficult at home (I do not intend to install AD at home just for 10 minutes to try it out) and in my office.
Monday, July 24, 2006 2:43 PM by Ian

# re: Manageability Extensions for Enterprise Library January 2006

Hi Tom,

This article grabbed my attention. I can see great value in being able to push configuration changes to machines and access settings via WMI. However, I'm trying to understand why Group Policy (excuse my limited knowledge) and what configuration information we are talking about here.

Are we talking about storing application configuration, such as would be found in the app.config file in Group Policy? Is group Policy a good fit for this kind of configuration and what is it providing above say storing the configuration directly in AD or ADAM and pushing out the changes from there?
Wednesday, February 28, 2007 9:49 PM by Tom Hollander's blog

# Just Released: Enterprise Library 3.0 February 2007 CTP

OK, I know the sun has already set on February in some parts of the world, but over here it's still well

Thursday, March 01, 2007 2:30 AM by RSS It All

# Just Released: Enterprise Library 3.0 February 2007 CTP

OK, I know the sun has already set on February in some parts of the world, but over here it's still

Tuesday, July 03, 2007 10:39 AM by mgrzeg.net - Admin on Rails :)

# Enterprise Library 3.1 & GPO

Zamiast wstępu Jakiś czas temu Tom Hollander napisał na swoim blogu zdanie, z którym ciężko się nie zgodzić:

New Comments to this post are disabled
 
Page view tracker