You are browsing the archive for System Center Configuration Manager.

Avatar of timdk

by timdk

Week in Review – CW20

9:05 am in Configuration Manager, Events, Microsoft Intune, System Center by timdk

Weekend again – and a few blips on the radar that I wanted to read up upon:

And off course there was TechEd NA – instead of individually listing up everything that caught my attention here are some quick tips:

See you next week!

Tim

Avatar of timdk

by timdk

Week in Review – CW19

9:05 am in Configuration Manager, System Center by timdk

Last week I promised to publish a weekly list of interesting “things” I see flying by during a busy work week on which I try to catch up over the weekend. This is my second post in the “Week in Review” category and here are the topics that caught my attention during this week.

That’s it for this week. Happy Reading!

Tim

Avatar of timdk

by timdk

System Center R2 General Availability

12:10 pm in Configuration Manager, System Center by timdk

In case you missed the announcement last week: System Center 2012 R2 will be available on October 18th.

"In important news today, we are extremely excited that on October 18th, eligible customers will able to download Windows Server 2012 R2, System Center 2012 R2, and use the latest update to Windows Intune. This is the same day that Windows 8.1 will be available to consumers and businesses worldwide."

A detailed overview of what is new in System Center 2012 R2 Configuration Manager can be found on Technet.

Avatar of timdk

by timdk

Implementing Configuration Manager 2012 SP1 Cumulative Update 2

9:26 pm in Configuration Manager by timdk

In the past I had already published a post on implementing CU1, this is a similar post describing my experiences and findings while installing Cumulative Update 2 for Configuration Manager 2012 Service Pack 1 in my lab environment.

Important: there is a bug in CU2 which prevents you from installing Secondary Sites once the CU has been applied. Together with 2 colleagues we have found a workaround for the issue, however this is not confirmed to be supported. At the moment of writing this post I am not aware of any supported workarounds or fixes for this issue. In the meantime Microsoft has published a blog post on the issue which confirms the issue and also lists possible workarounds.

The installation binaries for the Cumulative Update can be downloaded here: http://support.microsoft.com/kb/2854009

As per the documentation, this CU is applicable directly to the following components:

  • CAS
  • Primary Sites
  • Secondary Sites
  • SMS Provider
  • Console

Additionally it contains updates for the following components:

  • CAS
  • Primary Sites
  • Secondary Sites
  • SMS Provider
  • Consoles
  • Clients

Once we have reviewed the documentation and obtained the binaries we are ready to proceed with the installation. The lab environment infrastructure is rather simple: a standalone server with the site database and all roles hosted on a single (virtual) machine. No secondary sites at implementation time of this CU.

Site

Log on to the site server and make sure all open console connections are closed before running the installer:

image

Click Next on the Welcome Screen.

image

Accept the license terms and click next.

image

Make sure all prerequisite checks are successful and click Next

image

Enable the box to also update the console and click Next. Note this is new in CU2 – previously in CU1 the console update package had to be redistributed to the site server to update the locally installed console. This is no longer the case if this option is enabled.

image

Select the option to update the site database and click Next.

image

Leave the default setting to create the server, console and client packages and click Next. These packages will be useful later on for updating the remaining components in our infrastructure.

image

Provide package and program names for the Server package and click Next.

image

Provide package and program names for the Console package and click Next.

image

Provide package and program names for both Client packages and click Next.

image

Review the setup summary and click Install.

image

Click Next when the installation steps have been completed successfully.

image

Click Finish to close the installation wizard.

image

Note that more detailed information on the installation process can be found in the log file located in the Windows\Temp folder.

image

CU2 Installations are properly registered in ARP.

Entry for the site server:

image

And for the console:

image

In the Software Library workspace the packages for further distributing the CU2 have been created:

image

Make sure to distribute the content to your distribution points. This is not done automatically.

Consoles

My console on the site server has been updated already as part of the CU2 installation process. See above for details.

Any remaining remote consoles I could easily upgrade using a deployment and a query based collection containing machines with a console installed. This is the query I will use:

  • select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.
    ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceId = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName = "Microsoft System Center 2012 Configuration Manager Console"

Once the update is installed it is visible in ARP:

image

 

Clients

Upgrading any existing clients in the environment can easily be done using the pre-created packages. We will created query based collections for targeting the deployments. This is an example query for all x86 SP1 clients:

  • select * from SMS_R_System inner join SMS_G_System_SYSTEM on SMS_G_System_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_R_System.ClientVersion = "5.00.7804.1000" and SMS_G_System_SYSTEM.SystemType = "X86-based PC"

