Baldy springs and shy volcanoes

La Fortuna and the invisible volcanohellipAfter two wonderful nights in Monteverde we set of around 8 in the morning heading for a small town nestled at the base of Arenal volcano called La Fortuna. I have to mention the fantastic drive down the mountains as we approached Lake Arenal possibly one of the most impressive drives Irsquove ever been on. Unfortunately due to excessive alcohol inta

Maori Leap Cave

This morning we got up and went to visit the Maori Leap Cave which is a limestone cave that was seaformed. There were only four of us and we got to wear hardhats and a funny old guy gave us a tour. The entrance to the cave is just kind of on the side of the road by a cafe. There were a lot of cool formations inside and even though it was kind of small it was fun and we learned how the diff

Kaikoura

Today we headed up to Kaikoura. On the way we stopped at Brew Moon Brewery for some snacks and to try some of their beer. It was pretty good. We had a Dark Side of the Moon Stout. We sat outside in a small courtyard and while it was windy it was really nice. They are just a small brewpub right on the side of the road so I'm glad we stopped and didn't just drive by.It was really nice in Ka

Arriving in Chile Arica Santiago and Valparaiso

After my flight from Iquitos I had one night in Lima before heading 3500km down the Pacific coast to Santiago de Chile. The bus from Lima to the border town of Tacna took 20 hours and had an inauspicious start with a Peruvian gospel preacher incidentally wearing an Hawaiian shirt giving a sermon as it was Mothersrsquo day before then trying to sell some turrones praline chocolate to ev

Cape Reinga and 90 Mile Beach

Hello again everyone I had a fantastic day on my trip up to Cape Reinga 3 days ago We left at about 7am and drove through a town called Taipa the one thing about Taipa is that therersquos a place called Cable Bay there. Apparently in the 40rsquos and 50rsquos there was a cable going all the way across the Pacific to the west coast of British Columbia Canada When the driver was explainin

Passport received

Passport was received yesterday. If you are ever in a passport bind A Briggs Passport and Visa Service is dependable and efficient.I understand that the weather is cool and France so I am repacking.

The Answer My Friend is Blowing in the Wind

This is a piece I originally wrote for a wider blog for outdoory types living in China. But I think it should be just at home here because at the end of the day noone can travel to China anymore and not pass concern for the air they breath or infact the global effects of Chinarsquos emissions on the environment.If yoursquore reading this blog Irsquom flashing a guess that yoursquore an

Akaroa and Okains Bay

This morning we went into the main part of Christchurch for a look around. We watched some guys playing giant chess in Cathedral Square for awhile. They seemed very serious about a giant chess game Then we headed out to walk along the Avon river. It was really pretty there lots of weeping willows and greenery. It was weird to feel so transported from the large town around us to a serene sm

Praise, concern greet DCHCDS – The Dartmouth


TopNews United Kingdom (blog)
Praise, concern greet DCHCDS
The Dartmouth
Dartmouth Medical School and undergraduate curricula will both be expanded to include courses in health care delivery. “I think this is a very unique and ...
Health Care From All DisciplinesInside Higher Ed
College forms Health Care Delivery CenterThe Dartmouth
$35M for Dartmouth health care delivery centerThe Associated Press
Media Newswire (press release)
all 217 news articles »

Mirroring Server Content and Configuration in IIS7

Marlin ToddI recently worked on an application that required we mirror content and configuration across multiple web servers running IIS 7.5 on Windows 2008r2. Because the server configuration in IIS for this application is relatively complicated, doing it over and over would not only be tedious but it would probably introduce some human error. While the possibility of human error is mitigated by the application’s detailed documentation, I looked for a more automated approach to the process.

Using IIS 7’s shared configuration management, it’s possible to replicate the content and configuration folders between web servers. As I worked through the steps of mirroring the content and server configuration for our application, I took notes on the process to create this guide for you to use the next time you approach a similar project.

