82
Configuring Cisco IOS Configuration Engine
Information About Configuring Cisco IOS Configuration Engine
NameSpace Mapper
Configuration Engine includes NameSpace Mapper (NSM), which provides a lookup service for managing logical groups
of devices based on application, device or group ID, and event.
Cisco IOS devices recognize only event subject names that match those configured in Cisco IOS software; for example,
cisco.cns.config.load. You can use the namespace mapping service to designate events by using any desired naming
convention. When you have populated your data store with your subject names, NSM changes your event subject-name
strings to those known by Cisco IOS.
For a subscriber, when given a unique device ID and event, the namespace mapping service returns a set of events to
which to subscribe. Similarly, for a publisher, when given a unique group ID, device ID, and event, the mapping service
returns a set of events on which to publish.
CNS IDs and Device Hostnames
Configuration Engine assumes that a unique identifier is associated with each configured switch. This unique identifier
can take on multiple synonyms, where each synonym is unique within a particular namespace. The event service uses
namespace content for subject-based addressing of messages.
Configuration Engine intersects two namespaces, one for the event bus and the other for the configuration server. Within
the scope of the configuration server namespace, the term ConfigID is the unique identifier for a device. Within the scope
of the event bus namespace, the term DeviceID is the CNS unique identifier for a device.
Because Configuration Engine uses both the event bus and the configuration server to provide configurations to devices,
you must define both ConfigID and Device ID for each configured switch.
Within the scope of a single instance of the configuration server, no two configured switches can share the same value
for ConfigID. Within the scope of a single instance of the event bus, no two configured switches can share the same value
for DeviceID.
ConfigID
Each configured switch has a unique ConfigID, which serves as the key into the Configuration Engine directory for the
corresponding set of switch CLI attributes. The ConfigID defined on the switch must match the ConfigID for the
corresponding switch definition on Configuration Engine.
The ConfigID is fixed at startup time and cannot be changed until the device restarts, even if the switch hostname is
reconfigured.
DeviceID
Each configured switch participating on the event bus has a unique DeviceID, which is analogous to the switch source
address so that the switch can be targeted as a specific destination on the bus. All switches configured with the cns
config partial global configuration command must access the event bus. Therefore, the DeviceID, as originated on the
switch, must match the DeviceID of the corresponding switch definition in Configuration Engine.
The origin of the DeviceID is defined by the Cisco IOS hostname of the switch. However, the DeviceID variable and its
usage reside within the event gateway adjacent to the switch.
The logical Cisco IOS termination point on the event bus is embedded in the event gateway, which in turn functions as a
proxy on behalf of the switch. The event gateway represents the switch and its corresponding DeviceID to the event bus.
The switch declares its hostname to the event gateway immediately after the successful connection to the event gateway.
The event gateway couples the DeviceID value to the Cisco IOS hostname each time this connection is established. The
event gateway caches this DeviceID value for the duration of its connection to the switch.