For the x64 clients we can use the same query but replace “X86-Based PC” with “X64-based PC”.

Once the CU2 has been applied the client version number is changed to 5.00.7804.1300.

image

Some of the client components also get the 1300 build number:

image image

If you would like to build additional collections for the SP1 CU2 clients you can use this query:

  • select * from SMS_R_System inner join SMS_G_System_SYSTEM on SMS_G_System_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_R_System.ClientVersion = "5.00.7804.1300" and SMS_G_System_SYSTEM.SystemType = "X86-based PC"

Again replace the "X86-based PC" with "X64-based PC" for the 64 bit clients.

The implementation of Cumulative Update 2 in my lab is now completed.

CU Around!

Tim

Avatar of timdk

by timdk

Implementing Configuration Manager 2012 SP1 Cumulative Update 1

8:00 am in Configuration Manager by timdk

A while back I had implemented Cumulative Update 1 (CU1) for System Center 2012 Configuration Manager Service Pack 1 in my lab environment. This post describes the implementation details and findings during the rollout of the CU. With the release of CU2 a few days ago, I am aware that I am running behind with posting this, but as the implementation process for this CU will be very similar I decided to still post this information.

An overview of the issues fixed in this CU are outlined in the following article: http://support.microsoft.com/kb/2817245/en-us .
This is also the location where you can download the installation binaries from.

As per the documentation this CU is applicable directly to the following components:

  • CAS
  • Primary Sites
  • Secondary Sites
  • SMS Provider

Additionally it contains updates for the following components:

  • CAS
  • Primary Sites
  • Secondary Sites
  • SMS Provider
  • Consoles
  • Clients

Let’s continue with the details on the actual implementation. Note that in the lab environment there is only a Standalone Primary site. There is no CAS or secondary sites to which the CU is to be applied.

Site

Make sure all open console connections are closed and run the installer:

image 

Click Next on the welcome screen.

image

Accept the license terms and click Next.

image

The prerequisite checker will run some initial checks. Click Next once all checks are successful.

image

Leave the option to update the database and click Next.

image

Leave the option to create the packages – these will come in handy for updating the other components in your Configuration Manager infrastructure.

image

Modify the Server package details if needed. Click Next.

image

Modify the Console package details if needed. Click Next.

image

Modify the details for the Client packages if needed. Click Next.

image

Review the installation summary and click Next to start installing.

image

Click Next once all installation tasks have completed successfully.

image

Click Finish. In my lab a reboot of the server was required.

image

Note that the site version remains unchanged after implementing CU1.

image

The CU1 is listed in Control Panel > Programs & Features.

image 

The packages for upgrading the other components have been created successfully.

image

At this point do not forget to distribute the content to your Distribution Points.

This concludes the upgrade of the site itself. Now we can further upgrade the remaining components in our infrastructure.

 

Consoles

Note that you have to deploy the console update also to the site server if the console was installed locally.

For deploying the CU1 to all consoles I had created a query based collection. This is the query that was used:

  • select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceId = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName = "Microsoft System Center 2012 Configuration Manager Console"

Deploy the console update package to the collection to update all remote consoles.

Once the CU1 for the console is installed it is also listed in Control Panel > Programs & Features:

image

 

Clients

Also for the clients I have created query based collections to deploy the CU1.

This is the query for the collection containing all x86 SP1 clients:

  • select * from SMS_R_System inner join SMS_G_System_SYSTEM on SMS_G_System_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_R_System.ClientVersion = "5.00.7804.1000" and SMS_G_System_SYSTEM.SystemType = "X86-based PC"

For the x64 clients I used the same query but replaced “X86-Based PC” with “X64-based PC”

Deploy the client update packages to the x86 and x64 client collections to update all existing clients.

The client version is updated to 5.00.7804.1202 once the CU1 has been applied:

image

To keep track of different client versions and for easy targeting in the future (additional hotfixes and updates) I also created collections for my SP1 CU1 clients.

image

This is the query for the collection containing all x86 SP1 CU1 clients:

  • select * from SMS_R_System inner join SMS_G_System_SYSTEM on SMS_G_System_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_R_System.ClientVersion = "5.00.7804.1202" and SMS_G_System_SYSTEM.SystemType = "X86-based PC"

For the x64 clients I used the same query but replaced “X86-Based PC” with “X64-based PC”

