Ciena Blue Planet MCP
The Message Bus Probe can be configured to obtain events from Blue Planet MCP Release 3.0.
- message_bus_ciena_mcp.props
- message_bus_ciena_mcp.rules
- message_bus_ciena_notificationMap.rules
- message_bus_ciena_resyncMap.rules
- cienaMcpTransport.properties
- ciena_mcp_parser_config.json
- Configure the probe properties in the message_bus_ciena_mcp.props
file.
Username : 'username' Password : 'password' Host : 'mcp.ciena.com' Port : 443 EnableSSL : 'true' KeyStore : '/home/netcool/keystore.jks' KeyStorePassword : 'password' RulesFile : '$OMNIHOME/probes/linux2x86/message_bus_ciena_mcp.rules' PropsFile : '$OMNIHOME/probes/linux2x86/message_bus_ciena_mcp.props' TransportFile : '$OMNIHOME/java/conf/cienaMcpTransport.properties' TransportType : 'WebSocket' TransformerFile : '$OMNIHOME/probes/linux2x86/ciena_mcp_parser_config.json' MessageLog : '$OMNIHOME/log/message_bus_ciena_mcp.log' InitialResync : 'true' HeartbeatInterval : 1
Update the properties with the values appropriate for your system.
- Configure the transport properties in the cienaMcpTransport.properties
file.
## Add the required tokens to the keepTokens setting keepTokens=token,user,RSV_TOTAL:/meta/query-total ## Get the client token from /tron/api/v1/tokens loginRequestURI=/tron/api/v1/tokens loginRequestMethod=POST loginRequestContent={\"username\":\"++Username++\",\"password\":\"++Password++\"}
++Username++
and++Password++
used inloginRequestContent
will be substituted with the values specified for Username and Password in the probe properties file. When correctly authenticated, the response will contain a token which will be used in subsequent API queries.#Use with pagination resyncRequestURI=/nsa/api/v2_0/alarms/filter/filteredAlarms?filter%5Bstate%5D%5B%5D=ACTIVE&filter%5Bseverity%5D%5B%5D=CRITICAL%2CMAJOR%2CMINOR%2CWARNING&offset=++{0,100,100}++&pageSize=100 resyncRequestMethod=GET resyncRequestHeaders=Authorization=Bearer ++token++
These properties specify the Alarms (v2) REST API query to retrieve network alarms for resynchronisation purposes. This query filters only for active alarms having
Critical
,Major
,Minor
andWarning
severities. The token value will be substituted with the token value retrieved from successful authentication with Blue Planet MCP.The query also uses an offset pagination functionality to enable the probe to request for data in batches. The offset value
++{start, stop, step}++
will be substituted with the correct number at runtime by the probe. In the example above, the offset number is derived by adding the start and step numbers namely:0+100=100
. You should specify0
for thestart
value to indicate that the start of the returned data is from the first record and specify similar values for thestep
andpageSize
. Thestop
value is currently not used to calculate the offset value and can be ignored. When 100 is specified for thestep
andpageSize
, MCP returns 100 records for each queried batch.## Connecting to Frostpush websocket webSocketURI=/kafkacomet/socket/websocket?user_id=++user++&vsn=1.0.0 webSocketHeaders=Authorization=Bearer ++token++ webSocketSubscribeMessage={\"topic\":\"topics:bp.aeprocessor.v1.alarms\",\"ref\":0,\"event\":\"phx_join\",\"payload\":{}} webSocketRefreshMessage={\"topic\":\"topics:bp.aeprocessor.v1.alarms\",\"event\":\"heartbeat\",\"payload\":{},\"ref\":\"1\"} webSocketRefreshInterval=20
These properties configure the probe to subscribe to notifications using WebSocket. The
++user++
variable will be substituted with the value specified for Username in the probe properties file.To keep the WebSocket connection open, a heartbeat must be sent with a frequency of less than every 30 seconds. If the Blue Planet MCP server does not receive a heartbeat every 30 seconds, in the absence of any other messages, the connection will be terminated. The default
webSocketRefreshInterval
value is 20 seconds.## Refresh the tokens every hour , change the interval if necessary. loginRefreshURI=/tron/api/v1/tokens loginRefreshMethod=POST loginRefreshContent={\"username\":\"++Username++\",\"password\":\"++Password++\"} loginRefreshInterval=3600 refreshRetryCount=5
Blue Planet MCP sets the session inactivity timeout value per system or user, this can be viewed and configured in the Blue Planet MCP UI System > Security > Inactivity tab. For the HTTP channel to be kept alive,
loginRefreshInterval
should be set to a value lower than the MCP session inactivity timeout value. The defaultloginRefreshInterval
value is 3600 seconds. The defaultrefreshRetryCount
is 5 times. - Configure the transformer properties in the
ciena_mcp_parser_config.json
file. Update the endpoint attribute ofNotificationAlarmParser
to match thewebSocketURI
used in thecienaMcpTransport.properties
file.{ "eventSources" : [ { "endpoint" : "/kafkacomet/socket/websocket", "name" : "NotificationAlarmParser", "config" : { "dataToRecord" : [ ], "messagePayload" : "json.payload.body.value", "messageHeader" : "", "jsonNestedPayload" : "json.event.alarm", "jsonNestedHeader" : "", "messageDepth" : 4 } }, { "endpoint" : "resync", "name" : "ResyncAlarmParser", "config" : { "dataToRecord" : [ ], "messagePayload" : "json.data", "messageHeader" : "", "jsonNestedPayload" : "", "jsonNestedHeader" : "", "messageDepth" : 3 } }, { "name" : "OtherAlarmParser", "type" : "ANY", "config" : { "dataToRecord" : [ ], "messagePayload" : "json", "messageHeader" : "", "jsonNestedPayload" : "", "jsonNestedHeader" : "", "messageDepth" : 5 } }] }