Perfil de OperationsOperations ManagerBlogListas Herramientas Ayuda

Blog


25/06/2008

Latest and Greatest MPViewer (Version 1.7)

Last week, Boris Yanushpolsky released MPViewer 1.6, which added exporting to Excel functionality. However, a programming bug caused the MPViewer to not be able to view the Exchange 2007 (also known as Exchange 12) MP in HTML (http://blogs.technet.com/stefan_stranger/archive/2008/06/25/goaaaal-mpviewer-with-export-to-excel.aspx), a feature Boris added last October.

Boris has corrected the issue and added some additional new features while he was at it - including frequency for performance viewers and breaking out monitors by type. You can get version 1.7 at http://blogs.msdn.com/boris_yanushpolsky/archive/2008/06/25/mpviewer-1-7-now-works-with-latest-e12-mp.aspx.

The MPViewer, a free utility (and not officially supported by Microsoft) displays what’s in a management pack before importing it. Boris posted the earliest versions of the MPViewer in October 1007 (http://blogs.msdn.com/boris_yanushpolsky/archive/2007/10/10/what-s-in-my-management-pack.aspx), and has been making numerous enhancements to it.

You can download Version 1.7 from http://blogs.msdn.com/boris_yanushpolsky/archive/2008/06/25/mpviewer-1-7-now-works-with-latest-e12-mp.aspx.

MPViewer 1.7

18/06/2008

TIP: about leaving messages

From time to time, people leave us email messages rather than comments. That's great, and we welcome the opportunity to respond.
However, almost half the messages we get we cannot respond to, because the person emailing us did not configure their communication preferences settings to allow a response!
Please verify that your settings allow a response prior to leaving a message  so we are able to get back with you.
Thanks! - Kerrie, Cameron, John, and Andy
 

Hyper-V, OpsMgr and Unix? – Part 2

In Part 1 of this series, we discussed installing a Unix system in Hyper-V (see http://cameronfuller.spaces.live.com/blog/cns!A231E4EB0417CB76!1273.entry). In this article, we will take our Unix system and integrate it into Operations Manager using Cross-Plat (X-Plat) functionality. Our ultimate goal is to provide an environment with Microsoft virtualization technologies on 64-bit UNIX platforms, which we can then monitor using Operations Manager 2007.

Historically, OpsMgr 2007 has relied upon third party vendors to provide monitoring for non-Microsoft Operating Systems. With the addition of X-Plat, Microsoft can now provide out-of-the-box monitoring for a number of Unix-based Operating Systems. For information about the X-Plat announcement, see Kerrie's write-up at http://www.networkworld.com/community/node/27354. To summarize that article, the Microsoft-provided agent running on the Unix system is open source, and integrates seamlessly with the Operations Manager 2007 environment. The X-Plat extensions are currently available at Microsoft’s Connect beta site (http://connect.microsoft.com).

It is extremely important to note that all the software discussed here currently is NOT production-released code. These are RC and Beta versions of software only. Please do NOT install this configuration in a production environment, as it will not be supported software. This article is specifically an example of evaluating some of the potential upcoming functionality.

As background, we currently have a host system running Windows Server 2008 with Hyper-V. This environment includes a domain controller and OpsMgr server (RMS) along with a Unix (SLES 10.2, 64-bit) server.

Step 1: X-Plat download and Install

After downloading the X-Plat extensions from the Connect site and installing the X-Plat software (SetupSCX.msi), next step is to add the management pack(s) for X-Plat as shown below. As this was a test environment, we added all the Unix-related management packs, as shown in the following two screenshots:

100101 

Step 2: RunAs Accounts and RunAs Profiles

For details on how to configure the RunAs accounts and profiles, see the "Configuration of Run As Accounts and Run As Profiles" section in the SCX-PlatSetupGuide.doc. This document is part of the X-Plat (OpsMgr2007-CrossPlatform-Beta.zip) download on the Connect site.

Step 3: X-Plat Agent Deployment Debugging

With the management packs successfully installed, the next step is to install the agent on the Unix system. You can push agents with the Operations console in the Monitoring space. Navigate to the Monitoring -> Cross Platform Servers -> Overview section, as displayed below:

102  

Starting the Wizard brings up a welcome screen that explains the function of the wizard.

103 

The wizard begins with discovering the remote system. We can discover the system in several ways:

  • IP address
  • DNS name (as used in this example)
  • address range

Information required by the wizard includes

  • Providing credentials for the user name to deploy the agent
  • Specifying if the account is a superuser account
  • Providing the port number the Unix system has for SSH (port 22 by default)

In the screenshot below, we deployed the agent by its fully qualified name, specifying a full privilege account created on the Unix system, and using the default port of 22 to connect for SSH (which is used to deploy the agent to the Unix system).

104 

The next screen shows the computers we will discover and deploy an agent to, and the configuration for those systems (this consists of the scope of the discovery, the SSH port, and the credentials to use). In this case we have specified a scope of 192.168.1.84, port 22, and credentials of Administrator.

105 

The screen below indicates a successful discovery where the system was discovered, and then the attempt to deploy the agent. This is when our first issue was encountered: the agent failed to deploy to the Unix system.

106 

Because the agent did not deploy, it was time to troubleshoot.

To troubleshoot, we tested connectivity from the OpsMgr server to the Unix server. The connectivity test used a telnet from the OpsMgr server to the IP address of the Unix system. The telnet failed; we then determined it was necessary to hard-code the name of the Unix system in DNS and/or the host file, and also shut down the firewall on the Unix system to enable port 22 to allow the SSH connection. We used the the YaST Control Center's Firewall Configuration panel to make these changes. The firewall was turned off, as shown below. Our changes enabled connectivity from the OpsMgr server to the Unix server on port 22 using the Unix server name.

110

After resolving the communication issues to the name/port of the Unix system, it was now time to deploy the agent. This required rerunning the wizard to complete discovery and start the deployment.

116 

We thought we were in good shape, but this actually led to our next hiccup. In Part 1 of this series, we used a SLES 10.2 x64 system. This is NOT currently a supported platform. That “little” Oops hit at this point. OOPS!

117

After getting this far, the system could not actually be managed with OpsMgr, until Barry Shilmover of Microsoft gave us a good hint: A manual installation might work well in this situation.

Step 4: X-Plat Manual Agent Deployment

Our next step was to try manually installing the agent on the Unix system. Transferring data between these virtual machines was not simple! (See http://cameronfuller.spaces.live.com/blog/cns!A231E4EB0417CB76!1264.entry for reference.) The easiest approach was installing FTP on the OpsMgr server and placing the X-Plat installation file in the FTP site. For this system, the SLES 10.1 x86 version of the software was transferred to install, as shown in the next three screenshots (the agent installation was part of the UnixAgents.zip file).

131 

132 

133 

After completing installation on the Unix system, we re-ran discovery on the OpsMgr server - which now could successfully start monitoring the Unix system, even though it was on an unsupported platform!

135

Step 5: X-Plat Integration with the Health Explorer

After our initial discovery of the system, the pieces of Health Explorer actually populated were rather limited. These included the Availability/Unix Heartbeat Monitor, and the Configuration pieces.

142 

After a little while, additional sections started appearing (these are highlighted below in Red). The Operating System Availability Rollup and each of the core services were added, and the Performance counters started gathering data as well.

150 

A while later, additional Health Explorer items started appearing. These included the Hardware Availability Rollup and the Hardware Performance Rollup sections, outlined in Red below.

151 

One of the coolest parts of the X-Plat story is how seamlessly it integrates with OpsMgr 2007. The look and feel of the functionality is designed to look very similar to Windows Operating System monitoring. Some good examples of this include:

Performance / Logical Disk:

203 

Performance / Memory Utilization:

204 

Operating System Performance:

202 

SUSE Diagram View:

200 

If someone said earlier that this year we would be able to run a Unix x64 system within a Microsoft Virtualization environment and to use all Microsoft code to monitor it in Operations Manager 2007, it would have been laughable. However, it is working, and very close on the radar to being a publicly available solution!

Lessons Learned:

A few good lessons learned while doing this process:

  • Use the full documentation available as part of the Cross-Plat documentation, including the SCX-PlatSetupGuide.doc, and the Integration_Components_for_Linux_Read_Me.docx file.
  • Prior to trying to discover or deploy OpsMgr agents to the Unix systems, do a test telnet to the fully qualified name of the system using port 22. If the name does not resolve, either add a DNS entry and/or a host file entry for the fully qualified name of the system. Also, turn off the firewall on the Unix system as it is enabled by default.
  • Download a supported version of the Unix Operating System by verifying them with the documentation on both X-Plat and Hyper-V. At this point in time, the OS/version compatible with both products is SLES 10.1 x86.
  • Manual agent installation may work for platforms that are not officially supported. After installing those agents, they can be viewed within OpsMgr.

UPDATE: Ian Blyth wrote up a great article on CrossPlat, which is available at http://ianblythmanagement.wordpress.com/2008/06/24/xplat-part-2-the-install/.

16/06/2008

The ProcessMonitor management pack in System Center Operations Manager 2007 Unleashed

The following question arose in the OpsMgr management packs newsgroup:

I have the SCOM Unleashed book (great book!) and imported their MP which among another things monitors Windows processes. However, it came with no instructions on how to actually use it except to configure it via overrides.

Has anyone figured out how to use this MP? Also, is it possible to monitor memory or total CPU time for a particular Windows process? I'd like to setup a rule that says something like if process application.exe has been running longer than x minutes, or memory usage is great than y, alert me.

Ok, here's how it works:

The ProcessMonitor is a "mini" management pack that runs a WMI query. The query performs a:

select * from Win32_Process Where Name = (the parameter passed by the script for the name of the process to monitor).

Any fields available within the Win32_Process WMI query should be easy to integrate with the script. The script itself can be found within the Operations console in the Authoring space. Navigate to Authoring -> Management Pack Objects -> Monitors. Then look within System Center Managed Computer (Any OS) -> Entity Health -> Availability -> ProcessMonitor. On the properties for the monitor, the script is available to be edited from the Script tab.

The fields that appear as available within Win32_Process are:

  • Caption
  • CommandLine
  • CreationClassName
  • CreationDate
  • CSCreationClassName
  • CSName
  • Description
  • ExecutablePath
  • ExecutionState
  • Handle
  • HandleCount
  • InstallDate
  • KernelModeTime
  • MaximumWorkingSetSize
  • MinimumWorkingSetWize
  • Name
  • OSCreationClassName
  • OSName
  • OtherOperationCount
  • OtherTransferCount
  • PageFaults
  • PageFileUsage
  • ParentProcessId
  • PeakPageFileUsage
  • PeakVirtualSize
  • PeakWorkingSetSize
  • Priority
  • PrivatePageCount
  • ProcessID
  • QuotaNonPagedPoolUsage
  • QuotaPagePoolUsage
  • QuotaPeakNonPagedPoolUsage
  • QuotaPeakPagedPoolUsage
  • ReadOperationCount
  • ReadTransferCount
  • SessionId
  • Status
  • TerminationDate
  • ThreadCount
  • UserModeTime
  • VirtualSize
  • WindowsVersion
  • WorkingSetSize
  • WriteOperationCount
  • WriteTransferCount

So there you have it!