Core MW Management Guide
Core Middleware

Contents

1Introduction
1.1Prerequisites

2

Core MW Command Overview
2.1Deprecated Commands

3

Administrative Operations
3.1Reboot Cluster
3.2Reboot Node
3.3Lock Node
3.4Unlock Node
3.5Verify System Status
3.6Save IMM Data
3.7Get AMF Node of Given Hostname
3.8Get Hostname of Given AMF Node
3.9Configure IMM Access Control
3.10Enable or Disable Core MW Features
3.11Set Time-Out for Core MW Scaling Feature
3.12Clear Alarm Issued by AMF

4

Core MW Partial Backup and Partial Restore – Deprecated
4.1Create Core MW Partial Backup – Deprecated
4.2List Core MW Partial Backups – Deprecated
4.3Delete Core MW Partial Backup – Deprecated
4.4Restore Using Core MW Partial Backup – Deprecated

5

Software Management
5.1Import Software Bundles and Campaigns
5.2Delete Software Bundles and Campaigns
5.3Read from Software Inventory
5.4Use SMF Campaigns
5.5Configure ECIM SWM
5.6Use CLI for Upgrade Package/CSP
5.7Configure ISP Events for Cluster Restarts
5.8Configure Reboot Behavior of Single-Step Procedures
5.9Configure Remote Fencing Parameters

6

Performance Management
6.1Create ECIM PM Job
6.2Start ECIM PM Job
6.3Stop ECIM PM Job
6.4Delete ECIM PM Job
6.5Report Status of ECIM PM Job
6.6List ECIM PM Jobs
6.7Modify ECIM PM Job
6.8Display Active PM Values for an Instance

7

OpenSAF Tools
7.1OpenSAF Tools Wrapper

8

Backup and Restore Framework

1   Introduction

This document describes how to manage the Core Middleware (MW) component.

1.1   Prerequisites

This section describes the prerequisites, which must be fulfilled before using these procedures.

1.1.1   Conditions

The following conditions must apply:

2   Core MW Command Overview

After successful logon the commands shown in Table 1 are available to root user or to user belonging to group system-adm and prefixed by sudo.

Note:  
The exact output from any command can differ depending on the release. Command completions can be used.

Command argument completion can be used if the OS supports it and bash shell is used.

In addition to what is listed in Table 1, all commands have a --help attribute.


Core MW has introduced interference checks and locking between a number of commands to minimize the risk that parallel execution disrupts the system. The following areas are included:

The interference locking assures that it is only possible to execute one of these commands at the same time.

Table 1    Core MW Command Overview

Core MW Command

Description

cmw-alarm-clear [-v] <alarm-type> <managed-object>

Clear alarm issued by AMF. See Section 3.12 Clear Alarm Issued by AMF.

cmw-amfnode-get <hostname>

Get AMF node of given hostname. See Section 3.7 Get AMF Node of Given Hostname.

cmw-campaign-commit <campaign-name>

Commit campaign. See Section 5.4.1 Execute an SMF Campaign.

cmw-campaign-rollback <campaign-name>

Rollback campaign. See Section 5.4.2 Roll Back a Campaign.

cmw-campaign-start [--disable-backup] <campaign-name>

Start campaign. See Section 5.4.1 Execute an SMF Campaign. If more than one campaign is executed in sequence, --disable-backup can be used to inhibit backups during campaign execution, except for the first campaign where a backup is recommended.

cmw-campaign-status <campaign-name>

View campaign status. See Section 5.4.1 Execute an SMF Campaign.

cmw-campaign-stop <campaign-name>

Suspend campaign. See Section 5.4.2 Roll Back a Campaign.

cmw-campaign-verify <campaign-name>

Verify campaign. See Section 5.4.6 Initiate SMF Verification.

cmw-cluster-reboot [--no-rapid-reboot] [--yes]

Reboot cluster. See Section 3.1 Reboot Cluster.

cmw-hostname-get <amfnode>

Get hostname of given AMF node. See Section 3.8 Get Hostname of Given AMF Node.

cmw-node-lock <hostname> [-t <timeout> | --timeout <timeout>]

Lock node. See Section 3.3 Lock Node.

cmw-node-unlock <hostname> [-t <timeout> | --timeout <timeout>]

Unlock node. See Section 3.4 Unlock Node.

cmw-node-reboot [<hostname>]

Reboot single node. See Section 3.2 Reboot Node.

cmw-pmjob-create <job-name> <option> [<option>...]

Create an ECIM PM Job. See Section 6.1 Create ECIM PM Job.

cmw-pmjob-start <job-name>

Start an ECIM PM Job. See Section 6.2 Start ECIM PM Job.

cmw-pmjob-stop <job-name>

Stop an ECIM PM Job. See Section 6.3 Stop ECIM PM Job.

cmw-pmjob-delete <job-name>

Delete an ECIM PM Job. See Section 6.4 Delete ECIM PM Job.

cmw-pmjob-modify <job-name> <option> [<option>...]

Modify an ECIM PM Job. See Section 6.7 Modify ECIM PM Job.

cmw-pm-show-counters [-v] <option> [<option>...]

Display active PM values for a specified instance. See Section 6.8 Display Active PM Values for an Instance.

cmw-pmjob-status [-v] <job-name>

View ECIM PM Job status. See Section 6.5 Report Status of ECIM PM Job.

cmw-pmjob-list [<option>...]

List all defined ECIM PM Jobs. See Section 6.6 List ECIM PM Jobs.

cmw-repository-list [--campaign] [--node] [<hostname>...]

List imported software bundles and campaigns. See Section 5.3 Read from Software Inventory.

cmw-sdp-import <file> [<file>...]

Import software bundles and campaigns. See Section 5.1 Import Software Bundles and Campaigns.

cmw-sdp-remove <name> [<name>...]

Delete software bundles and campaigns. See Section 5.2 Delete Software Bundles and Campaigns.

cmw-status [-v] <class-name> [<class-name>...]

View system status. Only failing items are printed unless flag -v is specified. See Section 3.5 Verify System Status.

cmw-swm

Consume a UP/CSP. See Section 5.6 Use CLI for Upgrade Package/CSP.

cmw-ait-install

Consume a CSP. Used by AIT to consume a package that could not be consumed by ECIM SWM because of multiple campaigns generated based on the CBA System Model (CSM) model contained in the CSP. See Section 5.6 Use CLI for Upgrade Package/CSP.

cmw-swm-config-set <option> [<option>...]

Set the installation-dependent attributes in the ECIM SWM object. See Section 5.5 Configure ECIM SWM.

cmw—imm-policy-set <option>

Configure IMM access control. See Section 3.9 Configure IMM Access Control.

cmw-node-alarm-timeout

Set Core MW node alarm time-out. This is the time before an alarm is raised when contact with a node is lost. It is also used to determine the time when housekeeping must have finished. The housekeeping is performed after a restore when scaling is enabled (equal to the time that the system can have a faulty state after a restore).

cmw-configuration <option>

Enable or disable Core MW features. See Section 3.10 Enable or Disable Core MW Features.

cmw-timeout-configuration

Set time-out for scaling batch, node join, and parallel shutdown of Core MW scaling features. See Section 3.11 Set Time-Out for Core MW Scaling Feature.

cmw-utility [-h | --help] <immfind | immlist | immcfg | immadm |amfadm> [<options>]

Core MW wrapper command for OpenSAF tools. See Section 7.1 OpenSAF Tools Wrapper.

2.1   Deprecated Commands

The deprecated commands are listed in Table 2.

Table 2    Deprecated Commands

Core MW Command

Description

cmw-immSave

This command is deprecated and cannot be used. Using this command only result in the logging of a warning message.


The IMM data is, starting with Core MW R2A, persistently saved automatically.

cmw-partial-backup-create [--verbose] <label>

This command is deprecated since Core MW R6A.


Create Core MW partial backup. See Section 4.1 Create Core MW Partial Backup – Deprecated.

cmw-partial-backup-remove [--verbose] <label>

This command is deprecated since Core MW R6A.


Delete Core MW partial backup. See Section 4.3 Delete Core MW Partial Backup – Deprecated.

cmw-partial-backup-restore [--verbose] <label>

This command is deprecated since Core MW R6A.


Restore Core MW from partial backup. See Section 4.4 Restore Using Core MW Partial Backup – Deprecated.

cmw-partial-backup-list

This command is deprecated since Core MW R6A.


List Core MW partial backups. See Section 4.2 List Core MW Partial Backups – Deprecated.

Deprecated command options are listed in Table 3.

Table 3    Deprecated Command Options

Core MW Command Option

Description

cmw-configuration <--enable | --disable | --status> ONE_STEP_UPGRADE

This command option is deprecated since Core MW R3A. To configure upgrade execution method, refer to Section Configure Upgrade Execution Method of the Upgrade Package in Core MW Software Management.


Enable, disable, or check status of One Step Upgrade feature. See Section 3.10.5 One Step Upgrade Feature – Deprecated.

3   Administrative Operations

All commands in this section are to be run as root user.

All commands except those for "Configuring IMM Access Control" can be prefixed with sudo and run by users belonging group system-adm.

This section describes the following administrative operations:

3.1   Reboot Cluster

To reboot the cluster in an ordered way, use the following command:

cmw-cluster-reboot [--no-rapid-reboot] [--yes]

If --no-rapid-reboot is specified, the cluster reboots using a regular mechanism instead of using kexec to facilitate fast rebooting as usual.

If --yes is specified, the command does not require confirmation.

Example 1   Rebooting Cluster with Interactive Confirmation

SC-1:~ # cmw-cluster-reboot
Really want to reboot the entire cluster (yes/no)? yes
Rebooting all nodes
Stopping DHCP daemon on node 2 (SC-2)
Stopping DHCP daemon ..done
Stopping DHCP daemon on node 1 (SC-1)
Stopping DHCP daemon ..done
Rebooting node 4 (PL-4)
Rebooting node 3 (PL-3)
Waiting for payload nodes to shut down
Payload nodes have shut down
Rebooting node 2 (SC-2)
Rebooting node 1 (SC-1)

Broadcast message from root (pts/0) (Mon Jul  5 13:07:36 2010):

The system is going down for reboot NOW!
SC-1:~ #

3.2   Reboot Node

To reboot a single node, use the following command:

cmw-node-reboot [<hostname>]

If no hostname is specified, the current node is rebooted.

Note:  
This command is normally not used, but can be necessary to recover from transient error situations on a node that cannot be resolved using procedures with less system impact.

Example 2   Rebooting Remote Node

SC-1:~ # cmw-node-reboot PL-4
Rebooting node 4 (PL-4)
SC-1:~ #

3.3   Lock Node

To lock an AMF node, that is, to set its administrative state to LOCKED, use the following command:

cmw-node-lock <hostname> [-t <timeout> | --timeout <timeout>]

All Service Units (SUs) hosted on the node are prohibited from providing service.

To set the time-out in seconds, use the utility timeout command:

-t, --timeout <seconds>

If time-out is not specified, the default time-out of 900 seconds is used.

Note:  
The affected workload is redistributed according to the AMF redundancy model of the application.

Example 3   Locking Node

SC-1:~ # cmw-node-lock PL-4
SC-1:~ #

3.4   Unlock Node

To unlock an AMF node, that is, to set its administrative state to UNLOCKED, use the following command:

cmw-node-unlock <hostname> [-t <timeout> | --timeout <timeout>]

All SUs hosted on the node are administratively allowed to provide service.

To set the time-out in seconds, use the utility timeout command:

-t, --timeout <seconds>