This concludes the implementation of System Center 2012 Configuration Manager SP1 Cumulative Update 1 in my lab environment.

Until next time!

Tim

Avatar of timdk

by timdk

Creating a Software Update Group based on an input file

3:29 pm in Configuration Manager by timdk

Depending on your patching process the way you structure and create Software Update Groups in Configuration Manager 2012 may vary. At quite a few customers I see a scenario where the monthly patch review board spawns a spreadsheet with the Updates to be released into the environment. Having to create a Software Update Group based on that spreadsheet manually can be a time consuming task for the Configuration Manager administrator.

With the new powershell cmdlets available in Configuration Manager 2012 Service Pack 1 I found out it was really straightforward to automate the creation of the Software Update Groups and populating them based on a csv input file. For someone like me, having very little experience with Powershell and scripting in general, it only took a few hours of playing in my lab to accomplish this. Lets have a look at the steps I’ve walked through.

Step 1 – The input file

 

20130520-SUGwithPowershell_01

Example of a .csv input file.

As a source for input we will use a csv file. As you will see later on, this type of file is very easy to use with powershell. If you need to start from an Excel (.xls, .xlsx) file you can easily save it in csv format.

The input file usually contains a lot of information on the updates to be deployed. The most common ones are the Article ID, Bulletin ID and the description of the update itself. I decided to use the description field as it is most likely a unique field. Fields like the Article ID and Bulletin ID can be applicable for multiple updates (eg for different updates per CPU architecture).The screenshot shows an input file from my lab.

Final part of this step is to copy the file on a dedicated folder on the site server.

Step 2 – Building the script

 

To automate the import we will be using 3 powershell cmdlets: Import-csv, Get-CMSoftwareUpdate and New-CMSoftwareUpdateGroup. Below is a short summary on what the cmdlets can be used for:

  • The Import-Csv cmdlet creates table-like custom objects from the items in CSV files. Each column in the CSV file becomes a property of the custom object and the items in rows become the property values. Click here for more details: http://technet.microsoft.com/en-us/library/hh849891.aspx
  • The Get-CMSoftwareUpdate cmdlet retrieves configuration settings for one or more software updates. More details on the cmdlet can be found here: http://technet.microsoft.com/en-us/library/jj850180.aspx
  • The New-CMSoftwareUpdateGroup cmdlet creates a software update group for Microsoft System Center 2012 Configuration Manager. More details can be found here: http://technet.microsoft.com/en-us/library/jj821751.aspx

The Import-csv cmdlet will be used to read the information from the input file. Based on the Displayname of an update we will use the Get-CMSoftwareUpdate cmdlet to determine the CI_ID that each update has in Configuration Manager. We will need the CI_ID’s as input for the New-CMSoftwareUpdateGroup cmdlet to populate the newly created Software Update Group.

There are two pieces of information we will need as input for the script: the path and name of the input file and the name of the new Software Update Group to be created. We should be able to provide these as parameters for the script and prompt for them in case the administrator forgets to specify them.

Putting all these elements together results in the script shown in the screenshot below:

20130520-SUGwithPowershell_02

The CreateCMSUG.ps1 script.

Save the script in the dedicated folder on the site server where the input file was saved previously.

Step 3 – Connecting via Powershell and running the script

 

20130520-SUGwithPowershell_03

Connecting to Powershell via the Console.

Connecting to the Configuration Manager site with powershell can be done via the console. Click the blue tab in the top left corner and select Connect via Windows Powershell. A new window will open and the prompt should look like PS %Sitecode%:\>

When running the script you can provide the required parameters immediately: the first one is the name and location of the input file and the second one is the name of the new Software Update Group. In case you do not provide them you are prompted.Notice that upon succesful creation of the Software Update Group the details of that SUG are shown. The LocalizedDisplayName property shows the name that was provided as input parameter for the script.

Step 4 – The result

 

20130520-SUGwithPowershell_06

The newly created Software Update Group

Open the Configuration Manager console and go to the Software Library workspace, then click Software Update Groups. Your newly created Software Update Group should be listed. If

it is not make sure to refresh the view. Optionally you can change the name of the Software Update Group by modifying its properties.

 

 

 

20130520-SUGwithPowershell_05

Current members of the Software Update Group

To check the membership you can either double-click the Software Update Group or right-click and select show members.

