Subscribe to Windows IT Pro
April 01, 1997 12:00 AM

SMS Tuning Tips

Windows IT Pro
InstantDoc ID #36
Rating: (0)

Add SMS Senders and SQL Connections
Adjust the number of simultaneous distributions that SMS can support, particularly if you have a large number of child sites. You can tune many default values in SMS and SQL Server to your installation's particular needs.

Use the Sender Manager tool (sndrmgr.exe) to increase the number of Total Concurrent Sessions and Maximum Sessions Per Destination Site for each site that has secondary sites. The total must be one greater than the number of child sites connected.

SQL Server can also control the number of simultaneous connections; the default is 10. If you have more than two child sites, use the SQL Enterprise administration tool to increase the User Connections system parameter to 5 * (number of child sites + number of SMSADMIN users).

Screen 2 shows the SQL Enterprise Manager Server Configuration window. To increase User Connections, change the value on this screen, shut down, and restart SQL Server.

Adjust Size and Location of Database
Pay close attention to the size of the SMS database and TEMPDB in SQL Server. Allocate a separate SQL data device for the SMS database and log; otherwise you can't issue a SQL DUMP DATABASE command while the database is open. (Don't confuse a SQL device with a disk drive or volume set. A SQL device is a file allocated on an NT file system, inside which SQL Server can allocate one or more databases or log files.)

Size the SMS data device and database at least as large as the following calculation: 35KB * number of workstations + packages + groups + icons = size of site data device and database. For the SMS database log device and log, allocate 15 percent of the size of the SMS database.

The default installation of SQL Server creates a 2MB TEMPDB, which is far too small. With SMS, TEMPDB must be large enough to handle results sets from SMS internal queries and sorts for machine groups or sites. Define TEMP DB as at least 25 percent of the size of the SMS database. Unlike the SMS database and log, each of which has a separate SQL device, you must allocate TEMPDB so that the database and log use the same SQL device. Allocating TEMPDB in RAM improves the performance of some applications that do sorts or outer joins of tables. Because SMS uses TEMPDB only for a subset of its operation, allocating TEMPDB in RAM doesn't really help SMS. This rule is particularly true if allocating TEMPDB in RAM takes memory away from the pool of available memory for SQL to do database caching and reduces the amount available for SMS or general file system cache.

When you do a large number of workstation installations or package distributions, running out of space in the database logs is common. Review the allocation, and monitor the space utilization. If any database utilization exceeds 60 percent, expand the database. Back up the SMS database daily with the SQL DUMP DATABASE command, which will also clear the log. If you start getting SMS Database Full messages in the SMS log, you can also issue DUMP TRAN (databasename) WITH NO_LOG to clear the log.

Set the Truncate log on checkpoint for TEMPDB. This global parameter affects any application using this SQL Server. Setting this option is sometimes not possible if applications that require greater recoverability share the SQL Server.

Reduce SMS Logging
Reduce logging overhead to improve SMS efficiency. Turn off as many SMS logs as you can, and put the SMS log on a separate physical disk. For example, you seldom need the ALERTER and INVPROC logs.

SMS sets tracing to automatically start when SMS services start. You can disable tracing via the SMS Service Manager, but the next time you start SMS, it will enable tracing again. To disable tracing for individual services, use the Registry editor (regedt32.exe) to open HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\SMS\TRACING on the SMS site server system. For each service, open the Registry key (for example, SMS_ALERTER or SMS_INVENTORY_DATA_LOADER) and change the subkey value to 0 to disable tracing.

Placing the SMS logs on a separate physical disk device also reduces logging overhead. SMS uses a forced write, which flushes the disk cache and forces an I/O. This procedure ensures that SMS writes all logs to disk to help determine problems. But this procedure will seriously affect the performance of other system components, such as the SQL log, if the SMS logs are on the same device.

Reduce Duplication
Don't distribute the same DLLs with every package: If you use SMS to distribute several applications written with tools such as Visual Basic or Powerbuilder, you can distribute several megabytes of duplicate files with each package. But this process takes unnecessary time and wastes disk space on the client workstation and the distribution servers.

Move the runtime DLLs from the application package, and create a package for the shared elements only. Put these DLLs in the Windows System or System32 directory, and you won't need an addition to the path.

Use Server Shares
Share off Server Share Packages distributes faster than Run Command on Workstation Packages. The ability to share server packages makes the distribution quicker. When an update occurs, SMS must query all workstations that a package resides on. The server share helps the space on the client machines and allows quicker distribution. However, a Share off Server Share Package can increase network traffic and reduce response time. Consider both factors when deciding which way to distribute a package.

Updating a server share package is difficult because SMS typically can't replace files on the distribution server for an application that is in use. With SMS 1.2, you can make an NT Server Registry change to force a release of the open files and let SMS update the files. To enable this feature, on the SMS site server, change the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Components\SMS_Despooler and set the Forced Disconnect Key to 1. Be aware that this procedure can abnormally exit a user from an application. To get around this problem, distribute a new package for the update. Once you've successfully distributed the package, update the icon in the program group to point to the new package.

Reduce Inventory Frequency
Using frequent inventory collection intervals can swamp a system in no time. SMS needs to take inventory once a week or less often, if possible.

To see how busy your system is when it processes inventory, look at the timestamp on the MIF files in the \site.srv\inventry.box\ subdirectory. If you have more than 30 minutes to an hour backlog at the hours of peak login, you can overload your SMS server.

Clean Up Database
Run the DBClean utility monthly to clean old history records, collected files, and deleted and duplicate systems. Unnecessary rows in the database slow the system.

Make SMSADMIN Load Faster
When you launch SMSADMIN, by default it opens the sites window and runs a background query against all computers in the site hierarchy. This process can be time consuming in a large installation when you log on to the central site, particularly if you're using Remote Access Service (RAS) or some other slower link back to the SQL Server.

Open the PREFERENCES dialog in the SMSADMIN, and disable the background query. SMSADMIN will load 20 seconds to 30 seconds faster.

Upgrade
Many people postpone maintenance for months for fear of disrupting a stable environment. With SMS, get to the latest software levels fast. Upgrade to SMS 1.2 Service Pack 1 and SQL 6.5 Service Pack 2 on all your SMS sites. Download the upgrades from Microsoft's Web site at http://www.microsoft.com/kb/softlib. These levels fix many bugs that have plagued SMS since its introduction. Microsoft has concentrated on stability-enhancing bug fixes for the past nine months instead of adding sexy new features. Do yourself a favor and implement the fruits of Microsoft's hard work.

SMS Tuning Tips RELATED ARTICLES IN WINDOWS NT MAGAZINE
Nathaniel Bowman,
- "SMS Server and Client Setup," June 1996
- "SMS Server and Client Setup, Part 2," July 1996
Mark Eddins,
- "Customizing Systems Management Server," January 1997
- "Customizing Graphics for SMS Custom Inventory Objects," March 1997
Spyros Sakellariadis,
- "SMS: Inventory Your Desktop Systems, Part 1," May 1996
- "SMS: Inventory Your Desktop Systems, Part 2," June 1996
- "SMS: Inventory Your Desktop Systems, Part 3," July 1996

To properly use SMS as a software distribution tool, you must understand how SMS performs distribution. Distribution to a workstation is a three-phase operation.

Related Content:

ARTICLE TOOLS

Comments
    There are no comments to display. Be the first one!
You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.