If time-out is not specified, the default time-out of 900 seconds is used.

Example 4   Unlocking Node

SC-1:~ # cmw-node-unlock PL-4
SC-1:~ #

3.5   Verify System Status

To verify that the system status is normal, check the status of the following system items with the following command:

cmw-status [-v] <class-name> [<class-name>...]

Here v is verbose and class-name is one of the following:

app Application has an administrative state that must be verified. In a "normal" system state, the application must be in an unlocked state.
csiass The Component Service Instance (CSI) has a High Availability (HA) state that must be verified. No CSI must be in quiescing or quiesced state when the system status is normal.
comp An AMF component has a HA state that must be verified. No component must be in quiescing or quiesced state when the system status is normal. The operationalState of comp must be ENABLED.
node An executing instance of the host OS connected to the cluster. A node can be a Virtual Machine.
pm Performance Management (PM) reports overall Ericsson Common Information Model (ECIM) PM status. If all ECIM PM Jobs are in Active state, PM returns Status OK. Otherwise PM provides details about ECIM PM Jobs that are in Stopped or Faulty state.

The command has a short and verbose format. The short format lists only the ECIM PM Job name and state for Stopped or Faulty Jobs. The verbose format lists all ECIM PM Jobs, including those in Active states.

sg A Service Group (SG) is a logical entity that groups one or more SUs to provide service availability for a particular set of SIs. The redundancy model defines how the SUs in the SG are used to provide service availability. Supported redundancy models are as follows:
  • 2N – In this redundancy model one SU is active for all SIs, and one SU is standby for all SIs.
  • N+M – Flexible redundancy with possibility to control the number of active and standbys. A common use of this redundancy model is the N+1 redundancy in which a single SU is standby for N active SUs.
  • N-Way – In this redundancy model, it is possible for an SU to have active HA state for some SIs and at the same time have standby HA state for some other SIs.
  • N-WayActive – This is a load-sharing redundancy model with only active SUs.
  • No Redundancy – This redundancy model is typically used with non-critical components when the failure of a component does not cause any severe impact on the overall system and a restart is good enough.
si As components are aggregated into SUs, the AMF supports the aggregation of CSIs into a logical entity called a Service Instance (SI). An SI represents a single workload assigned to the entire SU. AMF assigns HA state to the SU on behalf of one or more of SIs.
siass Defines the SUs assigned to an SI. All SUs of the same type can be assigned Service Instances (SIs) derived from the same set of service types.
su A Service Unit (SU) is a logical entity that aggregates a set of components combining their individual functionalities to provide a higher-level service. It is the unit of redundancy in the sense that it is the smallest logical entity that can be instantiated in a redundant manner. Each SU always executes on only one node, that is, it cannot be distributed over several nodes.

The components that constitute an SU can be developed in isolation, and a component developer can be unaware of which components constitute an SU, as they are defined at deployment time.

When the system is in normal status, the output can look as shown in Example 5.

Example 5   System in Normal Status

SC-1:~ # cmw-status node comp su
Status OK
SC-1:~ #

When verifying system status the primary class names to specify are su, node, and comp. If the si class name is specified, PARTIALLY_ASSIGNED can be returned even if there is no fault in the system.

On a single node cluster (1 + 0 configuration), the output can look as shown in Example 6.

Example 6   Single Node System with Normal SI Status

SC-1:~ # cmw-status si
Status OK
SC-1:~ # 

In verbose mode on a single node cluster (1 + 0 configuration) the output can look as shown in Example 7.

Example 7   Single Node System with Normal Verbose SI Status

SC-1:~ # cmw-status -v si
safSi=SC-2N,safApp=OpenSAF
  AdminState=UNLOCKED(1)
  AssignmentState=PARTIALLY_ASSIGNED(3)
safSi=SC-2N,safApp=ERIC-CoreMW
  AdminState=UNLOCKED(1)
  AssignmentState=PARTIALLY_ASSIGNED(3)
SC-1:~ #

Example 8   System with One Node Locked

SC-1:~ # cmw-status node
safAmfNode=PL-3,safAmfCluster=myAmfCluster
AdminState=LOCKED-INSTANTIATION(3)
OperState=ENABLED(1)
SC-1:~ # 

Example 9   Verifying System Using Verbose Mode

SC-1:~ # cmw-status -v node
safAmfNode=SC-2,safAmfCluster=myAmfCluster
        AdminState=UNLOCKED(1)
        OperState=ENABLED(1)
safAmfNode=SC-1,safAmfCluster=myAmfCluster
        AdminState=UNLOCKED(1)
        OperState=ENABLED(1)
safAmfNode=PL-4,safAmfCluster=myAmfCluster
        AdminState=UNLOCKED(1)
        OperState=ENABLED(1)
safAmfNode=PL-3,safAmfCluster=myAmfCluster
        AdminState=UNLOCKED(1)
        OperState=ENABLED(1)
SC-1:~ #

Example 10   Verifying PM Job Status with One Job in State Stopped

SC-1:~ # cmw-status pm
pmJobId=TC-CMW-PM-CMD-STATUS-1, Stopped
SC-1:~ #

Example 11   Verifying PM Job Status Using Verbose Mode

SC-1:~ # cmw-status -v pm
Name                   Value(s)
========================================
pmJobId                TC-CMW-PM-CMD-STATUS-1
jobType                Measurement(0x1)
granularityPeriod      1 minute(0x3)
reportingPeriod        1 minute(0x3)
jobPriority            High(0x3)
requestedJobState      Stopped(0x2)
currentJobState        Stopped(0x2)
Overall Job State      Stopped(0x2)
Name                   Value(s)
========================================
pmJobId                TC-CMW-PM-CMD-STATUS-2
jobType                Threshold(0x2)
granularityPeriod      5 minutes(0x4)
reportingPeriod        15 minutes(0x5)
jobPriority            Medium(0x2)
requestedJobState      Active(0x1)
currentJobState        Active(0x1)
Overall Job State      Active(0x1)
SC-1:~ #

3.6   Save IMM Data

The IMM data is automatically persisted incrementally for every Configuration Change Bundle (CCB) and persistent runtime object create/ update/ delete operation. During campaign execution, the persistency is disabled and then enabled again when the campaign reaches the completed state, that is, before commit is done.

3.7   Get AMF Node of Given Hostname

To get the AMF node of a given hostname, use the following command:

cmw-amfnode-get <hostname>

Example 12   Getting AMF Node of Given Hostname

SC-1:~ # cmw-amfnode-get SC-1
SC-1
SC-1:~ #

3.8   Get Hostname of Given AMF Node

To get the hostname of a given AMF node, use the following command:

cmw-hostname-get <amfnode>

Example 13   Getting Hostname of Given AMF Node

SC-1:~ # cmw-hostname-get SC-1
SC-1
SC-1:~ #

3.9   Configure IMM Access Control

To configure IMM Access Control, use the following command:

cmw-imm—policy-set <enforced | disabled | permissive>

For compatibility reasons, the default setting of IMM Access Control is DISABLED.

By setting IMM Access Control to ENFORCED, the IMM users wanting to access IMM must belong to the cmw-imm-users group. For more information, refer to Section Information Model Management Service in Core MW System Architecture Description.

Note:  
PERMISSIVE logs all violations to system logs without enforcing access control. Must be used with caution, as it can introduce unwanted spam in the system logs.

3.10   Enable or Disable Core MW Features

To enable, disable, or check status of Core MW features, use the following command:

cmw-configuration <--enable | --disable | --status> <feature> [--reboot]

The parameters are as follows:

The FENCING feature supports the following additional parameters:

The following features are supported:

3.10.1   TIPC Multicast Feature

The Message Distribution Service (MDS) broadcasts are implemented using unicast, which adds load and does not scale on larger clusters. The Transparent Inter-Process Communication (TIPC) multicast feature solves this issue, deleting these performance impacts.

Before enabling the TIPC Multicast feature in Core MW, the user must verify that the current TIPC driver fully supports that feature.

Note:  
A cluster reboot is required for this action to take effect. An immediate cluster reboot can be triggered with parameter --reboot.

If the TIPC Multicast feature is already enabled, then after a Core MW upgrade it stays enabled and if it is disabled, it stays disabled.


How to enable the TIPC Multicast feature is shown in Example 14 with forced reboot, and in Example 15 without forced reboot.

Example 14   Enabling TIPC Multicast with Forced Reboot

SC-1:~ # cmw-configuration --enable TIPC_MULTICAST --reboot
Rebooting cluster ...

Example 15   Enabling TIPC Multicast without Forced Reboot

SC-1:~ # cmw-configuration --enable TIPC_MULTICAST
Cluster reboot is required for change to take effect

If the TIPC Multicast feature is already enabled, the output is as shown in Example 16.

Example 16   Enabling TIPC Multicast When Already Enabled

SC-1:~ # cmw-configuration --enable TIPC_MULTICAST --reboot
Already enable

Example 17   Checking TIPC Multicast Status

SC-1:~ # cmw-configuration --status TIPC_MULTICAST
Enable

3.10.2   SC Absence Feature

The System Controller (SC) Absence feature ensures that the cluster does not reboot while both SC nodes are down, allowing the payload to work with limited service. If the time taken for the SC nodes to recover exceeds a timeout value, all payload nodes shut down (current behavior).

Before enabling the SC Absence feature in Core MW, the user must verify that the system fully supports this feature.

Note:  
A cluster reboot is required for this action to take effect. An immediate cluster reboot can be triggered with parameter --reboot.

timeout is an optional argument for the cmw-configuration command. By default, timeout has the same value as the maximum timeout (900 seconds).

If the SC Absence feature is already enabled, then after a Core MW upgrade it stays enabled and if it is disabled, it stays disabled.


Example 18 and Example 19 are common examples to provide more information.

Example 18   Enabling SC Absence with Time-Out of 300 Seconds and Forced Reboot

SC-1:~ # cmw-configuration --enable SC_ABSENCE_ALLOWED 300 --reboot
Rebooting cluster ...

Example 19   Disabling SC Absence without Forced Reboot

SC-1:~ # cmw-configuration --disable SC_ABSENCE_ALLOWED
Cluster reboot is required for change to take effect

When the status of the SC Absence feature is checked, the timeout value is also shown. The result of checking the feature is shown in Example 20.

Example 20   Checking Status of SC Absence (After Change without Reboot)

SC-1:~ # cmw-configuration --status SC_ABSENCE_ALLOWED
WARNING: Configuration has been changed but cluster reboot isn’t called
Enable
Current timeout is 300

3.10.3   Scaling Feature

When scaling is enabled, the system can automatically be expanded with newly detected nodes, using a default scaling profile. The Compute Resource Management (CRM) Northbound Interface (NBI) model allows the deletion of scalable nodes, which triggers a resize of the system. The scaling feature is enabled in runtime and does not require a reboot.

Example 21   Enabling Scaling

SC-1:~ # cmw-configuration --enable SCALING

Example 22 shows how to check the status of the scaling feature if it is already enabled.

Example 22   Checking Status of Scaling

SC-1:~ # cmw-configuration --status SCALING
Enable

Example 23   Disabling Scaling

SC-1:~ # cmw-configuration --disable SCALING

For more details about the scaling feature, refer to Core MW Cluster Manager Description.

3.10.4   In-Service Performance Report Feature

The ISP functionality collects ISP information that has been generated by Core MW and other components/applications (following the ISP API description, refer to ISP API Interface Description 1.1.0) and produces an XML file as output for processing by the ISP tool.

The support is as follows:

Enabling/disabling the ISP report feature does not require reboot.

Example 24   Enabling ISP_REPORT

SC-2-1:~ # cmw-configuration --enable ISP_REPORT

Example 25   Checking Status of ISP_REPORT

SC-2-1:~ # cmw-configuration --status ISP_REPORT

Example 26   Disabling ISP_REPORT

SC-2-1:~ # cmw-configuration --disable ISP_REPORT
Note:  
It is highly recommended to enable ISP events for cluster restarts in the system, see Section 5.7 Configure ISP Events for Cluster Restarts. Otherwise cluster restart events are not visible in the ISP logs, not even on individual blade level.

3.10.5   One Step Upgrade Feature – Deprecated

The Software Management Framework (SMF) normally executes the procedures in a campaign in execution level order. When the One Step Upgrade feature is enabled, the SMF collects all actions calculated to be made by the originally written procedures into a new internal single-step procedure, which executes all upgrade actions in a single step. The originally written procedures in the campaign are not executed.

Example 27   Enabling ONE_STEP_UPGRADE

SC-1:~ # cmw-configuration --enable ONE_STEP_UPGRADE

Example 28 shows how to check the status of the One Step Upgrade feature if it is already enabled.

Example 28   Checking Status of ONE_STEP_UPGRADE

SC-1:~ # cmw-configuration --status ONE_STEP_UPGRADE
Enable

Example 29   Disabling ONE_STEP_UPGRADE

SC-1:~ # cmw-configuration --disable ONE_STEP_UPGRADE

3.10.6   PM_REPORTALWAYS Feature

The PM_REPORTALWAYS feature allows runtime configuration of the report file content generated for active PM Measurement jobs. It affects both existing and later created PM jobs. If the feature is enabled, report content is always generated in MISSING_MOIDS manner, independent of the reportContentGeneration attribute value of each PM job. If the feature is disabled, report content is generated according to the reportContentGeneration attribute value of each PM job.

This feature is disabled by default.

Example 30   Enabling PM_REPORTALWAYS

SC-1:~ # cmw-configuration --enable PM_REPORTALWAYS

Example 31   Disabling PM_REPORTALWAYS

SC-1:~ # cmw-configuration --disable PM_REPORTALWAYS

Example 32 shows how to check the status of the PM_REPORTALWAYS feature if it is already enabled.

Example 32   Checking Status of PM_REPORTALWAYS

SC-1:~ # cmw-configuration --status PM_REPORTALWAYS
Enable

3.10.7   Managed Element Network Name Feature

The ME_NAME feature allows the user to set a network name on the Managed Element (ME).

This feature is disabled by default.

Example 33   Enabling ME_NAME

SC-1:~ # cmw-configuration --enable ME_NAME Network1

Example 34   Disabling ME_NAME

SC-1:~ # cmw-configuration --disable ME_NAME

Example 35 shows how to check the status of the ME_NAME feature if it is already enabled.

Example 35   Checking Status of ME_NAME

DSC-1:~ # cmw-configuration --status ME_NAME
Disable

3.10.8   Fencing Feature

Remote Fencing (RF) allows components, applications, and integrators to substitute the generic remote fencing logic within Core MW with a remote fencing solution more suitable to the target cluster.

Before enabling this feature, the user must verify that the system fully supports the features implemented in the RF plug-in.

To view the status of the Fencing feature, use parameter --status as shown in Example 36 and Example 37.

Example 36   Fencing Feature Disabled

SC-2-1:~ # cmw-configuration --status FENCING
Fencing : Disabled

Example 37   Fencing Feature Enabled

SC-2-1:~ # cmw-configuration --status FENCING
Fencing : Enabled
Plugin Name : FENCING_STONITH-CXP9010009_1
Plugin Version : R3A20
Plugin Parameter: SC-2 SC-1

To view the available RF plug-ins that have been installed on the system, use parameter --list as shown in Example 38 and Example 39.

Example 38   Available RF Plug-ins Installed on System

SC-2-1:~ # cmw-configuration --status FENCING --list
Fencing : Disabled
Plugin List :
FENCING_IPMI-CXP9010010_1

Example 39 shows the available RF plug-ins installed on the system and that the RF plug-in is enabled but a cluster reboot is required before configuration takes effect.

Example 39   Available RF Plug-ins Installed on System – RF Plug-in Enabled

SC-2-1:~ # cmw-configuration --status FENCING --list
WARNING: Configuration has been changed but cluster reboot isn't called
Fencing : Enabled
Plugin Name : FENCING_STONITH-CXP9010009_1
Plugin Version : R3A20
Plugin Parameter: SC-1 SC-2
Plugin List :
FENCING_IPMI-CXP9010010_1
FENCING_STONITH-CXP9010009_1

To configure and enable an RF plug-in for SC-1 and SC-2, use parameters --enable, --plugin, and --set, as shown in Example 40 and Example 41.

Note:  
A cluster reboot is required for this action to take effect if the RF plug-in contains any OpenSAF variable configuration. Core MW detects this automatically and informs the user that reboot is required.

Example 40   Enabling RF Plug-in and Rebooting System

SC-2-1:~ # cmw-configuration --enable FENCING --reboot --plugin ⇒
FENCING_IPMICXP9010010_1 --set SC-1 --set SC-2
Rebooting cluster ...

Example 41 shows how to enable an RF plug-in with the user warned that cluster reboot is required for changes to take effect.

Example 41   Enabling RF Plug-in and Rebooting System – Reboot Warning

SC-2-1:~ # cmw-configuration --enable FENCING --plugin ⇒
FENCING_STONITH-CXP9010009_1 --set SC-1 --set SC-2
setlocale: No such file or directory
1075 FT-REG-70-SC-1 running
1076 FT-REG-70-PL-4 running
1077 FT-REG-70-PL-5 running
1078 FT-REG-70-PL-3 running
1079 FT-REG-70-SC-2 running
- FT-REG-70-gwhost701 shut off
setlocale: No such file or directory
1075 FT-REG-70-SC-1 running
1076 FT-REG-70-PL-4 running
1077 FT-REG-70-PL-5 running
1078 FT-REG-70-PL-3 running
1079 FT-REG-70-SC-2 running
- FT-REG-70-gwhost701 shut off
setlocale: No such file or directory
1075 FT-REG-70-SC-1 running
1076 FT-REG-70-PL-4 running
1077 FT-REG-70-PL-5 running
1078 FT-REG-70-PL-3 running
1079 FT-REG-70-SC-2 running
- FT-REG-70-gwhost701 shut off
setlocale: No such file or directory
1075 FT-REG-70-SC-1 running
1076 FT-REG-70-PL-4 running
1077 FT-REG-70-PL-5 running
1078 FT-REG-70-PL-3 running
1079 FT-REG-70-SC-2 running
- FT-REG-70-gwhost701 shut off
WARNING: Cluster reboot is required for change to take effect

Core MW performs checks on the RF plug-in before enabling it by calling the "verify" functionality of the plug-in. If any errors are detected in the RF plug-in itself, or the configured data for it, the user is alerted and further information can be found in the system logs. Example 42, Example 43, and Example 44 show some typical error use cases.

Example 42   Incorrect RF Plug-in Configuration Data

SC-2-1:~ # cmw-configuration --enable FENCING --reboot --plugin FENCING_IPMICXP9010010_1 ⇒
--set SC-1 --set SC-2
CMW: ERROR (cmw-configuration): Fencing Enable failed to verify (1)
SC-2-1:~ # less /var/log/messages
Oct 21 19:54:20 SC-2-1 FENCING_IPMI-CXP9010010_1: ERROR
(/storage/system/config/coremw/fencing/rf.FENCING_IPMI-CXP9010010_1): RFP_IPADDR,
RFP_USERID or RFP_PASSWD missing; check configuration
Oct 21 19:54:20 SC-2-1 FENCING_IPMI-CXP9010010_1: ERROR
(/storage/system/config/coremw/fencing/rf.FENCING_IPMI-CXP9010010_1): error executing
ipmitool:
Oct 21 19:54:20 SC-2-1 FENCING_IPMI-CXP9010010_1: ERROR
(/storage/system/config/coremw/fencing/rf.FENCING_IPMI-CXP9010010_1): Verify of
connection to IPMI failed
Oct 21 19:54:20 SC-2-1 CMW: Fencing plugin failed (1) on SC-1
Oct 21 19:54:20 SC-2-1 CMW: ERROR (cmw-configuration): Fencing Enable failed to
verify (1)

Example 43   RF Plug-in TARGET_PLUGIN Not Found

SC-2-1:~ # cmw-configuration --enable FENCING --reboot --plugin FENCING_STONITHCXP9010009_1 ⇒
--set SC-1 --set SC-2
CMW: ERROR (cmw-configuration): Fencing Enable failed to verify (1)
SC-2-1:~ # less /var/log/messages
Oct 21 20:02:56 SC-2-1 FENCING_STONITH-CXP9010009_1: ERROR
(/storage/system/config/coremw/fencing/rf.FENCING_STONITH-CXP9010009_1):
TARGET_PLUGIN (/cluster/home/fencingtest/target.FENCING_STONITH-CXP9010009_1-R3A20)
not readable
Oct 21 20:02:56 SC-2-1 CMW: Fencing plugin failed (1) on SC-1
Oct 21 20:02:56 SC-2-1 CMW: ERROR (cmw-configuration): Fencing Enable failed to
verify (1)

Example 44   RF Plug-in Enable Failed Because of Connection Issue to Hypervisor Management System

SC-2-1:~ # cmw-configuration --enable FENCING --plugin FENCING_STONITH-CXP9010009_1 ⇒
--set SC-1 --set SC-2
CMW: ERROR (cmw-configuration): Fencing Enable failed to verify (1)
SC-2-1:~ # less /var/log/messages
Oct 21 20:07:20 SC-2-1 external/libvirt[14655]: ERROR: Failed to get status for
qemu+tcp://172.16.83.51?name=qemu:///system
Oct 21 20:07:20 SC-2-1 external/libvirt[14655]: ERROR: setlocale: No such file or
directory#012error: unexpected data 'version'
Oct 21 20:07:21 SC-2-1 stonith: external_status: 'libvirt status' failed with rc 1
Oct 21 20:07:21 SC-2-1 stonith: external/libvirt device not accessible.
Oct 21 20:07:21 SC-2-1 FENCING_STONITH-CXP9010009_1: ERROR
(/storage/system/config/coremw/fencing/rf.FENCING_STONITH-CXP9010009_1): Verify of
stonith and libvirt via stonith failed, rc: 1
Oct 21 20:07:21 SC-2-1 CMW: Fencing plugin failed (1) on SC-1
Oct 21 20:07:21 SC-2-1 CMW: ERROR (cmw-configuration): Fencing Enable failed to
verify (1)

The user can invoke the "verify" functionality of an RF plug-in (irrespective of whether enabled or not) by entering the cmw-configuration command with parameter --test, as shown in Example 45.

Example 45   Testing RF Plug-in on SC-1 – Result Is Successful

SC-2-1:~ # cmw-configuration --test FENCING --plugin FENCING_STONITH-CXP9010009_1 --set SC-1
setlocale: No such file or directory
1075 FT-REG-70-SC-1 running
1076 FT-REG-70-PL-4 running
1077 FT-REG-70-PL-5 running
1078 FT-REG-70-PL-3 running
1079 FT-REG-70-SC-2 running
- FT-REG-70-gwhost701 shut off
SC-2-1:~ # echo $?
0

3.11   Set Time-Out for Core MW Scaling Feature

To set time-out for scaling batch, node join, and parallel shutdown of Core MW scaling features, use the following command:

cmw-timeout-configuration [--list | --set <timeout> <value>]

The parameters are as follows:

Example 46   Setting Time-Out Value for Node Join Cluster

SC-1:~ # cmw-timeout-configuration --set SCALING_JOIN 120

3.12   Clear Alarm Issued by AMF

To clear an alarm issued by AMF, use the following command:

cmw-alarm-clear [-v] <alarm-type> <managed-object>

Here v is verbose, managed-object is the Distinguished Name (DN) of the alarming object, and alarm-type is one of the following:

cleanup To clear an alarm of type "AMF Component Cleanup Failed" that was raised when AMF did not successfully clean up a software component.
instantiation To clear an alarm of type "AMF Component Instantiation Failed" that was raised when AMF did not successfully instantiate a software component.
model_error To clear an alarm of type "MDF Detected Model Error" that was raised when Core MW MDF detected an error during model delivery.
proxy To clear an alarm of type "Proxy Status of a Component Changed to Unproxied" that was raised when a component, that was previously being proxied, had currently no proxy component mediating for it.
unassign To clear an alarm of type "AMF SI Unassigned" that was raised when an SI had no active assignments to any SU.

Example 47   Clearing Alarm

SC-1:~ # cmw-alarm-clear instantiation ManagedElement=1,⇒
SaAmfApplication.safApp=ERIC-CoreMW,SaAmfSG.safSg=2N,⇒
SaAmfSU.safSu=SC-1,SaAmfComp.safComp=EcimSwm

4   Core MW Partial Backup and Partial Restore – Deprecated

Note:  
This section and all its subsections contain information that is deprecated since Core MW R6A.

When the scaling feature is enabled, all the following mentioned Core MW partial backup commands are disabled.


This section describes the following partial backup and partial restore operations:

A Core MW partial backup contains a snapshot of files for Core MW, which represents the system state of Core MW. The scope of a Core MW partial backup can be extended if application programs register application-specific backup commands. The partial backup mainly acts as a driver of backup where the OS and the applications keep their backup files on their own.

The Core MW partial backup can usually be used to restore a system, but as it does not contain all files it cannot be used for restoring the system after a catastrophic event.

Core MW supports integration of custom backup manager frameworks. If a custom backup manager is registered, the responsibility for backup and restore is transferred to the backup manager. The cmw-partial-backup-create and cmw-partial-backup-register commands are disabled and returns non-zero error codes when executed.

4.1   Create Core MW Partial Backup – Deprecated

To create a Core MW partial backup, use the following command:

cmw-partial-backup-create [--verbose] <label>

A partial backup with the specified label is created.

The label can be a maximum of 128 characters and can only contain characters that are valid in a Linux® filename.

The partial backup is physically divided in multiple archives files. The partial backup covers the following areas:

Example 48   Creating Core MW Partial Backup

SC-1:~ # cmw-partial-backup-create mgmtug-example
Snapshot starting (/cluster/snapshot/.cmwea-snapshot-mgmtug-example.tar.gz)
Snapshot completed
SC-1:~ #

4.2   List Core MW Partial Backups – Deprecated

To list the labels of the created partial backups, use the following command:

cmw-partial-backup-list

Only the labels of the complete partial backups are listed. For incomplete labels of partial backups, a warning message is printed.

Example 49   Listing Core MW Partial Backup Labels

SC-1:~ # cmw-partial-backup-list
1st-CMW
mgmtug-example
SMF-BACKUP_2010-07-05T12:48:08
SMF-BACKUP_2010-07-05T12:58:56
SC-1:~ #

4.3   Delete Core MW Partial Backup – Deprecated

To delete a previously created partial backup, use the following command:

cmw-partial-backup-remove [--verbose] <label>

Example 50   Deleting Core MW Partial Backup

SC-1:~ # cmw-partial-backup-remove mgmtug-example
SC-1:~ # 

4.4   Restore Using Core MW Partial Backup – Deprecated

To restore the system from a previously created partial backup, use the following commands:

cmw-partial-backup-restore [--verbose] <label>

cmw-cluster-reboot --yes

The partial backup must be activated by rebooting the cluster, see Section 3.1 Reboot Cluster.

Example 51   Restoring Using Core MW Partial Backup

SC-1 # cmw-partial-backup-restore mgmtug-example
Restore the Host OS ...
Snapshot restore starting (/cluster/snapshot/cmwea-snapshot-mgmtug-example.tar.gz)
Snapshot restore completed
Starting RPM synchronization of node 1
Synchronizing linux-control-R1A03-PRE1.x86_64.rpm
Synchronizing ⇒
COREMW_COMMON-R1A-72.x86_64.716a0b126ae0b34d2f841e5cd3c539e3.rpm
Synchronizing ⇒
coremw-opensaf-4.0-R1A01.x86_64.09ade38a707f803470fdfc58d92f5434.rpm
Synchronizing ⇒
opensaf-amf-libs-4.0.RC1-R1A01.1580.4.x86_64.a8774057970069565b178c62002b893f.rpm
Synchronizing ⇒
opensaf-amf-nodedirector-4.0.RC1-R1A01.1580.4.x86_64.a772b062ed3638ac48a59e8bfd30e2db.rpm
Synchronizing ⇒
opensaf-ckpt-libs-4.0.RC1-R1A01.1580.4.x86_64.b40335b7cfa2f3592f08246fad13844c.rpm
Synchronizing ⇒
opensaf-ckpt-nodedirector-4.0.RC1-R1A01.1580.4.x86_64.14866c4e3fbe964cda83e97d673b7447.rpm
Synchronizing ⇒
opensaf-clm-libs-4.0.RC1-R1A01.1580.4.x86_64.1574c1c5e29562731573eb045d45d520.rpm
Synchronizing ⇒
opensaf-clm-nodeagent-4.0.RC1-R1A01.1580.4.x86_64.b7c8544f5dd86d7d33e5b8575ae3fe00.rpm
Synchronizing ⇒
opensaf-imm-libs-4.0.RC1-R1A01.1580.4.x86_64.59f8198c1ccbcd5ef6f21e464e19b4a9.rpm
Synchronizing ⇒
opensaf-imm-nodedirector-4.0.RC1-R1A01.1580.4.x86_64.769e124e417a0711c4dd4771a48a3c26.rpm
Synchronizing ⇒
opensaf-libs-4.0.RC1-R1A01.1580.4.x86_64.e23173b8021f50927f1328a299f793f4.rpm
Synchronizing ⇒
opensaf-log-libs-4.0.RC1-R1A01.1580.4.x86_64.2fbc9be1867d7c307351aeb5ebba9425.rpm
Synchronizing ⇒
opensaf-ntf-libs-4.0.RC1-R1A01.1580.4.x86_64.ded91cefd458156125bed888782afe73.rpm
Synchronizing ⇒
opensaf-smf-libs-4.0.RC1-R1A01.1580.4.x86_64.11a6b0cad1300999bf9dfa8ce4bef3d6.rpm
Synchronizing ⇒
opensaf-smf-nodedirector-4.0.RC1-R1A01.1580.4.x86_64.cf8cce9975734cf5d0324a24c1565ff1.rpm
Synchronizing ⇒
opensaf-4.0.RC1-R1A01.1580.4.x86_64.77e4dc0c1c15c20cac63097935f54cfd.rpm
Synchronizing ⇒
opensaf-amf-director-4.0.RC1-R1A01.1580.4.x86_64.a79972ce3e15bf7c307526459e00349f.rpm
Synchronizing ⇒
opensaf-ckpt-director-4.0.RC1-R1A01.1580.4.x86_64.6f6c5eaf5f6b413b4c4b88fbb65ef9b4.rpm
Synchronizing ⇒
opensaf-clm-server-4.0.RC1-R1A01.1580.4.x86_64.fa5baf4a1fa773e50037bb7afc5c679f.rpm
Synchronizing ⇒
opensaf-controller-4.0.RC1-R1A01.1580.4.x86_64.ba49b887419f2c4753f4fda58024f758.rpm
Synchronizing ⇒
opensaf-imm-director-4.0.RC1-R1A01.1580.4.x86_64.41b0fb79df6fd3fa25076aa43b291fce.rpm
Synchronizing ⇒
opensaf-log-server-4.0.RC1-R1A01.1580.4.x86_64.308b7372726cb676e9e51da7d4dbca45.rpm
Synchronizing ⇒
opensaf-ntf-server-4.0.RC1-R1A01.1580.4.x86_64.932bfbc668a973b6941054e99416988f.rpm
Synchronizing ⇒
opensaf-smf-director-4.0.RC1-R1A01.1580.4.x86_64.50ec99d3b2b0a6a3fafdbec9257d5b43.rpm
Synchronizing ⇒
COREMW_SC-R1A-53.x86_64.679a7116d9d5a9758c0c8f081c99ed5b.rpm
Completed RPM synchronization of node 1
......
Completed RPM synchronization of node 9
Unpack the Core MW backup ...
Restore application data [backup-ERIC-Vip-CXP9013048_4-R1A03] ...
SC-1 # cmw-cluster-reboot --yes 

5   Software Management

This section describes the following software management tasks:

Commands are to be run as root user or prefixed with sudo and run by a user belonging to the system-adm group.

5.1   Import Software Bundles and Campaigns

To import software bundles or campaigns to the repository, use the following command:

cmw-sdp-import <file> [<file>...]

The possible formats are the following:

Note:  
Different file formats can be mixed in the command.

The names of successfully imported software bundles and campaigns are printed.

Example 52   Importing Bundle SDP

# cmw-sdp-import /home/MyApp/incoming/TestApp.sdp ⇒
/home/MyApp/incoming/TestAppInstall.sdp
ERIC-TestApp-CXP12345-R1A01 imported (type=Bundle)
ERIC-InstallTestApp imported (type=Campaign)
#

A third party product (3PP) software import in bundle RPM format is shown in Example 53.

Example 53   Importing Bundle RPM

# cmw-sdp-import MySQL-server-community-5.1.61-1.sles11.x86_64.rpm
3PP-MySQL-server-community-5.1.61-1.sles11 imported (type=Bundle)
#

5.2   Delete Software Bundles and Campaigns

To delete software bundles and campaigns from the repository, use the following command:

cmw-sdp-remove <name> [<name>...]

The possible formats are the following:

Note:  
Different formats can be mixed in the command.

Example 54   Deleting Bundle SDP

# cmw-sdp-remove ERIC-TestApp-CXP12345-R1A01 ERIC-InstallTestApp
Bundle SDP removed [ERIC-TestApp-CXP12345-R1A01]
Campaign SDP removed [ERIC-InstallTestApp]
#
Note:  
Deleting already deleted software bundles or campaign SDPs is not considered an error.

Example 55   Deleting Bundle RPM

sc-1:~ # cmw-sdp-remove 3PP-MySQL-server-community-5.1.61-1.sles11
Bundle SDP removed [3PP-MySQL-server-community-5.1.61-1.sles11]
sc-1:~ #

5.3   Read from Software Inventory

To list the imported campaigns, use the following command:

cmw-repository-list --campaign

Example 56   Listing Imported Campaigns

SC-1 # cmw-repository-list --campaign
ERIC-InstallTestApp
SC-1 #

To list the imported software bundles and if they are used or not in the system, use the following command:

cmw-repository-list

A list of imported software bundles and if they are used or not in the system is shown in Example 57.

Example 57   Reading from Software Inventory

sc-1:~ # cmw-repository-list
ERIC-COREMW_COMMON-CXP9017566_1-P1A34        Used
ERIC-COREMW_SC-CXP9017565_1-P1A31            Used
ERIC-COREMW_OPENSAF-CXP9017656_1-P1A26       Used
3PP-MySQL-server-community-5.1.61-1.sles11   Used
sc-1:~ #

The first column shows the name of the software bundle and the second column states whether the software bundle is used, without specifying the node.

To list all software bundles installed per node, use the following command:

cmw-repository-list --node [<hostname>...]

If hostname is not used, the output looks as in Example 58.

Example 58   Reading from Software Inventory Using Variable Node

SC-1:~ # cmw-repository-list --node
PL-3 ERIC-COREMW_COMMON-CXP9017566_1-P1C72
PL-3 ERIC-COREMW_OPENSAF-CXP9017656_1-R1A01
PL-4 ERIC-COREMW_COMMON-CXP9017566_1-P1C72
PL-4 ERIC-COREMW_OPENSAF-CXP9017656_1-R1A01
SC-1 ERIC-COREMW_COMMON-CXP9017566_1-P1C72
SC-1 ERIC-COREMW_OPENSAF-CXP9017656_1-R1A01
SC-1 ERIC-COREMW_SC-CXP9017565_1-P1C53
SC-1 3PP-MySQL-server-community-5.1.61-1.sles11
SC-2 ERIC-COREMW_COMMON-CXP9017566_1-P1C72
SC-2 ERIC-COREMW_OPENSAF-CXP9017656_1-R1A01
SC-2 ERIC-COREMW_SC-CXP9017565_1-P1C53
SC-2 3PP-MySQL-server-community-5.1.61-1.sles11
SC-1:~ #

5.4   Use SMF Campaigns

All kinds of software reconfiguration such as installation, upgrade, and deletion are done with a campaign.

A campaign is contained and delivered in an SDP. To make the campaign available to Core MW, the campaign SDP is imported using the cmw-sdp-import command. For more information about this command, see Section 5.1 Import Software Bundles and Campaigns.

To list imported campaigns, usi the following command:

cmw-repository-list --campaign

For more information about the command, see Section 5.3 Read from Software Inventory.

The software reconfiguration specified in a campaign.xml file is executed by SMF. SMF implements a state machine that interprets the XML file and executes the software reconfiguration.

The transitions between SMF states depending on Core MW commands are shown in Figure 1.

Figure 1   SMF State Diagram

5.4.1   Execute an SMF Campaign

Ensure that the units (node, SU, component, and so on) are affected by the campaign and that they are free of faults before executing.

To execute a campaign:

  1. Get a list of the installed campaigns:

    cmw-repository-list --campaign

  2. Start an SMF campaign:

    cmw-campaign-start <campaign-name>

    If the SMF campaign is a template, the first step performed is that the campaign is updated with information fetched from the system. Any error that occurs during campaign update and validation results in an error message and the campaign execution is not started. If this occurs, a new campaign SDP must be provided, but no other measures are needed.

    If more than one campaign is executed in sequence, the optional parameter --disable-backup can be used to inhibit backups during campaign execution. However, when the first campaign is started, a backup is recommended and the optional parameter must not be used.

    Note:  
    Execution of a new campaign cannot be started until the previous campaign is committed.

  3. Verify that the campaign status has state COMPLETED:

    cmw-campaign-status <campaign-name>

    If SMF detects that a campaign cannot be initiated, the initial transition is Cannot_initiate and the state remains Initial. The Cannot_initiate transition can be caused by an invalid campaign file, or a campaign that executes already. Once executing, the campaign can either be successful or it can fail.

    Note:  
    As one of the first steps of campaign execution a backup is taken. A failed campaign requires that the system is restored from a backup, during which there is a service outage.

    The backup is labeled according to the following syntax:

    SMF-BACKUP_YYYY-MM-DDTHH:MM:SS

    Examples:

    SMF-BACKUP_2010-07-05T12:48:08
    SMF-BACKUP_2010-07-05T12:58:56

    Depending on the state, take different actions, as follows:

    State

    Action

    INITIAL without error

    Retry status command.

    INITIAL with error

    Contact the campaign provider.

    EXECUTING

    Retry status command.

    ERROR_DETECTED

    Retry status command.

    SUSPENDED_BY_ERROR_DETECTED

    Start or rollback.

    COMPLETED

    Proceed with commit step.

    FAILED

    Initiate a fallback by restoring and restarting the cluster, see Section 4.4 Restore Using Core MW Partial Backup – Deprecated.

  4. Verify the status of the cluster, see Section 3.5 Verify System Status.

    If the status is OK, continue with the next step, otherwise repeat the status check.

  5. Commit the campaign, if it executed successfully:

    cmw-campaign-commit <campaign-name>

  6. Verify that the campaign status is COMMITTED:

    cmw-campaign-status <campaign-name>

    It can take some time before the campaign is committed. Repeat the command until the campaign status is COMMITTED.

5.4.2   Roll Back a Campaign

To roll back a campaign:

  1. Stop the executing campaign, if the campaign is executing:

    cmw-campaign-stop <campaign-name>

  2. Roll back the campaign:

    cmw-campaign-rollback <campaign-name>

  3. Verify that the campaign status is ROLLBACK COMPLETED:

    cmw-campaign-status <campaign-name>

    If the campaign status is ROLLBACK COMPLETED, continue with the next step.

    If the campaign status is ROLLBACK FAILED, initiate a fallback by restoring and restarting the cluster, see Section 4.4 Restore Using Core MW Partial Backup – Deprecated.

  4. Commit the campaign, if it rolled back successfully:

    cmw-campaign-commit <campaign-name>

  5. Verify that the campaign status is ROLLBACK_COMMITTED:

    cmw-campaign-status <campaign-name>

    It can take some time before the campaign is committed. Repeat the command until the campaign status is ROLLBACK_COMMITTED.

5.4.3   Add Software

Applications are installed using a campaign. The application is contained in one or more software bundles and the installation campaign in an SDP. The installation campaign is target system size specific.

To install an application using a campaign:

  1. Copy the installation campaign SDP and the software bundles to a location at the target system, for example:

    /home/MyAppl/incoming

  2. Import all campaign SDPs and software bundles:

    cmw-sdp-import /home/MyApp/incoming/<installation-campaign-filename>

    cmw-sdp-import /home/MyApp/incoming/<application-filename>

  3. Execute the installation campaign, see Section 5.4.1 Execute an SMF Campaign.
  4. Delete the installation campaign SDP:

    cmw-sdp-remove <installation-campaign>

5.4.4   Upgrade Software

Any software delivered as a software bundle is upgraded using a campaign. The new version of the software is contained in a software bundle and the upgrade campaign in a campaign SDP.

To upgrade software using a campaign:

  1. Copy the campaign SDP and the software bundles to a location at the target system, for example:

    /home/MyAppl/incoming

  2. Import all campaign SDPs and software bundles:

    cmw-sdp-import /home/MyApp/incoming/<upgrade-campaign-filename>

    cmw-sdp-import /home/MyApp/incoming/<new-software-filename>

  3. Execute the upgrade software campaign, see Section 5.4.1 Execute an SMF Campaign.
  4. Delete the campaign SDP and the old application software bundles:

    cmw-sdp-remove <upgrade-campaign> <old-software-bundle-name>...

5.4.5   Delete Software

Software is deleted using a campaign. The removal campaign is contained in an SDP and target system specific.

To delete software using a campaign:

  1. Import the removal campaign:

    cmw-sdp-import /home/MyApp/incoming/<removal-campaign-sdp-filename>

  2. Execute the removal campaign, see Section 5.4.1 Execute an SMF Campaign.
  3. Delete the removal campaign SDP and the software bundles:

    cmw-sdp-remove <removal-campaign> <software-bundle-name>...

5.4.6   Initiate SMF Verification

An application can provision itself with the ability to influence the progress of an SMF campaign by registering a callback function during application startup. Once the callback is registered, it is called whenever a campaign is initiated, see Section 5.4.1 Execute an SMF Campaign.

To initiate campaign verification manually and hence execute all currently registered callbacks, use the following command:

cmw-campaign-verify <campaign-name>

The command returns exit code 0 on success, otherwise exit code 1.

Verification can also be initiated through ECIM SWM verify(), which makes use of cmw-campaign-verify.

5.5   Configure ECIM SWM

If ECIM for SWM is to be used, the installation-dependent attributes in the ECIM SWM object must be set. These attributes are described in Table 4.

For more information about these attributes, refer to Core MW Software Managementand Managed Object Model cmw_SwM.

All these attributes can be set using the following command:

cmw-swm-config-set <option> [<option>...]

Except for localFileStorePath and subType, all attributes in Table 4 can also be configured using the NBI.

The command takes the options described in Table 4.

Table 4    Command Options

Option

Description

-l, --localFileStorePath

localFileStorePath is used when creating UpgradePackage Managed Objects (MOs) using action createUpgradePackageLocal. Each local Upgrade Package (UP) to be represented by an UpgradePackage MO must be put in a unique directory directly under localFileStorePath.


For more details, refer to action createUpgradePackageLocal in Managed Object Model cmw_SwM.


    Expectations on the file store path are as follows:

  • The specified directory must exist before setting localFileStorePath.

  • The directory must be accessible by both controllers.

  • The directory must be writable to delete the packages as part of action removeUpgradePackage in Managed Object Model cmw_SwM.


As no default setting exists, this attribute must be assigned if action createUpgradePackageLocal is used.

-t, --tmpStorePath

tmpStorePath is the path to the temporary storage to be used by ECIM SWM during the upgrade process. If tmpStorePath is not set, ECIM SWM uses the /tmp directory as the default temporary storage.


    Expectations on the temporary storage are as follows:

  • The directory structure must be created before using cmw-swm-config-set.

  • The directory must be writable to ECIM SWM.

-s, --subType

subType is the name of the node type. The subType describes the Managed Element, for example, "smallSystem" or "mergedSystem". This attribute is used to select the correct campaign to apply from a UP.


For more details about how it works, refer to Section Element MESubtype in Core MW Software Management.

-b, --automaticBackup

Set automaticBackup to 1 (true) if ECIM SWM is to take an automatic backup at activation, otherwise use 0 (false).


Defaults to 1 (automatic restore enabled).

-r, --automaticRestore

automaticRestore is set to 1 (true) in order for ECIM SWM to perform automatic restore at failure.

-f, --fallbackTimer

fallbackTimer specifies the maximum number of seconds ECIM SWM waits for user action before fallback. Defaults to 1200.

-a, --alarmBeforeTimeout

alarmBeforeTimeout specifies the time in seconds that an alarm is issued before a fallback occurs. Defaults to 180.

Example 59   Configuring ECIM SWM

cmw-swm-config-set --automaticBackup 1 -s smallCluster -l ⇒
/home/my/package/repository

The command activates automatic backup, sets subType to "smallCluster", and the local file store path to /home/my/package/repository.

5.6   Use CLI for Upgrade Package/CSP

Core MW can consume a UP/CBA Software Package (CSP) by using the command cmw-swm. This command allows users not using the COM component to create a UP/CSP and upgrade a CBA system using the produced package. It also allows components and applications to use the same upgrade scenario with a limited CBA stack deployed. The command takes the options described in Table 5.

Table 5    Command Options

Option

Description

Example

--up-list

View a list ID of UPs or CSPs in the system. The number following the UP ID is the action ID of the Create action that created the UP.

$ cmw-swm --up-list


Output: ERIC-Test-UP150922123955-P1A01 1

--up-create

Create a new UP/CSP instance from URI – points to the directory where the UP/CSP content is located. The URI is local (for example file://data/dir/subdir, /storage/system/.../UP.tgz) or a remote (for example sftp://hostname/dir/subdir).


A UP is active when it has been created but not deleted or confirmed. No other UPs can be created if another UP is active. If the user tries to do that, error messages similar to the following are displayed:


  • CMW: error-string: @ComNbi@SwM::createUpgradePackage UpgradePackage=ERIC-Test-UP150922123955-P1A01 is still active

  • CMW: error - saImmOmAdminOperationInvoke_2 admin-op RETURNED: SA_AIS_ERR_BUSY (10)

  • CMW: ERROR (cmw-swm): Failed to execute create UP/CSP command for uri: file:///SoftwareManagement/cmwcsp-KQJd-UP2.tgz


The result of a successful execution of this action is an action ID. The user can use the action ID together with output of command cmw-swm --up-list to identify the UP ID, which is uniquely associated with each UP/CSP.

  • Create UP from local file path: $ cmw-swm --up-create /home/UP.tgz

  • Create UP from remote location, protected with password: $ cmw-swm --up-create sftp://user@hostname/dir/UP_dir pa55w0rd

--up-prepare

Prepare the ME for activation of the UP/CSP.

$ cmw-swm --up-prepare ERIC-Test-UP150922123955-P1A01

--up-activate

Activate UP/CSP step by step or all at once.

$ cmw-swm --up-activate ERIC-Test-UP150922123955-P1A01

--up-confirm

Confirm the upgrade procedure on the ME.

$ cmw-swm --up-confirm ERIC-Test-UP150922123955-P1A01

--up-cancel

Cancel the upgrade procedure before confirmation or cancel Activate action at breakpoints between steps. This option can also be used to cancel long running actions such as Prepare or Activate.

$ cmw-swm --up-cancel ERIC-Test-UP150922123955-P1A01

--up-remove

Delete a UP/CSP from the ME.

$ cmw-swm --up-remove ERIC-Test-UP150922123955-P1A01

--up-status

Get state of specific UP/CSP ID, track the progress and result of actions.


Output format:
Action: <action-name> - <action-state>
Result: <final-result-of-the-action>
State: <UP-state


The last line is only displayed when a UP ID is specified in the command.

  • Status of the last Create or Remove action. In this case, as UP is not created or deleted, no UP ID can be specified. $ cmw-swm --up-status
    Output:
    Action: CreateUpgradePackage - FINISHED
    Result: SUCCESS

  • Status of a UP after other actions: $ cmw-swm --up-status ERIC-Test-UP150922123955-P1A01
    Output:
    Action: Prepare - RUNNING
    Result: NOT_AVAILABLE
    State: PREPARE_IN_PROGRESS

--default-execmethod

View or set the default upgrade execution method.


Output format for view:
execMethod: <execution-method>


The following lines are only displayed when default has been configured for BALANCED execution method:
roleId: <ECIM_CrMRole-MO>
minSizeOfRole: <minimum-number-of-nodes-in-role>

minRemainingCapacity: <minimum-remaining-capacity>
numberOfSteps: <Empty>


numberOfSteps is not calculated for default.

  • View default execMethod: $ cmw-swm --default-execmethod
    Output:
    execMethod: ROLLING

  • Set default execMethod to ROLLING: $ cmw-swm --default-execmethod rolling

  • Set default execMethod to ONE-STEP: $ cmw-swm --default-execmethod one-step

--up-execmethod

View or set the upgrade execution method of a UP/CSP.


Output format for view:
execMethod: <execution-method>


The following lines are only displayed when the UP has been configured for BALANCED execution method):
roleId: <ECIM_CrMRole-MO>
minSizeOfRole: <minimum-number-of-nodes-in-role>

minRemainingCapacity: <minimum-remaining-capacity>
numberOfSteps: <calculated-number-of-steps>

  • View UP execMethod: $ cmw-swm --up-execmethod ERIC-Test-UP150922123955-P1A01
    Output:
    execMethod: BALANCED
    roleId: roleId=ScalableRole,ECIM_CrMcrMId=1
    minSizeOfRole: 2
    minRemainingCapacity: 35
    numberOfSteps: 5

  • Set UP execMethod to ROLLING: $ cmw-swm --up-execmethod ERIC-Test-UP150922123955-P1A01 rolling

  • Set UP execMethod to BALANCED using Role: $ cmw-swm --up-execmethod ERIC-Test-UP150922123955-P1A01 roleId=ScalableRole,ECIM_CrMcrMId=1 8 45
    (Minimum 8 nodes and minimum 45% remaining capacity.)

Example of upgrading software using cmw-swm:

  1. Create a UP/CSP from the file argument:

    cmw-swm --up-create /storage/system/software/coremw/repository/UP/ERIC-ActivateCommand_UP/ERIC-ActivateCommand_UP.tgz

    The UP/CSP can be created from file://, sftp://, or path of file.

  2. Verify that the UP/CSP was created and to get the <UP-ID> of the UP/CSP:

    cmw-cwm --up-list

  3. View the progress and result of the command in the previous step:

    cmw-swm --up-status

  4. View the UP status:

    cmw-swm --up-status <UP-ID>

  5. Verify that the UP has state INITIALIZED.
  6. Set the UP/CSP upgrade execution method to ONE-STEP, ROLLING, or BALANCED:

    cmw-swm --up-execmethod <UP_ID> one-step | rolling | <role-name> <min-size-of-role> <min-remaining-capacity>

    Command cmw-swm --up-execmethod <UP-ID> (without execution method arguments) can also be used to view the upgrade execution method configured for the UP/CSP.

  7. Prepare the ME for the activation of the UP/CSP with <UP-ID>:

    cmw-swm --up-prepare <UP-ID>

    The prerequisite of this action is that the state of the UP/CSP is INITIALIZED. This step is considered completed when the state of the UP/CSP is PREPARE_COMPLETED.

  8. Activate the UP/CSP step by step or all at once:

    cmw-swm --up-activate <UP-ID>

    If the UP/CSP is designed with more than one step and ignoreBreakpoints is set to false, action Activate is called several times.

  9. Verify that the upgrade procedure is completed:

    cmw-swm --up-confirm <UP-ID>

    The expected state is COMMIT_COMPLETED.

  10. Delete the UP/CSP MO given as action parameter:

    cmw-swm --up-remove <UP-ID>

    This command also deletes all files temporarily stored in the ME and associated with the UP/CSP.

During consuming of the CSP 1.2 or above where the campaign is generated automatically, multiple campaigns are sometimes generated. If this occurs, the preparation of the CSP fails with the following status:

Action: Prepare – FINISHED
Result: FAILURE - Unsupport multiple tcg campaigns yet
State: INITIALIZED

ECIM SwM does not support multiple campaigns, so the cmw-ait-install command is provided for the Automatic Installation Tool (AIT) to continue consuming this package at installation time:

cmw-ait-install [[--status] | [--disable-backup]] <CSP-package>

cmw-ait-install [[--status] | [--disable-backup]] <CSP-ID>

Note:  
This command is only to be executed to the CSP that has just failed the prepare phase with the above status.

Table 6    Command Options

Option

Description

Example

--disable-backup

By default, a backup is automatically created before consuming the package. This option is to disable the backup creation.

Check the CSP status: $ cmw-swm --up-status cba.test-CXP123456-1.0.0
Output:
Action: Prepare – FINISHED
Result: FAILURE - Unsupport multiple tcg campaigns yet
State: INITIALIZED


Continue the CSP: $ cmw-ait-install –-disable-backup cba.test-CXP123456-1.0.0

--status

Get state of specific CSP ID, track the progress and result of actions.


Output format:
State: <CSP-state>
Action: <action-name>
Additional Info: [Additional information of the current state, if applicable]
Result: <action-result>
Result Info: [Information about result, if applicable]

Check the AIT installation status: $ cmw-ait-install –-status cba.test-CXP123456-1.0.0
Output:
State: RUNNING
Action: PREPARING
Additional Info: Generating campaigns from CSM model
Result: NOT_AVAILABLE
Result Info:

5.7   Configure ISP Events for Cluster Restarts

ISP events for cluster restarts are disabled by default.

This feature can be enabled or disabled during AIT installation of Core MW. For more information, see Section Automatically Installing Core MW by Using AIT in Core MW SW Installation.

ISP events for cluster restarts can be enabled in runtime with the cmw-utility command as follows:

cmw-utility immcfg --attribute ispClusterRebootLogEnabled=1 CmwMonitorIspId=1,CmwMonitorId=1,CmwSysConfigId=1

ISP events for cluster restarts can be enabled within a campaign by setting attribute ispClusterRebootLogEnabled of object with class type CmwMonitorlsp to 1.

An example of a campaign Init section that enables ISP events for cluster restarts by setting attribute ispClusterRebootLogEnabled to 1 is shown in Example 60.

Example 60   ISP Events for Cluster Restarts

<campInitAction>
 <immCCB ccbFlags="0">
   <modify objectDN="CMW_GETDN(^CmwMonitorIspId=1,CmwMonitorId=1,⇒
CmwSysConfigId=1$)" operation="SA_IMM_ATTR_VALUES_MODIFY">
    <attribute name="ispClusterRebootLogEnabled" type="SA_IMM_ATTR_SAUINT32T">
     <value>1</value>
    </attribute>
   </modify>
  </immCCB>
</campInitAction>
Note:  
In order for cluster restart events to be visible in the ISP report, the Core MW ISP_REPORT feature must also be enabled, as described in Section 3.10.4 In-Service Performance Report Feature.

5.8   Configure Reboot Behavior of Single-Step Procedures

SMF single-step procedures are typically used for installation (or removal) of components/applications where a component/application is not in-service upgradeable. If a single-step upgrade procedure contains software bundles, which require a reboot to install or remove, SMF can either perform a cluster reboot or perform nodewise reboot of only the affected nodes.

The default SMF behavior is to perform nodewise reboot during single-step upgrade procedures.

To define the affected nodes for nodewise reboot, the campaign.xml file must specify them in the <singleStepUpgrade> section, as shown in Example 61.

Example 61   Campaign Defining Affected Nodes for Single-Step Upgrade Procedures

<singleStepUpgrade>
  <upgradeScope>
    <forAddRemove>
      <deactivationUnit>
        <actedOn>
          <byName objectDN="safAmfNode=SC-2,safAmfCluster=myAmfCluster"/>
        </actedOn>
      </deactivationUnit>	
      <activationUnit>
        <actedOn>
          <byName objectDN="safAmfNode=SC-2,safAmfCluster=myAmfCluster"/>
        </actedOn>

Attribute smfSSAffectedNodesEnable of the SMF configuration controls the nodewise reboot feature and defaults to 1. To change SMF behavior to reboot all nodes in the cluster during a single-step upgrade procedure, a campaign must disable nodewise reboot, as shown in Example 62.

Example 62   Campaign Disabling Nodewise Reboot Feature

<campWrapupAction>
  <immCCB ccbFlags="0">
    <modify operation="SA_IMM_ATTR_VALUES_REPLACE" objectDN="smfConfig=1,safApp=safSmfService">
      <attribute name="smfSSAffectedNodesEnable" type="SA_IMM_ATTR_SAUINT32T">
        <value>0</value>
      </attribute>
    </modify>
  </immCCB>
</campWrapupAction>

5.9   Configure Remote Fencing Parameters

All RF parameters are configured within the RF plug-in. For more information on RF plug-ins, refer to Section Remote Fencing in Core MW Programmer's Guide.

