Thursday, 16 December 2010

Step by Step Upgrade Guide for Service Manager 2010 Service Pack 1 (SP1) - Part 1: Data Warehouse

Before I begin, it's important to stress that while this should guide you through the install, you should always start by reading the official upgrade guide (SM_UpgradeSP1.docx) found here:

This is part 1 - Data Warehouse SP1 Upgrade, but the first section is common across the different parts.

Things to do before SP1 Install
1) The upgrade cannot be done on a server that has an Operations Manager 2007 Agent installed.
I'm not going to screen shot the process as it's fairly straight forward.
Easiest way is to go to the Administration part of the SCOM console, Managed Agents, find the Service Manager servers and right click and choose uninstall.

2) Backup your Service Manager databases.
Again, very simple, either use the SQL Server Management Studio to back them up, or whatever backup solution you have (DPM, CommVault etc)

3) Backup your encryption keys.
To be honest, this should have been done when Service Manager was first installed.
If it was, then you can skip ahead as the same keys will work after the SP1 install so there's no point duplicating work.
If you didn't (shame on you) or you're not sure then use the Encryption Key Backup or Restore Wizard to back up the encryption keys on the Service Manager management servers.
This can be found on the SP1 media AMD64\Tools\SecureStorageBackup\SecureStorageBackup.exe
It's wizard based, just step through it.

4) If you've got a data warehouse, but haven't registered it with SCSM, now is the time to do it.  You can't upgrade it to SP1 until you have. See the procedure in “Registering with the Service Manager Data Warehouse to Enable Reporting” in the System Center Service Manager 2010 SP1 Deployment Guide for more details.

5) Self Service Portal - Company Logo backup.
If you replaced the original graphic with one of your own design, you must save a copy of your graphic. During the upgrade, SCSM_logo.png is replaced. After the upgrade, overwrite the SCSM_logo.png file with your version in the locations shown below:
%inetroot%\inetpub\wwwroot\System Center Service Manager Portal\EndUser\MasterPages\Images
%inetroot%\inetpub\wwwroot\System Center Service Manager Portal\Analyst\Images

Right, now for the fun bit!

Part 1 - Data Warehouse upgrade
The upgrade guide states that you should logon with an account with administrator rights, I prefer to logon to the data warehouse using the account that was used for the initial setup.

Next, you cannot start an upgrade if any data warehouse jobs or workflows are running. Use the following procedures to stop the data warehouse job schedules and wait for them to complete.

  1. List the data warehouse jobs by using PowerShell cmdlets
    a. On the computer that hosts the data warehouse management server, open PowerShell
    b. Type the following commands (each is a separate one so press enter after each):
    Set-ExecutionPolicy RemoteSigned
    Add-PSSnapin SMCmdletSnapIn

    c. A list of the data warehouse jobs is displayed. Use this list in the next step
  2. Disable data warehouse job schedules by using PowerShell
    a. Type the following commands for any job that was listed in the previous step:
    Disable-SCDWJobSchedule –JobName Extract_<DW management group name>
    Disable-SCDWJobSchedule –JobName Extract_<SM management group name>
    Disable-SCDWJobSchedule –JobName Transform.Common
    Disable-SCDWJobSchedule –JobName Load.Common
    Disable-SCDWJobSchedule –JobName DWMaintenance
    Disable-SCDWJobSchedule –JobName MPSyncJob
    Start-SCDWJob –JobName MPSyncJob
The last command to start the MPSyncJob will enable the ETL jobs to run to completion and after that, because all the schedules have been disabled, the jobs will stop.

3. To determine that the data warehouse jobs have stopped running
a. In the Service Manager console, click Data Warehouse.
b. In the Data Warehouse pane, expand Data Warehouse, and then click Data Warehouse Jobs.
c. In the Data Warehouse Jobs pane, observe the Status column for each data warehouse job. When the status for each job is listed as Not Started (The Manual says "Stopped" but after two hours of waiting I never saw it change from "Not Started"), then we're good to start the upgrade of the data warehouse management server.

4. Locate the SP1 media files (CD, ISO Mount or extracted files, it's your choice) and run setup.exe in the AMD64 folder (It will always be the AMD64 folder, not the x86 folder as the server components are x64 only). A quick splash screen and short extraction of files will be done.

Step though the wizard, selecting to upgrade the data warehouse on the first screen then accepting the license terms.

Check the pre-requistes screen (Yes I know I'm short on memory but it's my test box!)

On the next screen review the summary.  It's also a good idea to copy & paste the information for later reference/documentation.

Click install and let it get on with installing.

Untick backup encryption keys as we did that before starting the upgrade.  If you didn't, then you should have gone to Specsavers... do it now!

After upgrading the data warehouse management server, you should restart the System Center Management services and data warehouse jobs.  It may not need the service bouncing, but while we're working on the system it's certainly not going to damage it. 
In my case the service was stopped, so it's definitely something to check.

Use Server Manager to give the System Center Management service a restart by right clicking on it and and then click Restart.

Back to Powershell and use the following to re-enable the data warehouse jobs
Add-PSSnapIn SMCmdletSnapIn
Enable-SCDWJobSchedule –JobName Extract_<data warehouse management group name>
Enable-SCDWJobSchedule –JobName Extract_<Service Manager management group name>
Enable-SCDWJobSchedule –JobName Transform.Common
Enable-SCDWJobSchedule –JobName Load.Common
Enable-SCDWJobSchedule –JobName DWMaintenance
Enable-SCDWJobSchedule –JobName MPSyncJob
Start-SCDWJob –JobName MPSyncJob
The last command, Start-SCDWJob – JobName MPSyncJob, will enable the ETL jobs to run.
After running the powershell enable-SCDWJobSchedule cmdlets I was slightly worried that it was still showing them as not enabled.
Checking the console showed the same.
However, give it a minute and it enables them.

And that's about it!

Well, not quite.
It's worth checking the event log at this point.

I've got quite a few error messages relating to MP deployment and association.
Some I can ignore as they are related to my custom MP that's I'm busy testing.
Others, I'm not so sure. 
Management pack name: ServiceManager.Datawarehouse.Library
Management pack version: 7.0.6555.0
Management pack name: System.Software.Library
Management pack version: 7.0.6555.0
Management pack name: Microsoft.SystemCenter.Orchestration
Management pack version: 7.0.6555.0
Management pack name: Microsoft.SystemCenter.Deployment.Library
Management pack version: 7.0.6555.0
Management pack name: System.Hardware.Library
Management pack version: 7.0.6555.0

And the list goes on...

Now this is my test environment so it could be a number of things I've done, and I've yet to update the Management Server yet either.

I'll update this post with further findings as I do more of the upgrade and other boxes.

Coming next, Part 2 - Management Server SP1 Upgrade.

No comments: