Subscribe to Windows IT Pro
March 19, 2001 12:00 AM

Application Center Content, Component, and Configuration Synchronization

Windows IT Pro
InstantDoc ID #20060
Rating: (0)

Application Center Synchronization in Action
I tested Application Center synchronization with a Web application called Active Directory Web-based Administrator. This application is a sophisticated Web application with HTML, Dynamic HTML (DHTML), XML, Active Server Pages (ASP), three COM+ components, and a COM+ Events class. This application is also hosted in two virtual directories, and one of its components reads the registry. Although the installation process is well documented, the process takes a few steps. You can download the application, entitled "TechEd (6-411) Windows DNA with Middle Tier Active Directory COM+ Objects," with its installation instructions from http://www.interknowlogy.com/resources/support.asp.

After I installed Active Directory Web-based Administrator on my cluster controller's Web server, I created an Application Center application in the Microsoft Management Console (MMC) Application Center snap-in by highlighting Applications in the left pane and clicking New. I gave the application a name (Active Directory Web-based Manager), then clicked OK.

I then needed to add resources to the Application Center application. First, I added the content of my Web application. From the Resource Type drop-down list, I selected Web Sites and Virtual Directories, then clicked Add. The three Web sites on my Application Center cluster controller IIS 5.0 Web server appeared. I drilled down to the first virtual directory, TechEd2k, highlighted it, then clicked OK. I performed the same actions for the second virtual directory, EventAudit.

Next, I needed to add the COM+ resources to the Application Center application. From the Resource Type drop-down list, I selected COM+ Applications, then clicked Add. Application Center listed all the COM+ applications on my server. I chose the InterKnowlogy COM+ application, which houses the components that Active Directory Web-based Administrator uses, and clicked OK.

If I used ODBC data sources in Active Directory Web-based Administrator, such as SQL Server connection parameters, I would add the resource type Data Sources at this point. Because the only data-storage device that this application uses is AD and I don't require a Data Source Name (DSN) for its connectivity, I skipped this resource.

Active Directory Web-based Administrator's COM+ Events class writes an XML data file as its auditing log. Realistically, in production, I would let each Web server write its own log, but for the sake of explanation and completeness (and just to test this feature), I selected File System Paths from the Resource Type drop-down list and clicked Add. I navigated to the XML data file and clicked OK to add it as a resource to the Application Center application.

Finally, I needed to add the registry resources to the application. From the Resource Type drop-down list, I selected Registry Keys, then clicked Add. I navigated to the registry subkey that holds the configuration parameters that Active Directory Web-based Administrator uses, then clicked OK. Figure 2 shows the Application Center snap-in after I added all the resources to my Application Center application.

Testing the Application
Now, I was ready for some testing. In the Application Center snap-in, I highlighted Active Directory Web-based Manager and clicked Synchronize. Although I could hear a flurry of disk activity, no status bar appeared to tell me what was going on. Nor was there any indication that synchronization had finished. Confused, I moved over to my cluster member to see whether anything had happened. Sure enough, the synchronization had worked perfectly: The synchronization process had copied over the registry keys, created and populated the virtual directories with all the content, and even copied over the XML data file resource with all the appropriate folder structure that it contains. I hope that Microsoft will fix the missing status bar problem in Application Center's release to manufacturing (RTM) version.

Two caveats exist for deployment and synchronization. First, Application Center Content and Configuration Synchronization doesn't automatically deploy or synchronize COM components and COM+ applications. You must use the Deployment Wizard to deploy them to each cluster member manually. (For an overview of the deployment and synchronization process for COM+ applications, see the sidebar "Deploying and Synchronizing COM+ Applications," page 9.) Second, you must also use the Deployment Wizard to manually deploy global ISAPI filters to the cluster controller. Application Center will synchronize the ISAPI filters with the members when you restart the Web service.

The Beauty Is in the Details
What's really amazing about Application Center is that it deployed the content, components, and configurations down to the most minute detail. For example, I removed Anonymous access to the application, which is a property persisted in the IIS metabase, and Application Center caught that change and deployed it.

The real danger and power of using this set of tools is that it exposes the mistakes of software developers. Application Center will deploy as is any resource that contains hard-coded values within an Application Center cluster. If an ASP file contains a hard-coded reference (e.g., to a server name), Application Center will deploy the reference and your Web application will be broken. Worse yet, your Web application will function but use the wrong resources. Say, for example, that your developers hard-code the name of a SQL Server or ODBC connection that refers to a database on a test server. Can you imagine the ramifications of Application Center moving code into production that attempts to use a test database? If the move were successful, you might not catch the problem for hours, maybe even days.

The deployment of Web applications into production is difficult. Deploying Web applications into Web farms is one of the most challenging duties of IIS administrators. Just keeping content updated and synchronized in Web farms is tough. However, Application Center can help you dramatically in the deployment and synchronization of Web application content, components, and configurations.

Related Content:

ARTICLE TOOLS

Comments
  • Robin Penny
    11 years ago
    Mar 28, 2001

    The question which sprang to my mind, which the article doesn't seem to answer, is whether SQL/Server data which may be part of your application is also synchronised between servers. Or is the assumption that SQL/Server sits on separate boxes?

You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.