counter hit make
How to transition from sms 2003 to Sccm 2007 - Notes from the field Tips & Tricks - sccm

SCCM - System Center Configuration Manager

Blog about SCCM 2007 aka SMS v4

How to transition from sms 2003 to Sccm 2007 - Notes from the field Tips & Tricks

Hi all,

I delivered my session at the Belgian Techdays, and I promised on my blog and during the session that I would share the scripts with all of you. So here they come. Most of these scripts were used during a side-by-side upgrade transition. The side-by-side upgrade transition process looks like this:

  1. Install SMS 2003 SP2 on new server
  2. Attach new SMS 2003 SP2 site as a child site
  3. Let objects replicate
  4. Break Parent – Child relationship
  5. Upgrade new Site to Configmgr 2007
  6. Install KB945898
  7. Migrate clients to new site
  8. Remove boundaries from original site
  9. Add boundaries to new site
  10. Decommission original site
  11. Migrate non-replicating objects (queries/reports)

Benefits

This method provides a smooth transition without impacting your current sms 2003 infrastructure until your new Sccm 2007 environment is fully up and running and has been tested successfully. This makes it one of the lowest transitioning methods available.

Challenges / manual steps to perform in this method are

  1. Verify all objects have migrated
  2. Configure Site Settings
  3. Migrate Folders and folder membership
  4. Make Software distribution functional in new site without boundaries
  5. Optional: Modify package source path
  6. Migrate hardware inventory customizations (SMS_def.mof)
  7. Export / Import queries
  8. Export / Import reports
  9. Configure security rights
  10. Non-Replicating Software Metering Rules

In this section I will go over these challenges, and when available introduce a script to tackle these challenges. If a script is available I will first explain what the script does, give an example command line, and add some comments/remarks.

Challenge 1: See Script1 later in this post

Challenge 2: This is left as manual exercise for the reader

Challenge 3: See Script2 & Script3 later in this post

Challenge 4: See Script5 later in this post

Challenge 5: See Script4 later in this post

Challenge 6: See Challenge 2

Challenge 7: Use the export and import wizard, my experience has been that importing the mof file in one pass tends to be error-prone. I usually cut the mof file into 200KB chunks and import the chunks one by one, this has resulted in a much less error-prone import process. Run the script to move the queries into the correct folder, see script 3 later in this post.

Challenge 8: See Challenge 7

Challenge 9: See Challenge 2

Challenge 10: Software metering rules can be configured to apply to this site, or to this site and all child sites. If your software metering rules are configured to only apply to the current site than they will obviously not replicate. This setting is unfortunately not configurable after the rule has been created.

Scripts to Tackle the challenges:

Just for the record these Scripts do not come with any form of support or guarantee, the scripts have served me well but should be tested in your environment as your mileage may vary!!! Furthermore the script aren't always the cleanest code, they don't log a lot of data and do use some hardcoded parameters that would be more appropriate in an argument.

Script1: Countobjects.vbs

Description

This script counts the number of Queries, Reports, Packages, Advertisement, Software Metering Rules, Collections and folders.

Example

Usage: Cscript Countobjects.vbs

Remarks

You run this script on both the old and new sms 2003 servers and compare the numbers, once all numbers match up you can perform step 4 and break the parent - child relationship.

Script2: SmsContainers.vbs

Description

This script allows you to export and import the folder structure from one sms 2003 environment to another.

Example

Usage: Cscript SmsContainers.vbs export s01folders.txt or Cscript SmsContainers.vbs import s01folders.txt

Remarks

Because Sms 2003 does not replicate the folder structure to child sites we need a script that duplicates this folder structure. At import time this script creates a file called conversionarray.txt that allows us to translate old folder id's into new folder id's. We will need this file in later scripts to move the objects back into the correct folders.

 

Script3: xyzfoldermembership.vbs

Description

There are multiple scripts with this filename where xyz is either adv for adertisements, pkg for packages, rprt for reports, qry for queries and swmtr for software metering rules. These script move the respective objects into the correct folder.

Example

Usage: Cscript.exe xyzfoldermembership.vbs export S01xyzfolders.txt or Cscript.exe xyzfoldermembership.vbs import S01xyzfolders.txt

Remarks

These scripts need the conversionarray.txt to be available to find the correct folderid to place the objects in.

 

Script4: Modifypkgsource.vbs

Description

This script modifies the packagesource of all packages to a new server.

Example

Cscript Modifypkgsource.vbs

Remarks

If the sourcefiles for your packages are stored locally on the site server, you'll need to modify the package sourcepath of all packages to a new server. First copy the source package folder structure to the new server and then edit the script to replace the oldserver and newserver strings with the values needed for your environment.

 

Script5: ModifyAdverts.vbs

Description

This script configures all advertisements to run from a remote distribution point.

Example

Cscript ModifyAdverts.vbs

Remarks

Because you cannot have overlapping boundaries we can only move the boundaries after all of the clients in a boundary have migrated. Because of this, clients in the new sccm infrastructure will not be able to find a local distribution point. So if you want these clients to be able to run advertisements these advertisements have to be configured to allow run from remote distribution point. If you want to change the value back later just change the bit value. Secondly if you already have some advertisements that are configured to run from remote dp, or download from remote dp, this script does not build a text file to store what it has changed, so the script doesn't allow you to revert back to the original situation. If this is something you require you'll have to adapt the script to save the original configuration.

The scripts can be downloaded here:

http://scug.be/files/folders/sccm/default.aspx

--

Enjoy.

"Everyone is an expert at something"
Kim Oppalfens - Sms Expert for lack of any other expertise
Windows Server System MVP - SMS
http://www.scug.be/blogs/sccm

Comments

pfrisk said:

Hi Kim,

How do I do to upgrade to SCCM 2007 if my new operation system is to be windows server 2008? Just now we are running Windows server 2003 R2 SP1 and SMS 2003 SP3.

As I understand SMS 2003 is not supported to run on Windows server 2008 accordnig to technet.microsoft.com/.../cc179956.aspx

If I first install a new windows server 2003 and then installs sms 2003, and then uppgrade to SCCM 2007 then a upgrade to Windows server 2008 is not supported accordning to technet.microsoft.com/.../cc161823.aspx

please help me.

/Patrik

# September 19, 2008 2:11 PM

pfrisk said:

Hi again!

I forgott to add my emailadress in my last post

patrik.frisk@mil.se

/Patrik

# September 22, 2008 9:41 AM

Umesh said:

Hi Kim,

I have a desktop machine(SCCMTEST) on which I was evaluating SCCM2007.I have created couple of packages and deployed it on all clients across the LAN.

After a successful evaluation now I want to migrate this SCCM2007 server to a new virtual server with all database and configurations.

The name of new server is different(according to naming convention of the servers).

Could you please tell me how are the exact steps I should take to accomplish this task.

Thanks,

Umesh

umeshmishra77@hotmail.com

# October 13, 2008 3:23 PM

Arran said:

Hi Kim,

Tried running the scripts but nothing happening.  Looks like I'm missing an extension.  Did you have anything else applied?

example - countobjects - Variable undefined connectsms

or am I missing something basic.

Thanks

Arran

# October 29, 2008 6:39 PM

grwittman said:

Kim,

Not sure if you are reading this thread anymore, but I have a questions as to Step #4 above (Break Parent – Child relationship).

What do you mean by this?:

--Have it manage its own vlan, disconnect from the network, then clean up SMS 2003 using "Preinst /DELSITE SiteCode ParentCode", reconnect, and then address listed challenges, and running scripts as needed...

--Or something else?

Thanks for your time

Gregg--

# May 29, 2009 6:46 PM