What is SMI-S? What is the EMC SMI-S Provider?
The first step in understanding the functionality of ECOM and the EMC SMI-S Provider, is to first answer the question of what is SMI-S? Essentially it is an attempt at standardisation of storage management and it’s related technologies to increase interoperability. This standardisation was created by The Storage Networking Industry Association (SNIA) who envisions “leading the storage industry in developing and promoting vendor-neutral architectures and standards” according to their mission statement. This is lead by the SNIA’s Storage Management Initiative (SMI). The Storage Management Initiative Specification (SMI-S) is a standard that has been developed by the SNIA.
How many more acronyms are there?
A few more.. but I’ll keep it short. These are more for reference than anything else.
- The SMI Architecture is based on Web-Based Enterprise Management (WBEM) from the Distributed Management Task Force (DMTF).
- The architecture is a client-server model that uses CIM-XML as the protocol. The client interface is the combination of the operations defined in CIM-XML and the model defined in SMI-S. The model is defined using the Common Information Model (CIM) and based on the CIM Schema. The EMC implementation of CIM is named ECIM.
- The CIM is an object oriented model based on the Unified Modeling Language (UML). Managed elements are represented as CIM Classes that include properties and methods to represent management data and functions.
What is ECOM?
The EMC Common Object Manager (ECOM) enables communications and common services for applications. ECOM supports the ECIM which is used to represent the wide variety of components found in data centers using the CIM schema. The CIM schema provides a common methodology for representing systems, networks, applications, and services as a set of object-oriented models that can be bound to real-world functionality. Management applications based on CIM can interact with resources such as data storage hardware from multiple vendors, without direct knowledge of the underlying systems.
CIM classes identify types of resources. A class can represent a broad category of resources or can be subclassed to represent a specific type. For example, the class CIM_NetworkPort represents a broad category of heterogeneous network communications hardware, while EMC_NetworkPort is a subclass that represents an EMC specific subset. While classes define types of things found in a managed IT environment, instances represent individual implementations of a class. A specific port at a specific network address is an example of an instance of class EMC_NetworkPort.
The ability to exchange information, retrieve data, execute commands, and discover available resources are also required to link the elements in a network. Before resources can be managed, they must first be discovered by management applications. The Service Location Protocol (SLP) defines a mechanism for locating services in a network. Applications looking for a service are called user agents (UA), and applications providing a service are called service agents (SA). In terms of SLP, ECOM acts as a service agent that advertises its address and capabilities. When a UA has found the ECOM-exposed services that it needs, it begins communicating directly with each ECOM instance via CIM-XML messages.
A successful SMI implementation
ECOM is vital to the successful implementation of SMI. In order to successfully implement SMI there are two requirements; A WBEM Server and a SMI Provider. A WBEM server is responsible for routing of requests and management of SMI Providers. An SMI Provider will use an Application Programming Interface (API) to communicate with devices and retrieve the information in CIM format. In this scenario the ECOM service and the EMC SMI-S Provider are paired together to successfully implement an SMI-compliant interface.
So what makes this the EMC SMI-S Provider as opposed to a generic SMI-S Provider? Due to the exceedingly large number of classes available in CIM and because of their broad nature, profiles were created. Profiles allow one to make use of CIM for specific domains. A profile defines the set of classes and properties that must be used to model the managed resource. The EMC SMI-S Provider is made up from the array providers. The profiles from these providers allow an SMI-S Client to retrieve information from, or make changes to specific storage systems.