Log in




New Exchange 2010 SP1 Help File – Sept Release

September 13th, 2011 by

Microsoft released a new Exchange 2010 SP1 Help File in CHM Format.  If you would like to download it go to Exchange Server 2010 SP1 Help at Microsoft.

And yes, I do read the help file, there is a lot of technical information in here.

Do I need a CAS Array?

September 12th, 2011 by

I wouldn’t be surprised if I saw this topic covered at TechEd next year.  I have many clients ask me the following question a lot, “do I need a CAS Array in my organization?”  I imagine that there are many people out there wondering the exact same thing.  So, do you need a CAS Array for your Exchange 2010 organization?

Well, let’s start out by looking at how Exchange 2010 will work without a CAS array.  In the event where you do not have a CAS Array when you create a Database the database will configure the “RpcClientAccessServer” (the RPC Endpoint for Outlook Client Connectivity) based on one of the following:

  • If you have both the Client Access server role and the Mailbox server role on the same physical server, the value of RPCClientAccessServer property for a particular Mailbox server will be the same as the Mailbox server.
  • If you have the Client Access server role on a separate maching the RPCClientAccessServer property for a particular Mailbox server will be set to a random Client Access server within the Active Directory site.

What this means is that the Mailbox Database that you created will either assign the RPCClientAccessServer property based on one of the two options above.   Which brings me to Scenario one.

Scenario one:

Let’s say you have two Exchange Servers deployed within your organization EXCH1 and EXCH2.  Each server is running the Mailbox, Hub Transport, and Client Access role in the same Active Directory Site.  Now say you deploy one databases on each server Database1 on EXCH1 and Database2 on EXCH2.  Each Database will be assigned the RPCClientAccessServer property with the server name the database resides on.  i.e. Database1 will have a RPCClientAccessServer set to EXCH1 and Database2 will have a RPCClientAccessServer set to EXCH2.

Next we deploy a DAG within our two nodes and replicate the two databases between the servers.  Even with a DAG deployed in the event that EXCH2 goes off line all users in Database2 will lose their connection!  This is because their RPCClientAccessServer points to EXCH2 even thought their database is mounted on EXCH1.  The RPCClientAccessServer property does not get updated automatically.

End Scenario one

Now let’s take a look at how Exchange 2010 behaves if the CAS Array is already created.  When you create a Database the database will configure the “RpcClientAccessServer” (the RPC Endpoint for Outlook Client Connectivity) based on one of the following:

  • In the event that you have first created a CAS Array and then second created a mailbox database Exchange will assign the RPCClientAccessServer property with the name of the CAS Array for that Active Directory site.

Which brings me to Scenario two!

Scenario two:

