Table Of Contents
VNE Persistency Mechanism
Persistency Overview
Alarm Persistency
Instrumentation Persistency
Topology Persistency
VNE Persistency Mechanism
Persistency is the ability to store information in the unit for later use. These topics describe the VNE persistency mechanism in Cisco ANA:
•
Persistency Overview
•
Alarm Persistency
•
Instrumentation Persistency
•
Topology Persistency
Note
These topics describe some of the persistency registry settings. Changes to the registry should be performed only with the support of Cisco. For details, contact your Cisco account representative.
Persistency Overview
Persistency information is stored across unit, AVM, and VNE restarts. VNE data persists during runtime when a VNE polls data from a device, and the VNE updates the files in the file system for changes in the device's response according to the persistency variables. When a VNE is started or restarted, the persistency information is read from these files once. Every normal polling or refresh that takes place after the first time will read the data from the device itself and not from the files.
VNE data persistency is lost in the following scenarios (but alarm persistency is saved):
•
A user manually moves the VNE to another AVM, or moves the parent AVM to another unit.
•
A high availability event occurs, causing a unit to switch over to the standby unit.
•
The device the VNE models is reconfigured (for example, a new sysOID or software version change).
The upgrade mechanism automatically clears all persistency files on Cisco ANA gateways and units. This option does not clear the alarm history that is stored in the Cisco ANA database.
Instrumentation Persistency
Instrumentation persistency is used mainly to:
•
Shorten the starting time of VNEs for devices. When the information from the local file system is used, the device's response time and network latency are eliminated; thus the VNE finishes modeling its first state very quickly.
•
Provide information about the old state of the VNE, to initiate alarms if the status has changed while the VNE was unloaded. For example, a Port Down alarm is initiated only if the port status was up and changed to down. This ensures that an alarm is not issued on ports which should be down. By maintaining information about the old state of the port, the system understands whether or not the current state is valid.
•
Help lower the CPU load on the device while starting when many polling commands are generated. Also, when persistence data is loaded from the unit, traffic bandwidth between the unit and device is much lower than when the system is loaded using "ordinary" device discovery and modeling.
For more information, see Instrumentation Persistency.
Topology Persistency
Topology persistency creates topology between devices on startup when the VNE is loaded, instead of performing the entire discovery process. Verification of the links is then performed. For more information, see Topology Persistency.
Alarm Persistency
Alarm persistency saves information about the VNE components that send alarms. When a VNE sends an alarm, the VNE can save this information (that it has sent an alarm of type X). This information can then be used by the VNE components after restarts to verify whether the VNE needs to send clearing alarms where changes have occurred in the device when the VNE was down. For more information, see Alarm Persistency.
Alarm Persistency
Alarm persistency enables the system to clear alarms that relate to events that occurred while the system was down. For example, a Link Down alarm is generated, and then the system goes down. While the system is down, a Link Up event occurs in the network, but because the system is down, it does not monitor the network. When the system goes up, the alarm is cleared because the system remembers that a Link Down alarm exists, and the system needs to clear it by sending a corresponding alarm.
Persisting events are held in the AlarmPersistencyManager. Each VNE contains an AlarmPersistencyManager object. Alarms are added to and removed from the AlarmPersistencyManager object in order to maintain the status of an event, whether it exists in the repository or not; that is, whether an up alarm or a clearing alarm has been generated. Two copies of alarm persistency information are maintained: one in the memory, and the other on disk.
At startup, the AlarmPersistencyManager retrieves the events persisting for the containing VNE.
Event data in the files is updated at the following times:
•
At shutdown.
•
After a change, when an event is added or removed.
•
After a specific interval of time has passed. This prevents data from being rewritten to the persistency file when a stream of events is added or removed during a short period of time, because the data is saved only after the specified period of time has elapsed.
Initialization
Alarm persistency is controlled by settings in the registry. Global alarm persistency information is stored in agentdefaults.xml. The major settings are listed in Table E-1. The settings for these configurable items only apply when trying to retrieve data from the persistency files. Individual event persistency information is described in Configuring Alarm Persistency for a Specific Event.
Note
All changes to the registry should only be carried out with the support of Cisco. For details, contact your Cisco account representative.
Table E-1 Default Settings for Alarm Persistency
Registry Entry
|
Description
|
Default Value
|
enabled
|
Enabled the persistency mechanism for this VNE.
|
true
|
writing-delay
|
Interval (in milliseconds) between the arrival of a new event or the removal of an existing event, and the writing activity of the persistency file.
|
300000 (5 minutes)
|
max-alarm-age-in-days
|
How many days an event remains in a persistency file before it becomes obsolete.
|
7
|
Retrieving Events
At startup, each VNE calls its AlarmPersistencyManager to load the persisting events.
If the file does not exist or is corrupt, no events are loaded. Faulty event objects are not loaded. Events which have been in the file for longer than the configured maximum age are not loaded. No age tests are held during ordinary runtime.
Storing Events
At shutdown, events are saved to the VNE's event persistency file as a precaution in case the events have not already been saved.
Removing an Event
An event is searched for and removed using the same information which was used to add it. The event is removed from memory because an up alarm (for example, a Link Up alarm) has been generated, and the persistency information is no longer required. After the removal, the AlarmPersistencyManager stores the events after a writing delay, as specified in the registry.
Removing an Event and Clearing an Alarm
The AlarmPersistencyManager is able to search for and remove an event, and send a clearing alarm for the event, if it is found that this information is no longer required because the alarm has been cleared.
After an event has been added to or removed from the AlarmPersistencyManager, a delayed message is sent to the AlarmPersistencyManager. Upon its arrival, the message triggers the events to be stored to the file.
Configuring Alarm Persistency for a Specific Event
Alarm persistency can be configured per event using the setting described in Table E-1. Event-specific persistency information is stored in event-persistency-application.xml.
Note
All changes to the registry should only be carried out with the support of Cisco. For details, contact your Cisco account representative.
Table E-2 Registry Setting for Alarm Persistency for a Specific Event
Registry Entry
|
Description
|
Default Value
|
alarm-persistency
|
Enable persistency for a specific event.
|
See Alarm Persistency Default Configuration
|
In the following LDP Neighbor Loss alarm, the LDP Neighbor Down event is persisted, but the LDP Neighbor Up event is not:
<key name="LDP neighbor loss">
<entry name="default">event-persistency-application/templates/generic persistency
event</entry>
<key name="LDP neighbor down">
<entry name="alarm-persistency">persist</entry>
<key name="LDP neighbor up">
<entry name="alarm-persistency">unpersist</entry>
Alarm Persistency Default Configuration
The following alarms are configured to be persistent:
BFD Connectivity Down
|
Fabric Hardware Syslog
|
BFD Neighbor Loss
|
Flash Card Removed Syslog
|
BGP Neighbor Loss
|
IMA Admin Down
|
Dual Stack IP Changed
|
IMA Oper Down
|
GRE Tunnel Down
|
Interface Status
|
LDP Neighbor Loss
|
Keepalive Set
|
MEP Down
|
L2TP Peer Not Established
|
MPLS TE FRR State Changed
|
L2TP Sessions Threshold
|
MPLS Interface Removed
|
LAG Down
|
Ascend Link Down Trap
|
LAG Link Down
|
Card Down
|
Layer 2 Aggregation Down
|
Card Down Syslog
|
Layer 2 Tunnel Down
|
Card Out
|
Link Down
|
Component Unreachable
|
Link Utilization
|
CPU Utilization
|
LSP Removed
|
Discard Packets
|
Memory Utilization
|
Dropped Packets
|
MLPPP Down
|
Drops Exceed Limit
|
PIM Interface Down Syslog
|
DS0 Bundle Down
|
PIM Neighbor Loss Syslog
|
DS1 Path Link Down
|
Port Down
|
DS1 Path Port Down
|
RX Dormant
|
DS3 Path Link Down
|
RX Utilization
|
DS3 Path Port Down
|
Shelf Out
|
Duplicate IP on VPN
|
Sonetpath Link Down
|
DWDM Controller Down
|
Sonetpath Port Down
|
DWDM g709 Status Down
|
Sub-interface Down
|
EFT Down
|
TX Dormant
|
Envmon Condition Syslog
|
TX Utilization
|
Envmon Fan Syslog
|
VSI Down
|
IMA Admin Down
|
|
Instrumentation Persistency
The instrumentation layer persists the information that was collected from the device to the file system. When the VNE restarts, it uses this information to emulate the device's response, and thus the VNE can be modeled according to its last persistent state. The next polling instance is performed against the real device.
The registry entries that control instrumentation persistency are provided in Table E-3.
Note
All changes to the registry should only be carried out with the support of Cisco. For details, contact your Cisco account representative.
Table E-3 Registry Settings for Instrumentation Persistency
Registry Entry
|
Description
|
Default Value
|
persistencydir
|
Specifies the directory in which persistency information is saved on the local file system. This is a relative path. Allowed values are a string that represents the relative directory in the file system.
|
instrumentor-persistency
|
persistencylevel
|
Controls the level of persistency to be used. The allowed values are Full (persisted) or Off (not persisted).
These values can be used for certain commands to make sure some are persisted and some are not.
Note If a compound command contains both Full and Off persistency levels, Cisco ANA will use the full level for all commands.
|
Full
|
persistencystorageenabled
|
Controls whether the whole storage mechanism is enabled.
|
true
|
persistencystorageinterval
|
Interval (in milliseconds) for which the data to be persisted is accumulated and then written to the persistent storage in bulk. Files are only updated if they have changed.
The default value (10 minutes) is a compromise between small intervals (which cause more I/O operations in the local file system) and long intervals (which result in stored information not being up-to-date).
|
600000 (10 minutes)
|
persistencytimeout
|
Timeout period (in milliseconds) at which initial data is marked as obsolete; all subsequent commands will run directly on the device.
If the persistency mechanism is enabled when the instrumentation layer starts, it loads all the data from the files. This data can be used for the commands only the first time they are executed. Some commands can be used for the first time, long after other commands have finished multiple cycles; for example, commands which run only when the status on the device has changed.
The default value (1 minute) is a compromise between a small value (which can cause the instrumentation layer to ignore the persistent data) and a large value (which causes the data to be retrieved long after the VNE has finished loading).
Note We recommend that this value be at least 600000 (1 minute).
|
600000 (1 minute)
|
Topology Persistency
Cisco ANA supports persistency for Layer 1 topological connections. Layer 1 topology supports one connection per Device Component (DC), so the physical topology reflects a single port connected by a single link.
The following topologies are persisted:
•
Layer 1 counter-based topologies.
•
Static topologies.
Static topology, which identifies physical links configured by the user, is persisted once a user configures the static link between the two entities. This link is then stored in the registry, in the AVM key that contains the specific VNE registrations.
For other topologies, every time a link is created, the persistency mechanism writes the link to this file. When a link is disconnected, the file representing the link is removed.
Note
Topology persistency assumes that the XID (the unique device component ID) is persistable. For example, the port XID should remain the same after the device reboots or after the VNE reboots. This is not dependent on whether the ifIndex is changed from time to time.
Topology persistency is controlled by the setting listed in Table E-4.
Note
All changes to the registry should only be carried out with the support of Cisco. For details, contact your Cisco account representative.
Table E-4 Registry Setting for Topology Persistency
Registry Entry
|
Description
|
Default Value
|
persistency
|
Enable physical topology persistency.
Note We recommend that this entry remain enabled.
|
true
|