5.9.1   OpenSAF Parameters

Table 7 describes the OpenSAF fencing parameters.

Table 7    OpenSAF Fencing Parameters

Parameter

Description

Example

FMS_NODE_ISOLATION_TIMEOUT

Enable self-fencing set value to non-zero value. Unit in milliseconds.

Export FMS_NODE_ISOLATION_TIMEOUT=10

FMS_PROMOTE_ACTIVE_TIMER

The Promote active timer is set to delay the Standby controllers reboot request, as the Active controller also requests reboot of the standby. The resolution is in 10 ms units.

Export FMS_PROMOTE_ACTIVE_TIMER=300

FMS_USE_REMOTE_FENCING

Enable remote fencing.

Export FMS_USE_REMOTE_FENCING=1

FMS_FENCE_CMD

Fencing command.

Export FMS_FENCE_CMD="stonith"

FMS_DEVICE_TYPE

Fencing device type.

Export FMS_DEVICE_TYPE="external/libvirt"

FMS_HYPERVISOR_URI

Connection URI to hypervisor host machine.

Export FMS_HYPERVISOR_URI="qemu+tcp://192.168.122.1/system"

FMS_FENCE_ACTION

Fence action.

Export FMS_FENCE_ACTION="reset"

5.9.2   Core MW Parameters

Table 8 describes the Core MW RF parameters.

Table 8    Core MW RF Parameters

Parameter

Description

Example

FMS_USE_REMOTE_FENCING

Enable remote fencing.

Export FMS_USE_REMOTE_FENCING=1

RF_NAME

Remote fencing plug-in name.

Export RF_NAME="FENCING_STONITH-CXP9010009_1"

RF_VERSION

Remote fencing plug-in version.

Export RF_VERSION="R1A01"

TARGET_PLUGIN

Full path location to target.<plugin> file.

Export TARGET_PLUGIN="/clust er/home/fencingtest/target.FENCING_STONITH-CXP9010009_1-R1A01"

6   Performance Management

PM jobs can be created, modified, deleted, started, and stopped programmatically using the IMM Object Management (OM) API.

This section describes the following shell command support for managing ECIM PM Jobs:

This section also describes the following PM operation:

Commands are to be run as root user or prefixed with sudo and run by a user belonging to the system-adm group.

6.1   Create ECIM PM Job

To create an ECIM PM Job, use the cmw-pmjob-create command.

The command syntax is as follows:

cmw-pmjob-create <job-name>
                 (-u <pmgroup-id>
                  [-M <meas-reader>]
                  [-R <variation-rate>]
                  [-d <threshold-direction>]
                  [(-I <mo-instance>...)]
                  [-m <meas-type>]
                  [-T <threshold-id>
                   -H <threshold-high>
                   -L <threshold-low>
                   -S <severity>]
                 )...
                 [-t <job-type>]
                 [-r <reporting-period>]
                 [-g <granularity-period>]
                 [-p <job-priority>]
                 [-q <requested-state>]
                 [-c <job-control>]

The syntax is interpreted as follows:

The command supports any number of Measurement Readers (MRs) and Measurement Specifications (MSs).

For threshold jobs, up to four thresholds object are supported.

The MS can use a direct reference to an MT or use an indirect reference by referring to a moClass.

A direct reference to an MT occurs when the moClass (option -u) and the MT (option -m) are specified for the MR.

An indirect reference to a group occurs when only the moClass (option -u) is specified for the MR. However, indirect references are only valid for measurement jobs (-t 1), not for threshold jobs (-t 2).

The optional parameters for threshold jobs are as follows:

The optional Job parameters are as follows:

The creation of an ECIM PM Job named job3, which directly references MT rxOctets in moClass mocRx is shown in Example 63.

Example 63   Creating an ECIM PM Job

SC-1:~ # cmw-pmjob-create job3 -u mocRx -m rxOctets
PM job job3 created
SC-1:~ #

The command returns exit code 0 on success, otherwise exit code 1.

Attempting to create an ECIM PM Job without first defining the MT or moClass results in failure, as shown in Example 64.

Example 64   Failed Attempt to Create an ECIM PM Job

SC-1:~ # cmw-pmjob-create job4 -u mocTx -m txOctets
Creating job job4...
Failed to apply object creations 21
CMW: ERROR (cmw-pmjob-create): Job creation from command line failed.
SC-1:~ #

How to create an ECIM PM Job that references an MT indirectly by the moClass mocRxRate (by not specifying option -m) is shown in Example 65.

Example 65   Creating an ECIM PM Job That Indirectly References an MT

SC-1:~ # cmw-pmjob-create job4 -u mocRxRate
PM job job4 created.
SC-1:~ #

Multiple MT references can be applied to the same job, as shown in Example 66.

Example 66   Creating an ECIM PM Job with Multiple MTs

SC-1:~ # cmw-pmjob-create job5 -u mocRx
                               -m rxDiscFr
                               -T rxDiscAlm
                               -H 300 -L 250 -S 3
                               -u mocRxRate
                               -m rxRate
                               -T rxRateOversub
                               -H 600 -L 550 -S 3
                               -T rxRateHigh
                               -H 400 -L 350 -S 4
                               -T rxRateBusy
                               -H 200 -L 150 -S 6
                               -t 2
PM job job5 created.
SC-1:~ #

job5 is defined as a threshold type job (flag -t is set to 2), as shown in Example 66.

job5 contains two MR references that can be described as follows:

Attribute job-control is optional. Defaults to FULL, which means that the job can be started, stopped, or deleted.

PMJob2 in Example 67 is defined as a measurement job, which has job-control as 1 (STARTJOB).

Example 67   Creating an ECIM PM Job with Start Stop Control

SC-1:~ # cmw-pmjob-create PMJob2 -u PMGroup-1
                                 -t 1 -r 3 -g 3
                                 -p 3 -q 2 -c 1
SC-1:~ #

6.2   Start ECIM PM Job

To start an ECIM PM Job, use the cmw-pmjob-start command.

Note:  
The precondition is that job-control is FULL or STARTSTOP.

The command syntax is as follows:

cmw-pmjob-start <job-name>

The syntax is interpreted as follows:

Example 68   Starting an ECIM PM Job

SC-1:~ # cmw-pmjob-start TC-CMW-PM-JOB-CMD-START
PM Job TC-CMW-PM-JOB-CMD-START Started.
SC-1:~ #

The command returns exit code 0 on success, otherwiseexit code 1.

A failure to start an ECIM PM Job whose job-name does not exist is shown in Example 69.

Example 69   Starting a Non-Existing ECIM PM Job

SC-1:~ # cmw-pmjob-start TC-CMW-PM-JOB-CMD-START_non-exist
CMW: ERROR (cmw-pmjob-start): PM Job ⇒
TC-CMW-PM-JOB-CMD-START_non-exist does not exist
SC-1:~ #

Attempting to start an already started ECIM PM Job results in exit code 0 with the following message:

Warning: PM Job <job-name> is already Active

6.3   Stop ECIM PM Job

To stop an ECIM PM Job, use the cmw-pmjob-stop command.

Note:  
The precondition is that job-control is FULL or STARTSTOP.

The command syntax is as follows:

cmw-pmjob-stop <job-name>

The syntax is interpreted as follows:

Example 70   Stopping an ECIM PM Job

SC-1:~ # cmw-pmjob-stop TC-CMW-PM-JOB-CMD-STOP
PM job TC-CMW-PM-JOB-CMD-STOP stopped.
SC-1:~ #

The command returns exit code 0 on success, otherwise exit code 1.

Attempting to stop an already stopped ECIM PM Job results in exit code 0 with the following message:

Warning: PM Job <job-name> is already Stopped

6.4   Delete ECIM PM Job

To delete a stopped ECIM PM Job, use the cmw-pmjob-delete command.

Note:  
The precondition is that job-control is FULL.

The command syntax is as follows:

cmw-pmjob-delete <job-name>

The syntax is interpreted as follows:

Example 71   Deleting an ECIM PM Job

SC-1:~ # cmw-pmjob-delete TC-CMW-PM-JOB-CMD-CC-ECIM-001
PM job TC-CMW-PM-JOB-CMD-CC-ECIM-001 deleted.
SC-1:~ #

The command returns exit code 0 on success, otherwise exit code 1.

Attempting to delete an ACTIVE ECIM PM Job results in exit code 1 with the following message:

CMW: ERROR (cmw-pmjob-delete): PM Job <job-name> is Active - can not be deleted

Attempting to delete a non-existent ECIM PM Job results in exit code 1 with the following message:

CMW: ERROR (cmw-pmjob-delete): PM Job <job-name> does not exist

6.5   Report Status of ECIM PM Job

To report the status of an ECIM PM Job, use the cmw-pmjob-status [-v] <job-name> command.

The command syntax is as follows:

cmw-pmjob-status [-v] <job-name>

The syntax is interpreted as follows:

Example 72   Reporting Status of an ECIM PM Job

SC-1:~ # cmw-pmjob-status TC-CMW-PM-JOB-CMD-STATUS-2
PM job TC-CMW-PM-JOB-CMD-STATUS-2 is active
SC-1:~ #

Example 73   Reporting Status of an ECIM PM Job Using Verbose Mode

SC-1:~ # cmw-pmjob-status -v TC-CMW-PM-JOB-CMD-STATUS-2
Name                   Value(s)
========================================
pmJobId                TC-CMW-PM-JOB-CMD-STATUS-2
jobType                Measurement(0x1)
granularityPeriod      1 minute(0x3)
reportingPeriod        1 minute(0x3)
jobPriority            High(0x3)
requestedJobState      Active(0x1)
currentJobState        Active(0x1)
Overall Job State      Active(0x1)
SC-1:~ #

If the job does not exist or if the status cannot be shown, the command returns exit code 1 and logs the following message:

CMW: ERROR (cmw-pmjob-status): Could not show the status for PM Job <job-name>

Otherwise the command returns exit code 0.

6.6   List ECIM PM Jobs

To list ECIM PM Jobs, use the cmw-pmjob-list command.

The command syntax is as follows:

cmw-pmjob-list [<options>]

The possible options are as follows (<N> is a numeral):

Using the command without any options results in a short listing, showing each ECIM PM Job name, requested job state, and current job state, as shown in Example 74.

Example 74   Listing ECIM PM Jobs

SC-1:~ # cmw-pmjob-list
pmJobId=TCPMJCA_0, requestedJobState=Stopped(0x2), currentJobState=Stopped(0x2)
pmJobId=TCPMJCA_1, requestedJobState=Active(0x1),  currentJobState=Active(0x1)
pmJobId=TCPMJCA_2, requestedJobState=Stopped(0x2), currentJobState=Stopped(0x2)
pmJobId=TCPMJCA_3, requestedJobState=Active(0x1),  currentJobState=Active(0x1)
pmJobId=TCPMJCA_4, requestedJobState=Stopped(0x2), currentJobState=Stopped(0x2)
SC-1:~ #

The command contains a -v flag for verbose (long format). The output contains detailed information about each ECIM PM Job, as shown in Example 75.

Example 75   Listing ECIM PM Jobs Using Verbose Mode

