Monday, 29 April 2013

Installing SCCM with a Clustered SQL Server


Overview.

Traditionally there is has never been a High Availability solution for SMS, the only option available was to Backup the Databases.

Thankfully System Center Configuration Manager 2007 (SCCM 2007) now has the ability to support a Clustered SQL Server Instance.

Unfortunately, the documentation for how to install SCCM 2007 with clustered SQL Server is poor and can lead to problems with the installation and application.

Requirements pre SCCM Installation. 

Ensure Kerberos is enabled on SQL Cluster.

Ensure Kerberos is enabled on each of the SQL Cluster Nodes.

Although Kerberos must be enabled on the cluster for normal SCCM operation, the SCCM pre-requisite checker apparently does not check for this.

As a result it allows the install to go ahead and ends up installing directly to the individual nodes instead of to the SQL cluster.

This is because SCCM can not see the cluster since Kerberos is not enabled.

When using a clustered SQL Server instance to host the site database, TCP/IP network protocol communication is required for each SQL Server cluster node network connection to support Kerberos authentication.

The named pipes communication protocol is not required, but can be used to troubleshoot Kerberos authentication issues.

Create Dummy Files on Each Disk.

Create a dummy file NO_SMS_ON_DRIVE.sms on all disks at the cluster, execpt %systemdriv%.

This restricts the SCCM installer to install components on the SQL Cluster Instance %systemdrive% only!

Ensure SCCM Machine Has Rights in SQL.

Ensure primary site server has admin rights on each of the SQL Cluster Nodes.

If the local admins group has been removed from the sysadmin SQL Server role (SQL Server best practice), then we need to add the site server computer account to that group as well as the local admins group.

Site component manager needs admin rights on each node to install the SCCM backup and recovery components on the SQL Server nodes.

Note. This must also be performed for every new node added to the SQL cluster in the future.

Register SQL Server Cluster Virtual Name in Active Directory.

By default, Windows does not register SQL Server Cluster Virtual Name in Active Directory.

To facilitate a successful installation of SCCM 2007 on Clustered SQL Server, it must be registered.

Run setspn.exe utility as follows:-

It Can be Downloaded from the Microsoft Download Center


Execute setspn MSSQLSvc/SQLSERVER1:1433 

Execute setspn MSSQLSvc/SQLSERVER1.mydomain.com:1433

Where :-

SQLSERVER1 is the Virtual Name
1433 is the SQL Port
SQLSERVER1.mydomain.com is Fully qualified domain name for SQL Server cluster.


Support for SQL Server 2008. 

SQL Database Engine. 

Microsoft added support for SQL Server 2008 with SCCM along with this update they also made changes to the admin console OSD driver management node (under Operating System Deployment -> Drivers).

This results in an error in the Drivers node when running SCCM 2007 R2 SP2 with SQL Server 2008.

To overcome this, there is a hotfix available :-


SQL Reporting Services. 

The Microsoft SCCM 2007 R2 SQL Reporting Services feature provides a set of tools and resources that help you use the advanced reporting capabilities of SQL Reporting services from the Configuration Manager console.

Prerequisites for SQL Reporting Services.

Before we can use SQL Reporting Services in Configuration Manager 2007, we must configure a reporting services point.

The reporting services point is a site system role that must be configured on a server running Microsoft SQL Server with the Reporting Services component installed.

For more information about configuring Reporting Services in SQL Server,

When you install a SQL Reporting Services Point, Configuration Manager 2007 queries Windows Management Instrumentation (WMI) for installed instances of SQL Reporting Services.

The report folder is installed on the first instance of SQL Reporting Services found by the WMI query.

If you have installed multiple instances of SQL Reporting Services and are unsure about whether the instance on which you want to install the report folder is the first stored in WMI, it is recommended that you install the Reporting Services Point on a computer running only one instance of SQL Reporting Services.


 To Create a Reporting Services Point.


In the Configuration Manager console, navigate to System CenterConfiguration Manager / Site Database / Site Management / <site code>-<site name> / Site Settings / Site Systems.

Determine whether to create a new site system or to add the reporting services point site role to an existing site system, and then follow the associated step.

To create a new site system and add the reporting services point role:

Right-click Site Systems, click New, and then click Server.

On the General page of the New Site Role Wizard, specify the name of the server that will be used to host the reporting services point.


To add the reporting services point role to an existing site system:

Right-click the site system name, then click New Roles.

On the General page of the New Site Role Wizard, configure the general settings for this site system, and then click Next. For information about the options you can specify on this page, see How to Add New Site System Roles. Click Next.

On the System Role Selection page of the wizard, select Reporting Services point, and then click Next.

On the Reporting Services Point page, specify the folder that will be created on the report server to contain the SQL Reporting Services reports used in Configuration Manager and then click Next.

noteNote
The default name for this folder is Reports.

Review the information shown on the Summary page, and then click Next.

Click Close to exit the wizard.


How to Install Configuration Manager Using a Clustered SQL Server Instance.


The Configuration Manager 2007 site database can be installed using a clustered virtual Microsoft SQL Server instance during setup by using the following procedures.

noteNote
During Configuration Manager 2007 Setup, the Volume Shadow Copy Service (VSS) writer will be installed on each physical computer node of the Microsoft Windows Server cluster to support the Backup Site Server maintenance task.

1.1      To install Configuration Manager using a clustered SQL Server instance to host the site database

  1. Create the virtual SQL Server cluster to host the site database on an existing Windows Server cluster environment.
  2. Add the machine account of the primary site server machine to the Local Administrators group of each Windows Server cluster node computer. This is required to allow the site server to install and configure settings later.
  3. In the virtual SQL Server instance, assign the sysadmin SQL Server role to the user account running Configuration Manager Setup.
  4. Start Configuration Manager Setup, and select to install Configuration Manager using custom settings.
  5. On the Configuration Manager Database Server page of the Configuration Manager Setup Wizard, enter the name of the clustered virtual SQL Server instance to host the site database and the name for the site database to be created on that instance by setup.
Important
During setup, you must enter the name of the virtual SQL Server cluster instance, and not the virtual Windows Server name created by the Windows Server cluster. Installing the site database using the Windows Server cluster virtual instance name will result in the site database being installed on the local hard drive of the active Windows Server cluster node, and it will prevent successful failover if that node fails.

 


1.2      To verify that the site database was installed successfully


  1. Verify that Configuration Manager 2007 Setup completed successfully by reviewing the ConfigMgrSetup.log file located at the root of the system drive on the primary site server computer.
  2. In the SQL Server  Management Studio console, verify that the site database was created successfully.
  3. In the SQL Server  Management Studio console, verify that the following roles were created for the site database:
    • smsdbrole_MP
    • smsdbrole_SLP
    • smsdbrole_RP
    • smsdbrole_PSP
    • smsdbrole_DMP
    • smsdbrole_siteprovider
    • smsdbrole_siteserver
  4. Verify that the following SQL Server database roles for the site database have been assigned with the appropriate machine accounts:
    • smsdbrole_MP (if management point installation was selected)
    • smsdbrole_siteprovider (the site server or remote provider that was specified)
    • smsdbrole_siteserver (the primary site server computer)





No comments:

Post a Comment