You will need a domain account – or local account on each web server if your web servers aren’t joined to an Active Directory domain – which will be used to access the shared configuration. The account only accesses this configuration and a file share to store the configuration. Your web applications continue to run under whatever application pool identity you’ve set.

Assuming you’ve configured your IIS-based web server, we can start by exporting the configuration:

  1. On the first web server that will host the shared configuration, create a directory and share it with full share and ntfs permissions to the service account you create. All other permissions should be removed.
  2. In IIS manager, click on the server node in the left pane, then open “Shared Configuration” in the right pane.

    Mirroring Content Walkthrough

  3. Select the”Export Configuration” option on the right, store the export in the directory you created in step 1.

    Mirroring Content Walkthrough

  4. Create an encryption key. This key should be recorded, as it is needed for all nodes accessing the shared configuration.
  5. After the configuration is exported, tick the ‘Enable shared configuration’ box, and enter the UNC path to the configuration and the username, domainserviceaccount and password for that account.

    Mirroring Content Walkthrough

  6. Press apply, and you will be prompted for the encryption key created in step 2.

    Mirroring Content Walkthrough

  7. Restart the server or run an iisreset to apply configuration. Check to ensure that IIS is still functioning and the IIS manager can be accessed.

After completing those steps, your web server will be running from the shared configuration, so the next step is to replicate the web content and configure all other web servers to work from the same configuration.

There are several ways of replicating the physical content, DFSR is one option, however I chose not to use it. The content on this application’s web servers is static, so frequent updates to the other nodes is unnecessary. Instead, I used robocopy – a built-in feature since Vista / Server 2008 – to mirror the content from the configured server to all others. This was executed on the web server receiving the content:

robocopy \configuredwebserverc$inetpubwwwroot c:inetpubwwwroot /MIR

Once the file content is in place, two quick steps are required to configure IIS to use the shared configuration:

  1. In IIS manager, click on the server node in the left pane, then open “Shared Configuration” in the right pane.
  2. Tick the ‘Enable shared configuration’ box. Enter the UNC path to the configuration as specified on the first web server.

    Mirroring Content Walkthrough

  3. Enter the username, domainserviceaccount and password for that account. Press apply and enter the encryption key.

    Mirroring Content Walkthrough

  4. Restart the IIS server to apply configuration, and check to ensure that IIS is still functioning and the IIS manager can be accessed.

You’re done. You’ve replicated all application pools and IIS configurations. If you have ODBC data sources – things external to IIS which your web applications are using – you will need to find a way to replicate these settings as well.

If the shared configuration is unavailable for any reason, IIS may act up. In Server 2008 (not R2), if the configuration disappears, IIS will essentially stop. In R2, the server will detect this, continue working and reconnect when the configuration source comes back online.

To safeguard against connectivity issues, enable offline files by following these steps:

  1. On the web server, in “Control Panel,” open “Offline Files.”
  2. In the Offline Files dialog box, click Enable Offline Files. Do not reboot the machine yet.
  3. Ensure that the cache is set to read only by running the following command:
    REG ADD "HKLM\System\CurrentControlSet\Services\CSC\Parameters" /v ReadOnlyCache /t REG_DWORD /d 1 /f
  4. Reboot the Web server.
  5. Browse to the shared configuration folder on the web server. Right click and select “Always Available Offline”.
  6. Go back to the “Offline Files” in “Control Panel” and select the “Schedule” option.

    The sync center option is available on Windows 2008 server only when Desktop experience is enabled. KB 951043: You cannot start Sync Center from Windows Explorer on a Windows Server 2008-based computer.

  7. Schedule offline file sync every day or per your requirements. Even without setting up any scheduler, the moment I change anything in applicationhost.config file, it is reflected on the web server.

Hopefully this method should save you from a few headaches and give you another option when setting up multiple IIS 7 web servers. Being able to use the same configuration minimize deployment time and makes administration a breeze.

Let me know if you have any questions or would like any additional details about the process.

-Marlin

StumbleUpon
Twitter
DZone
Digg
del.icio.us
Technorati