Conclusion: given the fact that I am not a scripting expert, there is probably much room for improvement on the script. As I am eager to learn more on Powershell with ConfigMgr I will further work on optimizing the script in the future. For now I have a quick and easy solution to create my Software Update Groups and save a lot of time.

The script can be downloaded here:CreateCMSUG Powershell script (2138)

Hope it helps!

Tim

 

Avatar of timdk

by timdk

Configuration Manager 2012 Technical Documentation download

10:30 am in Uncategorized by timdk

The May 2012 product documentation for System Center 2012 Configuration Manager is now available for download.

There are two formats available which allow you to have all the Configuration Manager 2012 documentation available at your fingertips.

Additionally you can download the Help Update Wizard to install a local copy of the System Center 2012 Configuration Manager Documentation Library (CHM) which contains a copy of the guides in the TechNet documentation library. This is useful if a computer running the Configuration Manager console does not have Internet access or if you want a standalone copy of the documentation in CHM format.

Download the files here.

Avatar of timdk

by timdk

ConfigMgr 2012 Day

4:00 am in Uncategorized by timdk

System Center User Group Belgium invites you to Configmgr 2012 day on July 4th 2012 !

It has been a few weeks since the official Configuration Manager 2012 release in Las Vegas at MMS 2012. So it’s time to provide the Belgian Configuration Manager Community a nice off-line event to share information about the new release.

During this event we will be joined by Wally Mead, Senior Program Manager for System Center 2012 Configuration Manager. Wally Mead has been with Microsoft for 20 years, he’s been in the Configuration Manager product group for the past 11 years, working on all versions of the SMS/Configuration Manager product. Wally will provide you with 2 in depth sessions and one surprise session that will be worth the whole trip!

The other sessions will be presented by the Belgian Configuration Manager MVP’s and SCUG members with in depth technical knowledge about System Center technologies. Don’t miss out on this opportunity to socialize with fellow Configuration Manager administrators to exchange knowledge and meet with one of the most popular Microsoft speakers of all time and have a nice lunch with the SCUG product experts. Join us for an event designed to stimulate new thinking and forge lasting relationships among a rema rkable group of IT professionals

I expect this is going to be the best ConfigMgr event of the year! If you are unable to attend the Best Of MMS event one month earlier, or you do plan to attend best of MMS but are up for some more deep diving into Configuration Manager 2012, this is an opportunity you cannot afford to miss.

Event Details:

Date: Wednesday, July 4, 2012 from 9:15 AM to 7:00 PM (GMT+0100)

Location: Business Faculty Brussel
St. Lendriksborre 6
1120 Brussels
Belgium

Click here to register. Do it now before it is too late!

See you there!

Tim

Avatar of timdk

by timdk

Building a lab environment with System Center Unified Installer – Part 3

4:00 am in Uncategorized by timdk

This post is the last part of this series. After defining the lab layout in Part 1 and doing the necessary preparations in Part 2. It is now time to run the System Center Unified Installer and watch our lab environment being built for us.

The installation needs to be ran with an account that has administrative permissions on all target computers. As such we will logon to the installer PC –OR1 in our case- with a domain administrator account and run the setup.exe from the UnifiedInstaller folder.

Now we need to walk through the wizard:

image
Click Install System Center and click OK on the pop-up.

image
Enter your product registration info and accept the license agreements before clicking Next.

image
Select the product you wish to install. For our lab we select Orchestrator, Configuration Manager and Operations Manager.

image
Specify the locations where the product installation sources can be found.

image
Accept the license terms and click Next.

image
Accept the license terms for the prerequisites and click next again.

image
Specify the location where the binaries for each prerequisite are stored.

image
Leave the default installation locations and click Next

image
Specify the target server names and click Next

image
Specify the domain administrator account as the service account and click Next.

image
Specify the name for the management group and the site code/site name for the CM site.

image
Decide whether to join the CEIP or not and click Next

image
Review the settings and click Install.

And now the beauty of the Unified Installer kicks in: you can leave the lab environment and spend some time away from your desk. When you return in a few hours your entire lab will be up and running. For our reference environment the installation took approximately 4 hours.

image
Once the setup is completed a summary page is shown. Verify all components were installed successfully and click close to exit the wizard.

Now would probably a good time to take a full snapshot of the environment again. At a later point in time, when you have completed specific tests, you can then always return back to this initial clean state.

All done!

Post installation note:

  • The Unified Installer installation process does not configure the memory for the backend SQL instances. You might want to configure the memory settings for each of them as per the best practices.