SC-1:~ # cmw-pmjob-list -v
Name                   Value(s)
========================================
pmJobId                Job1
jobType                Measurement(0x1)
granularityPeriod      15 minutes(0x5)
reportingPeriod        5 minutes(0x4)
jobPriority            Medium(0x2)
requestedJobState      Active(0x1)
currentJobState        Active(0x1)
Overall Job State      Active(0x1)
Name                   Value(s)
========================================
pmJobId                Job2
jobType                Threshold(0x2)
granularityPeriod      15 minutes(0x5)
reportingPeriod        1 minute(0x3)
jobPriority            Medium(0x2)
requestedJobState      Active(0x1)
currentJobState        Active(0x1)
Overall Job State      Active(0x1)
Name                   Value(s)
========================================
pmJobId                Job3
jobType                Threshold(0x2)
granularityPeriod      15 minutes(0x5)
reportingPeriod        1 hour(0x7)
jobPriority            Medium(0x2)
requestedJobState      Active(0x1)
currentJobState        Active(0x1)
Overall Job State      Active(0x1)
SC-1:~ #

Multiple options can be combined in one command to OR the result. For example, using multiple options on the same job list as in Example 75, jobs with reportingPeriod equal to 1 minute and jobType equal to Measurement can be shown. A filtered list using multiple options is shown in Example 76.

Example 76   Listing ECIM PM Jobs Using Multiple Options

SC-1:~ # cmw-pmjob-list -v -r 3 -t 1
Name                   Value(s)
========================================
pmJobId                Job1
jobType                Measurement(0x1)
granularityPeriod      15 minutes(0x5)
reportingPeriod        5 minutes(0x4)
jobPriority            Medium(0x2)
requestedJobState      Active(0x1)
currentJobState        Active(0x1)
Overall Job State      Active(0x1)
Name                   Value(s)
========================================
pmJobId                Job2
jobType                Threshold(0x2)
granularityPeriod      15 minutes(0x5)
reportingPeriod        1 minute(0x3)
jobPriority            Medium(0x2)
requestedJobState      Active(0x1)
currentJobState        Active(0x1)
Overall Job State      Active(0x1)
SC-1:~ #

Multiple options can be used in short format (without flag -v), as shown in Example 77.

Example 77   Listing ECIM PM Jobs in Short Format with Multiple Flags

SC-1:~ # cmw-pmjob-list -r 3 -t 1 -g 5
pmJobId=Job2, requestedJobState=Active(0x1), ⇒
currentJobState=Active(0x1), reportingPeriod=3
pmJobId=Job1, requestedJobState=Active(0x1), ⇒
currentJobState=Active(0x1), jobType=1
pmJobId=Job1, requestedJobState=Active(0x1), ⇒
currentJobState=Active(0x1), granularityPeriod=5
pmJobId=Job2, requestedJobState=Active(0x1), ⇒
currentJobState=Active(0x1), granularityPeriod=5
pmJobId=Job3, requestedJobState=Active(0x1), ⇒
currentJobState=Active(0x1), granularityPeriod=5
SC-1:~ #

6.7   Modify ECIM PM Job

To modify a stopped ECIM PM Job, use the cmw-pmjob-modify command.

The command syntax is as follows:

cmw-pmjob-modify <job-name> <added-MOs> | <deleted-MOs> | <modified-attributes>

Syntax when adding MeasurementReader MOs:

cmw-pmjob-modify <job-name>
                 [(-C
                   [-M <meas-reader>]
                   [-R <threshold-rate-of-variation>]
                   [-d <threshold-direction>]
                   [(-i <mo-instance>...)]
                   -u <pmgroup-id>
                   [-m <meas-type>]
                  )...]

Syntax when adding PmThresholdMonitoring MOs:

cmw-pmjob-modify <job-name>
                 [(-C
                   [-M <meas-reader>]
                   (-T <threshold-id>
                    -H <threshold-high>
                    -L <threshold-low>
                    -S <severity>)
                  )...]

Syntax when adding both MeasurementReader and PmThresholdMonitoring MOs:

cmw-pmjob-modify <job-name>
                 [(-C
                   [-M <meas-reader>]
                   [-R <threshold-rate-of-variation>]
                   [-d <threshold-direction>]
                   [(-i <mo-instance>...)]
                   -u <pmgroup-id>
                   -m <meas-type>
                   (-T <threshold-id>
                    -H <threshold-high>
                    -L <threshold-low>
                    -S <severity>)
                  )...]

Syntax when deleting MOs:

cmw-pmjob-modify <job-name>
                 [(-D
                   -M <meas-reader>
                   [-T <threshold-id>]
                  )...]

Syntax when modifying attributes:

cmw-pmjob-modify <job-name>
                 [-r <reporting-period>]
                 [-g <granularity-period>]
                 [-p <job-priority>]
                 [-G <job-group>]
                 [-x <compression-type>]

This command requires -C to indicate child MO creation, and -D to indicate child MO deletion. All the other options have the same meanings as with the cmw-pmjob-create command, see Section 6.1 Create ECIM PM Job. The parts within () can occur multiple times.

The addition of a MeasurementReader MO to an existing job named job3 is shown in Example 78.

Example 78   Adding a MeasurementReader MO to an Existing ECIM PM Job

SC-1:~ # cmw-pmjob-modify job3 -C -u mocRx -m rxOctets
Modifying job job3...
PM job job3 modified.
SC-1:~ #

The command returns exit code 0 on success, otherwise exit code 1.

The addition of both a MeasurementReader MO and its child PmThresholdMonitoring MO to an existing threshold job named job5 is shown in Example 79.

Example 79   Adding a MeasurementReader MO and its Child PmThresholdMonitoring MO to an Existing ECIM PM Job

SC-1:~ # cmw-pmjob-modify job5 -C -M mrRxRate -u mocRxRate -m rxRate ⇒
-T rxRateOversub -H 50 -L 45 -S 3
Modifying job job5...
PM job job5 modified.
SC-1:~ #

The addition of a PmThresholdMonitoring MO to an existing MeasurementReader MO of an existing job named job5 is shown in Example 80. As the PmThresholdMonitoring MO is a child of a MeasurementReader MO, parameter -M must be specified.

Example 80   Adding a PmThresholdMonitoring MO to an Existing MeasurementReader MO

SC-1:~ # cmw-pmjob-modify job5 -C -M mrRxRate -T rxRateOversub -H 50 ⇒
-L 45 -S 3
Modifying job job5...
PM job job5 modified.
SC-1:~ #

The deletion of a MeasurementReader MO from an existing job named job3 is shown in Example 81.

Example 81   Deleting a MeasurementReader MO from an Existing ECIM PM Job

SC-1:~ # cmw-pmjob-modify job3 –D –M mrRxRate
Modifying job job3...
PM job job3 modified.
SC-1:~ #

The deletion of a PmThresholdMonitoring MO from an existing threshold job named job5 is shown in Example 82. Parameter -M must be specified.

Example 82   Deleting a PmThresholdMonitoring MO from an Existing ECIM PM Job

SC-1:~ # cmw-pmjob-modify job5 -D -M mrRxRate -T rxRateOversub
Modifying job job5...
PM job job5 modified.
SC-1:~ #

Modifying one or more ECIM PM Job attributes for an existing job named job3 is shown in Example 83.

Example 83   Modifying Attributes for an Existing ECIM PM Job

SC-1:~ # cmw-pmjob-modify job3 -p 2 -x 0 -G group1
Modifying job job3...
PM job job3 modified.
SC-1:~ #

6.8   Display Active PM Values for an Instance

To display active PM values for a specified instance, use the command cmw-pm-show-counters. The command displays the current value of all MTs associated with a specified instance.

Note:  
The precondition is that the instance is associated with the MTs that are measured by an active ECIM PM Job.

The command syntax is as follows:

cmw-pm-show-counters [-v] <instance>
                     [-t <timeout>]
                     [-j <job-name> [<job-name>...]]
                     [-m <meas-type> [<meas-type>...]]

The syntax is interpreted as follows:

The command returns exit code 0 on success, otherwise exit code 1.

Example 84   Displaying Current Instance Values

cmw-pm-show-counters MeasObj=1
    intCounterActive=123 SUSPECT
    multivalueIntCounter=12,14,16

Example 85   Displaying Verbose Current Instance Values

cmw-pm-show-counters -v MeasObj=1
    intCounterActive=123 PmJob=1 Gp=5 min SUSPECT
    multivalueIntCounter=12,14,16 PmJob=1 Gp=5 min

7   OpenSAF Tools

7.1   OpenSAF Tools Wrapper

The cmw-utility command can be used to run the following OpenSAF tools:

The command syntax is as follows:

cmw-utility [-h | --help] <immfind | immlist | immcfg | immadm | amfadm | runasroot> [<options>]

The syntax is interpreted as follows:

7.1.1   immfind

immfind is used for searching for IMM objects.

The command syntax is as follows:

cmw-utility immfind [path...] [<options>]

The options are as follows:

Example 86   Searching for IMM Objects

cmw-utility immfind --class SaAmfCluster

7.1.2   immlist

immlist is used for listing IMM objects.

The command syntax is as follows:

cmw-utility immlist [<options>] <object-name> [<object-name>...]

cmw-utility immlist [<options>] <class-name>

The options are as follows:

Example 87   Listing IMM Objects

cmw-utility immlist safAmfCluster=myAmfCluster
cmw-utility immlist --attribute SaImmAttrClassName ⇒
CmwMonitorId=1,CmwSysConfigId=1
cmw-utility immlist --class CmwMonitor

7.1.3   immcfg

immcfg is for creating, deleting, or modifying IMM objects.

The command syntax is as follows:

cmw-utility immcfg ([<options>] [<object-name>])...

The options are as follows:

Example 88   Creating IMM Objects

cmw-utility immcfg --create-object CmwPmPmJob ⇒
pmJobId=CmwUtilityTestJobObj,CmwPmpmId=1

Example 89   Changing IMM Objects

cmw-utility immcfg --attribute requestedJobState=2 ⇒
CmwPmPmJob pmJobId=CmwUtilityTestJobObj,CmwPmpmId=1

Example 90   Deleting IMM Objects

cmw-utility immcfg --delete-object ⇒
pmJobId=CmwUtilityTestJobObj,CmwPmpmId=1

7.1.4   immadm

immadm is used for performing an IMM admin operation.

The command syntax is as follows:

cmw-utility immadm [<options>] [<object-name>...]

The options are as follows:

Example 91   Performing an IMM Admin Operation

cmw-utility immadm --operation-id 1 ⇒
safJob=CmwUtilityTestJobObj,safPm=1

7.1.5   amfadm

amfadm is used for performing an AMF admin operation.

The command syntax is as follows:

cmw-utility amfadm [<options>] <command> <object-name>

The options are as follows:

Example 92   Performing ADM Admin Operations

cmw-utility amfadm --su lock safSu=SC-1,safSg=2N,⇒
safApp=ERIC-CoreMW
cmw-utility amfadm unlock safSu=SC-1,safSg=2N,⇒
safApp=ERIC-CoreMW

7.1.6   runasroot

runasroot is used for running a command with root privileges. It only supports the SMF service and must be called through SMF callbacks.

The command syntax is as follows:

cmw-utility runasroot <command>

For an example, refer to Section Built-in SMF API Callback Receiver in Core MW Software Management.

8   Backup and Restore Framework

For information about the Backup and Restore Framework, refer to BRF-C Management Guide.



Copyright

© Ericsson AB 2015–2017. All rights reserved. No part of this document may be reproduced in any form without the written permission of the copyright owner.

Disclaimer

The contents of this document are subject to revision without notice due to continued progress in methodology, design and manufacturing. Ericsson shall have no liability for any error or damage of any kind resulting from the use of this document.

Trademark List
All trademarks mentioned herein are the property of their respective owners. These are shown in the document Trademark Information.

    Core MW Management Guide         Core Middleware