Tuesday, December 16, 2008

Migrating Blackberry Enterprise Server (BES) to a VM in parallel

So, the BES I inherited was running on an old server that was ready for a new purpose. I had a nice new Hyper-V based VM ready to host BES services, but there were a couple steps I had to take to get the services there. I was not wanting to make a knife-edge switch, as I wanted to do this a few users at a time. I only have one SRP Identifier, and my support is currently through Sprint, not RIM. Here is the solution I came up with that worked out quite well.

1. Move the database (optional)
The BES was using MSDE on the local server. Since I was decommissioning the local server, this had to move. I migrated from MSDE to an existing SQL 2005 DB. Here is an article for reference: KB12247 on http://www.blackberry.com/btsc/microsites/microsite.do

2. Register with Blackberry/RIM for a trial BES license
You have to sign up and give them a valid email address, but once approved, you get a trial SRP ID. This is required if you want to run your new BES in parallel with the existing BES. As of the time of this posting, you can request a trial here: http://na.blackberry.com/eng/services/server/offers.jsp

3. Load your new BES, use the production DB and Trial SRP
Build the new BES (it should be in the ballpark of your production version). You should be able to point the new BES to your shared DB and manage it alongside your existing BES. Make sure you use the new SRP-ID so that you don't lock your existing SRP. Having these in parallel allows for a much easier migration.

4. Move users
Right-click, move user (you can highlight multiple users if you want to do batches). This will do a seamless OTA migration of the user. You should look at the last contact on the device though, because if it can't find them, your new BES will log an error quite frequently as it attempts to contact and migrate the device.

5. Decommission old BES
Uninstall/Disable services. Remove from Management GUI.

6. Replace temporary SRP with production SRP using Management GUI.
Now you can go back to your original SRP. You are now running on the new server.

This process worked for me. Let me know your experiences.


Bharat said...

Hi ,

I am in similar state, you have best steps for this topic as of now.
I just need to know whether user has to sync their Device after these steps.
If possible could you share your experience at user side after the migration.
Thanks In advance

Houston SuperGeek said...

The user side in my experience was great. As long as you can use "Move" in the BES Management Console, the device is migrated over the air. The new BES sends an activation request OTA to the device and the device processes this request in the background. The users never even know that anything has changed. The only issue that I've found is that if you have devices that have been out of range or off for a while, your BES will log errors until it can properly contact the device and process the move.


Bharat said...

Hey Thanks for your pomt reply,

I am migarting 2 BES Servers with BES version 4.1.SP4 and 4.1.SP5 respectively to new servers with BES 4.1.SP6.

In your step 3 you have mentioned "(it should be in the ballpark of your production version). " will my migration face any issues because I am moving 2 different version of BES to BES 4.1 SP6


Bharat said...

Another question:

There are 2 ways of moving users:

1) right click on users from blackberry manager and move.
2)I have seen this step in BES doccument. They say when you install BES on new machine it will ask you to move users at that point say no and later run nbesmigration.exe from old server to move users.

Is there any difference between both the setps?

when you moved the users from blackberry manager did it effected users

Bharat Chadha

Houston SuperGeek said...

As far as the version, you are good to go if they are already sharing a database. They key to migrating the way I have outlined is to get all BES instances on a single BES database. As long as you are running 4.1, all of your instances can share an upgraded DB.

For the move, I used right-click, "Move" to migrate the users in small batches. This does not impact any other users, but again only works if you shared the back-end DB. The BESmigrate tool performs and all at once move of the users from one BES Server/DB to another. This is handy if you are migrating multiple separate instances with independant databases to a single BES isntance and DB.

Bharat said...


We have 2 database Server for BES can we merge them on one server. if yes how?
BES version 4.1.4
Sql 2000
BES Version 4.1.5

Houston SuperGeek said...

Sorry for the delay.. The scenario you described is very different. You can migrate the users all at once using the BESMigrate tool included with the installation for the BES. There is not, that I have done at least, a way to migrate small groups of users over the air, seamlessly, when the databases are separate.

Bharat said...


I am close to doing migration on BES. I have some questions.

1) how much time it takes to move users?
2)How time BES takes to send "Service Book".
2)Can we move all the users at once.

BHarat Chadha

Houston SuperGeek said...

Since you have 2 databases, you have to move all at once. If your databases were shared, each seemed to complete in under 5 minutes as a background process on the device. The BES logs an event at the start and completion of the OTA migration. Key thing for you is that you have two servers with two databases, so you have to migrate all at once if you want to do it without reactivating the devices.