Spectrum AlarmNotifier SANM Fault Tolerant running only on MLS
search cancel

Spectrum AlarmNotifier SANM Fault Tolerant running only on MLS

book

Article ID: 260633

calendar_today

Updated On:

Products

DX NetOps CA Spectrum

Issue/Introduction

The following KB details how to setup SANM Fault tolerant (FT) Alarm Notifier (AN):

KB : Spectrum AlarmNotifier SANM Fault Tolerant

However, this solution will only work when:

  1. If you have a standalone environment OR

  2. If you are running AN on *ALL* the DSS.

Are there any other suggestions/attributes in the script to identify which SS is active which can be used to make this work ? 

Environment

DX NetOps Spectrum Release : 22.2

Cause

When running AlarmNotifier (AN) *only* on MLS and FT MLS with AN on both the MLS and FT MLS being started by processd,  the SetScript and ClearScript are modified based on the KB above, then a SANM policy is configured for it.

1.      Generate an alarm on primary DSS-2 (non MLS SS)

2.      ALARM PRECEDENCE was 10, MLS AN picked up the code and sent email notification.

3.      Shut down my MLS SS (simulate a SS crash). processd, AN and other processes were running.

4.      Generate the same alarm on primary DSS-2.

5.      ALARM PRECEDENCE was 10, MLS AN picked up the code and sent email notification.

6.      Shut down my MLS SS and processd (to simulate something really going bad).

7.      Generate the same alarm on primary DSS-2.

8.      ALARM PRECEDENCE was 10, MLS was *DOWN* and so *NO* email.

So configuring AN in the way suggest in the KB Article link will not solve this setup problem.

Resolution

You can identify the running landscape by issuing the following RESTful API command:

curl -v -X GET --header 'content-type:application/xml' --user spectrum:<PASSWORD> "https://<SPECTRUM_ONECLICK>:8443/spectrum/restful/landscapes"

This will return an XML body as per:

TechDocs : DX NetOps 22.2 Spectrum : GET landscapes

You'd have to parse it to get the isPrimary field:

<isPrimary>true</isPrimary>

Just true or false answer, which will let you know which one is running.