Conclusion: the Unified Installer offers a nice and fully unattended approach for deploying lab and demo environments for System Center 2012 products. Use it to start building your lab environments now!

Avatar of timdk

by timdk

Building a lab environment with System Center Unified Installer – Part 2

4:00 am in Uncategorized by timdk

In the first part of the series we have outlined the requirements and the topology for the lab environment. Now we will start preparing the environment in which the System Center Unified Installer will be run.

Server Preparations

Except for the DC1 all virtual servers are configured with the following specs:
– 2 x CPU
– 2 Gb RAM
– 40 GB Hdd (SYSTEM)
– 1 NIC connected to the virtual switch (private)

Note: do not configure these systems with less then 2 CPU’s and 2 Gb of memory or the Unified Installer configuration wizard will not allow you to continue with the installation.

The DC1 server is configured as follows:
– 1 x CPU
– 512 Mb RAM
– 40 Gb Hdd (SYSTEM)
– 1 NIC connected to the virtual switch (private)

Base configuration for all 4 machines:
– Windows Server 2008 R2 with Service Pack 1
– Networking configured (see topology figure in part 1 for details)
– .Net Framework 3.5.1 feature is enabled

Domain Setup

The DC1 server is promoted to become a domain controller for the Sandbox.Lab domain. DNS is installed and configured at the same time. For future purposes DHCP is also installed on the DC1 server.

Additionally an Organizational Unit called Servers\SC2012 was created. This is where the following computer objects will be placed: OR1, CM1 and OM1.

As this is a lab environment I decided to turn off the Windows Firewall on the machines. For this I implemented a GPO called “SC2012 srv config”. The FW configuration is done as follows: go to Windows Settings > Security Settings > Windows Firewall, then open properties and on the domain profile tab set firewall state to "Off".

Preparing the installer PC

The Installer PC will be the actual Orchestrator machine in the lab environment.

To make it possible for the remote boot strap process to complete successfully, some local policies need to be modified:

  • Computer Configuration / Administrative Templates / System / Credential Delegation / Allow Delegating Fresh Credentials
  • Computer Configuration / Administrative Templates / System / Credential Delegation / Allow Delegating Fresh Credentials with NTLM-only Server Authentication

The detailed procedure on how to do this is available here.

Preparing the target PC’s

Keep in mind that the Orchestrator machine in our scenario is not only the Installer PC, at the same time it is also a target PC.

Also here some local policies will need to be modified, for this we will update the “SC2012 Srv Config” GPO that was created earlier:

  • Computer Configuration / Administrative Templates / Windows Components / Windows Remote Management (WinRM) / WinRM Service / Allow automatic configuration of listeners
  • Computer Configuration / Administrative Templates / Windows Components / Windows Remote Management (WinRM) / WinRM Service / Allow CredSSP authentication
  • Computer Configuration / Administrative Templates / Windows Components / Windows Remote Shell / Allow Remote Shell Access
  • Computer Configuration / Administrative Templates / Windows Components / Windows Remote Shell / Specify maximum amount of memory in MB per Shell

The detailed procedure on how to implement is available here.

Additionally you will need to run the following commands on each machine:

  • winrm qc –q
    winrm set winrm/config/service/auth @{CredSSP="True"}
    winrm set winrm/config/winrs @{AllowRemoteShellAccess="True"}
    winrm set winrm/config/winrs @{MaxMemoryPerShellMB="2048"}

This concludes the preparations – at this point I would recommend to take a snapshot of the entire virtual environment.

Preparing the installation sources

Once the basic infrastructure is ready we need to prepare the installation sources. We will need all System Center 2012 product binaries and all binaries for any prerequisites needed to complete the installation of those products. Additionally we will need the binaries for SQL Server 2008 R2 binaries plus Service Pack 1 and CU4.

At MMS 2012 the attendees were handed out a USB stick with all the required sources to deploy a lab environment. So we were lucky enough not having to download and prepare all sources. This is how the layout of the USB stick looks like. It gives an idea on how you could structure the binaries as you download them:

This is the root of the drive, you will only need the marked folders:
image

These are the contents of the prerequisites folder, the names are self-explaining:
image

And these are the contents of the SystemCenter2012 folder. For our lab scenario only the marked ones are required:
image

Make sure that all binaries are available on the installer PC, in our lab this will be the OR1 machine which will be running System Center Orchestrator.

That’s it for now.

In the final part of these series we will walk through the Unified Installer installation process.