Let’s say you have two Exchange Servers deployed within your organization EXCH1 and EXCH2.  Each server is running the Mailbox, Hub Transport, and Client Access role in the same Active Directory Site.  There is no hardware load balancer in your organization but you decided that before creating any databases in your organization you would create a CAS Array.  (for info on creating a CAS Array see my article: Exchange 2010 Client Access Server Array (CAS Array)

Once the CASArray has been created you go out and create a DNS entry, in this case cas.scottfeltmann.com.  For an IP address for this DNS entry you type in the IP Address of EXCH1 and set the time to live to 5 minutes or less (you could do DNS round robin but in the event of an outage 50% of the users will be off line).

Now that we have our CAS Array created we can move forward and create our two new databases, Database1 and Database2.  Each Database will reside on their respective servers EXCH1 and EXCH2.  Since we have created our CAS Array the RPCClientAccessServer property will be set with the CAS Array name, in this case “cas.scottfeltmann.com”.

As a final step a DAG has been deployed to replicate the mailbox databases between the two servers within our organization.  Since our CAS Array is currently pointing to cas.scottfeltmann.com which points to EXCH1 in the event that we lose the server EXCH1 our users will lose their connection.  Once this occurs a manual process needs to take place to update the DNS entry cas.scottfeltmann.com to point to EXCH2.  Once DNS updates, all users will be back on line and working again!  Much better than the scenario one if you ask me.

End Scenario 2.

Honestly to simply the failover process I always suggest a Hardware Load Balancer like Kemp Technologies (http://www.kemptechnologies.com/us/) which will automatically re-establish the connection.

Also keep in mind that if you created a Mailbox database before the creation of a Client Access array or the installed a Client Access server within the Active Directory site, you’ll need to reconfigure the value of the RPCClientAccessServer property. If no Client Access server exists in the Active Directory site when the Mailbox database is created, the value of the RPCClientAccessServer property will be set to the FQDN of the Mailbox server. To configure the value of the RPCClientAccessServer property, use the following command: Set-MailboxDatabase DBName -RPCClientAccessServer cas.scottfeltmann.com (or whatever your CAS Array name is).  In some rare instances you  may run into a bug where you created the CAS Array after the databases were deployed, and updated the RPCClientAccessServer property on the Database.  For more information on that bug see my article Outlook Profile not updating after creating CAS Array.

So, to answer the question, “Do I need a CAS Array?”  The answer is YesMost certainly!  Absolutely!
Edit — I should point out, even if you have a single Exchange 2010 Server in your entire Organization you should use a CAS Array!

Questions?  Comments?  Please Share!


 

 

 

 

Exchange 2010 SP1 Rollup 4 re-released

July 28th, 2011 by

As many of you know the Exchange team released Exchange 2010 SP1 Rollup 4 back on June 22nd.  Well, on July 13th there was a bug identified with the release and they had to pull the release.

Last night the Exchange team re-release Rollup 4 for Exchange 2010 SP1.  Following the release they also posted a update on what happened with the recall of Rollup 4 and what they are doing to help reduce the likelihood of this happening in the future.

As for me, I may wait a week or two before applying it just to be sure it is working correctly.  Not to say I doubt the Exchange team but if you recall Rollup 3 for Exchange 2010 SP1 went through three revisions before they got it right.

Here is a quick read of the Q&A of the update on Rollup 4:

  • Q: What actually triggered the recall?
  • A: While fixing a bug that prevented deleted public folders from being recovered, we exposed an untested set of conditions with the Outlook client. When moving or copying a folder, Outlook passes a flag on a remote procedure call that instructs the Information Store to open deleted items which haven’t been purged. Our fix inadvertently caused the RPC to skip all content that wasn’t marked for deletion because we were not expecting this flag on the call from Outlook on the copy and move operations.
  • Q: Why didn’t you test this scenario?
  • A: The short answer is we thought we did. We didn’t realize we missed a key interaction between Exchange and Outlook. The Exchange team has well over 100,000 automated tests that we use to validate our product before we ship it. With the richness and number of scenarios and behaviors that Exchange supports, automated testing is the only scalable solution. We execute these tests in varying scenarios and conditions repeatedly before we release the software to our customers. We also supplement these tests with manual validation where necessary. The downside of our tests is that they primarily exercise the interfaces we expose and are designed around our specifications. They do test positive and negative conditions to catch unexpected behavior and we did execute numerous folder copy and move tests against the modified code which all passed. What we did not realize is that our tests were not emulating the procedure call as executed by Outlook.
  • Q: Exchange has been around a while, why did this happen now?
  • A: In Exchange 2010 we introduced a feature called RPC Client Access. This functionality is responsible for serving as the MAPI endpoint for Outlook clients. It allowed us to abstract client connections away from the Information Store (on Mailbox servers) and cause all Outlook clients to connect to the RPC Client Access service.    As part of our investigation, we discovered that there was some specific code added to the Exchange 2003 Information Store to handle the procedure call from Outlook using the extra flag. This code was also carried forward into Exchange 2007. But when the Exchange team added the RPC Client Access service to Exchange 2010, that code was not incorporated into the RPC Client Access service because it was mistakenly believed to be legacy Outlook behavior that was no longer required. That, unfortunately, turned out not to be the case. The fact that we were not allowing a deleted public folder to be recovered was masking this new bug completely.
  • Q: Are there other similar issues lurking in RPC Client Access?
  • A: We do not believe so. The RPC Client Access functionality has been well-tested at scale and proven to be reliable for the millions of mailboxes hosted in on-premises deployment and in our own Office 365 and Live@EDU services.
  • Q: What are you doing to prevent similar things from happening in the future?
  • A: We have conducted a top-to-bottom review of the process we use to triage, develop and validate changes for Rollups and Service Packs and are making several improvements. We have changed the way we evaluate a customer requested fix to ensure that we more accurately identify the risk and usage scenarios that must be validated for a given fix. Recognizing the diversity of clients used to connect to Exchange, we are increasing our client driven test coverage to broaden the usage patterns validated prior to release. Most notably, we are working even closer with our counterparts in Outlook to use their automated test coverage against each of our releases as well. We are also looking to increase coverage for other clients as well.

 

 

 

Google+ available on the iPhone

July 19th, 2011 by

I happened to get an alert on my iPhone from AppsFire that Google+ is available for the iPhone.  I took a look and sure enough, I found it!

One thing I noticed that if I try to share a comment my iphone won’t flip the key board.  Bummer!  I like to flip my iphone to enlarge the keyboard.  My guess is just a Bug.

I also found a news article regarding the Google+ iPhone app on the NYTs

Here is the Picture of the icon for the iPhone

Pretty Basic but it works.

I am actually happy to see the app come out as I was just talking about how it would be nice to get an actual App instead of having to go through Safari for my Google+ access.

My thoughts on Google+ so far?  What I do like about it is that I have my circles.  These circles allow me to choose who I publish (stream) my content to.  I can make a post to an individual by specifying their name or to my circle of friends, or my circle of family etc etc etc.  Other than that I haven’t really played around with Google+

I would be happy to hear anyone’s experiences with Google+ thus far.  But either way, check it out!

Netflix is raising prices! – Urgh!

July 12th, 2011 by

I got an email yesterday from Netflix.  They have decided to raise their prices.  You will no longer be able to stream all the movies you want and get x amount of DVDs in one plan.  Here is the email I received:

We are separating unlimited DVDs by mail and unlimited streaming into two separate plans to better reflect the costs of each. Now our members have a choice: a streaming only plan, a DVD only plan, or both.

Your current $xx.xx a month membership for unlimited streaming and unlimited DVDs will be split into 2 distinct plans:

Plan 1: Unlimited Streaming (no DVDs) for $7.99 a month
Plan 2: Unlimited DVDs, 3 out at-a-time (no streaming) for $15.99 a month

Your price for getting both of these plans will be $23.98 a month ($7.99 + $15.99). You don’t need to do anything to continue your memberships for both unlimited streaming and unlimited DVDs.

These prices will start for charges on or after September 1, 2011.

You can easily change or cancel your unlimited streaming plan, unlimited DVD plan, or both, by going to the Plan Change page in Your Account.

We realize you have many choices for home entertainment, and we thank you for your business. As always, if you have questions, please feel free to call us at 1-888-357-1516.

–The Netflix Team

Bugger.  My thought here is that they are trying to get more revenue to stream more.  As long as I have a better selection (Dexter *cough* *cough*) and other shows I can be ok with this change, but if they are planning to remove shows then I will only be more upset!

guess time will tell.

Update:  Here is the official Blog post: http://blog.netflix.com/2011/07/netflix-introduces-new-plans-and.html

 

If you’re running Exchange 2010 and have a DAG install one of the following Hotfixes

July 12th, 2011 by

I came across an interesting Tweet yesterday from Scott Schnoll which said “If you have a DAG, install the cluster hotfixes from MSKB 2549472, 2549448 or 2552040. Only need to install one (same files in each hotfix).”

The Hotfixes can be found here:

Why any one of these KBs?  Well each KB has the same files required to repair the issue that Microsoft has discovered with Exchange 2010.  As Scott put it, “These packages contain the same cluster fixes, which address some issues that can affect network connectivity in a cluster.”

Thanks Scott!

STTNG on Netflix

July 7th, 2011 by

Ok, so I’m sitting here working and I decided to go over to Netflix to get something going in the back ground as I work.  I typed in Star Trek and what do I find?  STTNG is available for streaming!  SWEET.  I also noticed ST:E, ST:V, and the original, Star Trek are all available for streaming!  What more does a geek like me need for entertainment?

Exchange 2010 OWA redirection causing a forever loop

June 22nd, 2011 by

I ran into a problem last week where a client wanted to have all http traffic into an exchange 2010 server get redirected to https.  While there are a number of ways of doing this I found a nice article by Brian Desmond  on how to configure doing IIS redirects using IIS 7 instead of creating Custom Code, which is what I used to do.  The article proved to be a great find however there was an error that occurred as a result of configuring the Redirect.

While stepping through the article I did exactly what the article said to do however as part of the process of assigning the redirect to go to /owa for the Exchange, ExchWeb, and Public Folders the OWA virtual directory also inherited the /owa redirect.  This basically caused a loop whenever a user went to https://owa.domain.com/owa.  The URL kept doing a forward which caused the loop.

In my research I was able to find the problem, as I mentioned, the OWA virtual directory inherited the loop.  If I went to the OWA virtual directory and cleared the check box to do the Redirect it would clear the redirect for all the required virtual directories!  When I would re-enabled the redirect for the Exchange virtual directory it would enable the redirect on the OWA virtual directory.

As it turns out when making the modifications to the Exchange Redirects the web.config file also gets a line added to the configuration for redirects.  The first step to resolve this issue is to remove the httpRedirect in the web.config file located in “C:\Program Files\Microsoft\Exchange Server\V14\ClientAccess\Owa”.  Once in this directory I oped the web.config file and looked for the redirect reference which appeared like this: <httpRedirect enabled=”false” destination=”/owa” childOnly=”false” />

By removing that above line and saving the Web.Config I was then able to use appcmd to set the config of the /Exchange, /Exchweb, and /Public virtual directories.  To enable the redirection type the following:

C:\Windows\System32\inetsrv>appcmd set config “Default Web Site/Exchange” /section:httpredirect /enabled:true -commit:apphost

C:\Windows\System32\inetsrv>appcmd set config “Default Web Site/Exchweb” /section:httpredirect /enabled:true -commit:apphost

C:\Windows\System32\inetsrv>appcmd set config “Default Web Site/Public” /section:httpredirect /enabled:true -commit:apphost

And then this to disable redirection for /owa:

C:\Windows\System32\inetsrv>appcmd set config “Default Web Site/owa” /section:httpredirect /enabled:false -commit:apphost

And done, the redirects work correctly and the /owa loop is removed!

Kemp Technologies LoadMaster Sizing Guide for MS Exchange 2010 (Beta)

June 9th, 2011 by

I was out looking at Kemp’s site today looking at Kemp devices for a client of mine.  The request was to determine a proper Load Balancer for my client based on their organization.  While I was on the Kemp site I came across a new tool Kemp currently has in Beta.

The tool is called the “LoadMaster Sizing Guide for MS Exchange 2010”.  The tool itself is pretty cool and is exactly what every Exchange guru should be aware of!  The tool is capable of making a recommendation of what Kemp LoadMaster you should get for your organization.

In order to determine the size of the LoadMaster (LM) you are able to enter in the following information based on your organization size:

  • Total Mailboxes
  • Percent Concurrent Connections
  • Percentage of HTTPS services
  • Avg# of Messages/Day/Mailbox
  • Avg.Message Size (KB)
  • Hours/day
  • Busy Hour Multiplier
  • Max Virtual Services (VIP)
  • Max Exchange Servers
  • Select SSL Key Length

The options have either a direct entry where you can put a number or slide bars to adjust the setting.  Pretty sweet tool!  You can have a look for yourself.  You can find the tool by following the URL:  http://www.kemptechnologies.com/fileadmin/templates/sizingDoc/lme_calc_2k/lme_calc_2k.htm

Great Job on this one!  PERFECT!

Questions, Comments?  Please Share!

 

SQL Express Error when installing Threat Management Gateway

June 8th, 2011 by

I ran into an issue today while attempting to install Threat Management Gateway 2010 on a Windows 2008 R2 server for one of my clients.  The issue that was occurring when deploying TMG I would receive the error “Microsoft SQL Express 2008 (logging instance) could not be installed.  As a result, Forefront TMG installation cannot be completed.”  Frustrating!  Looking at the logs revealed that there was a failure in the deployment with an error of “Wrapper: Install failed, hr = 0x84b30001”.  Eh?

The next step I tried was to deploy SQL 2008 Express on the Windows 2008 R2 server.  While in the process of deploying the SQL 2008 Express edition I received an error “Access Denied” and the installation failed.  After removing the failed SQL deployment from the server I started to do some research.  As it turns out Microsoft will leave their debug info in the SQL Express editions.  In order to install SQL Express the user much have permissions to “Debug Program”.   This setting is only related to SQL Express editions and not full blown (to my knowledge) SQL programs.

In order to find the security setting Debug Program I went to the “Local Security Policy” on the Windows 2008 R2 server.  I then went to “Local Policies”, “User Rights Assignment” and located “Debug Programs”.  Looking at the configuration this policy was being configured by Group Policy and was only allowing two users in the organization access to this perform Debug Program.  I asked my client to adjust their group policy to include my security account in this policy.  Did a GPUpdate /Force and rebooted the server.  Next attempt to install the server was a success!

Questions or Comments?  Please share!