Enabling Management of Open Source Software in System Center Using Standards
This post is a part of the nine-part “ What’s New in Windows Server & System Center 2012 R2 ” series that is featured on Brad Anderson’s In the Cloud blog. Today’s blog post covers standards-based management of open source software with System Center and how it applies to Brad’s larger topic of “Transforming the Datacenter.” To read that post and see the other technologies discussed, read today’s post: “ What’s New in 2012 R2: Enabling Open Source Software .”
Whether in the public cloud with Windows Azure, the private cloud with Windows Server and System Center, or a hybrid of both, running and managing open source workloads (such as Linux and JEE applications) is a key tenant of Microsoft cloud solutions. In this post, we will review the standards-based management approach used in System Center to manage open source software, take a detailed look at the management implementation in the UNIX/Linux agents for Operations Manager and Configuration Manager, and introduce System Center 2012 R2 improvements to these agents.
System Center 2012 R2 and Management of Open Source Software
System Center 2012 R2 is a great solution for management of the heterogeneous private cloud with Windows, Linux and UNIX workloads running side by side. With System Center 2012 R2, the portfolio of heterogeneous management capabilities has been substantially expanded and now encompasses:
- Inventorying and deploying software to Linux and UNIX with Configuration Manager
- Monitoring UNIX and Linux computers and services with Operations Manager
- Monitoring JEE Application Servers on Linux, UNIX, and Windows with Operations Manager
- Deploying Linux virtual machines and services with Virtual Machine Manager (and Windows Server Hyper-V)
- Backing up Linux virtual machines with Data Protection manager
In enabling the heterogeneous management features of System Center, our focus is on standards-based management. Open standards such as Common Information Model (CIM) and WS-Management play a key role in many of the heterogeneous management capabilities of System Center.
One of the primary benefits of a standards-based approach is that different implementations of similar technologies can be uniformly presented and managed. For example, a Linux server, AIX server, and Windows server may have very different implementations for identifying and reporting on operating system resources and performance (such as processor inventory and utilization), but by managing each of these servers through a management implementation based on CIM, the administrator or management software does not need to understand the specific architectures, APIs, and all details of each operating system’s conventions and implementations. Rather, a common interface and model is used to uniformly present key performance indicators and inventory. In turn, this allows management software, such as System Center, to tightly integrate management for a variety of platforms, with consistent presentation and experience throughout.
Figure 1 - A Linux Server Monitored in System Center 2012 R2 - Operations Manager
Implementing the Standards-Based Approach
In System Center 2012 R2, we continue our commitment to standards-based management of open source workloads, and have made a significant improvement in this regard by implementing a common CIM server in both the Operations Manager and Configuration Manager agents for UNIX and Linux.
In the Windows realm, a consistent CIM implementation has been available since the introduction of WMI (as far back as NT 4.0). Likewise, WS-Management (or WS-Man) has been available for Windows in Windows Server 2003 and beyond. However, expanding common management capabilities to a broad array of UNIX and Linux operating systems (and architectures) with these standards required new implementations.
The UNIX and Linux agents for Operations Manager consist of a CIM Object Manager (i.e. CIM Server), and a set of CIM Providers. The CIM Object Manager is the “server” component that implements the WS-Management communication, authentication, authorization and dispatch of requests to the providers. The providers are the key to the CIM implementation in the agent, defining the CIM classes and properties, interfacing with the kernel APIs to retrieve raw data, formatting the data (e.g. calculating deltas and averages), and servicing the requests dispatched from the CIM Object Manager. From System Center Operations Manager 2007 R2 through System Center 2012 SP1, the CIM Object Manager used in the Operations Manager UNIX and Linux agents is the OpenPegasus server. The providers used to collect and report monitoring data are developed by Microsoft, and open-sourced at CodePlex.com.
Figure 2- Software Architecture of the Operations Manager UNIX/Linux Agent
This CIM/WS-Man standards-based approach also brings benefits to the agent implementation itself. The resulting management agent is lightweight, with a small footprint and low impact to the monitored host. Additionally, such a CIM server and provider implementation is quite portable, allowing it to be consistently implemented across a broad matrix of UNIX and Linux operating system distros, versions, and architectures – while returning monitoring data with a uniform presentation. Lastly, the standards-based approach enables the Operations Manager server to UNIX/Linux agent communication with well-defined protocols (WS-Man over HTTPS) and established interfaces (WinRM).
A very similar agent software architecture is employed in the UNIX and Linux agents for Configuration Manager, first available in the System Center 2012 SP1 product. Like the Operations Manager UNIX and Linux agents, the Configuration Manager UNIX and Linux agents implement a lightweight CIM Object Manager and set of providers. While the Operations Manager agent providers are focused on system monitoring metrics, the Configuration Manager agent providers enable scenarios such as hardware inventory.
By adopting a standards-based approach to enabling and managing open source software, System Center 2012 R2 is able to deliver consistency in the standards, protocols, and management interfaces that are employed in managing Windows Server workloads and open source software.
Introducing Open Management Infrastructure in System Center
With System Center 2012 R2, UNIX/Linux agents for both Configuration Manager and Operations Manager are now based on a fully consistent implementation of Open Management Infrastructure (OMI) as their CIM Object Manager. In the case of the Operations Manager UNIX/Linux agents, OMI is replacing OpenPegasus. Like OpenPegasus, OMI is an open-source, lightweight, and portable CIM Object Manager implementation – though it is certainly lighter in weight and more portable than OpenPegasus.
An excellent introduction to OMI can be found on the Windows Server Blog, but some of the key features of OMI include:
- Very small footprint (the package size for Operations Manager UNIX/Linux agents has been reduced by half)
- Highly portable
- Simple provider extensibility
While these are immediately realized benefits in the System Center 2012 R2 UNIX and Linux agents, perhaps the most significant and exciting benefit of OMI can be found in the promise of real and broad cross-platform and standards-based management. OMI has been designed not just to be portable between UNIX, Linux and Windows, but also for devices and embedded systems. As an example, both Cisco and Arista are working on WS-Man/CIM implementations for network device management with OMI. Given the possibility of using a single protocol or mechanism to manage network and storage devices, baseboard management controllers and Windows, UNIX, and Linux servers, one can quickly imagine the scenarios this could unlock in the automation-centric cloud world we now live in. OMI’s portability and standards-based implementation open this management opportunity to a potentially incredible array of managed devices and entities and management platforms and tools with streamlined interoperability. Thusly, it is easy to see why OMI is a foundational implementation element of the Datacenter Abstraction Layer (DAL) concept.
Further discussion of some of the management scenarios that OMI, and a link to a great demo, can be found the PowerShell Team Blog.
As we continue to broaden the portfolio of management capabilities for open source software in System Center 2012 R2, we are reaffirming our commitment to open standards-based management, and aligning with exciting new models developing in the cloud era. The availability of OMI, and its adoption into the System Center agents for UNIX and Linux is another step forward in the realm of standards-based management. Now, a CIM and WS-Man based implementation used for management of Windows and Linux/UNIX can extend even broader to devices, embedded systems, and applications. This benefits the System Center user, as we continue to provide consistent experiences regardless of the managed platform, and this benefits the management ecosystem – as additional management providers and management tools can more fully and capably interoperate.
To see all of the posts in this series, check out the What’s New in Windows Server & System Center 2012 R2 archive