Defining HP NFVD Observer jobs

You configure HP NFVD Observer jobs to dynamically load data from the HP NFVD REST interface.

Before you begin

Important: The HP NFVD Observer supports the HPE NFV Director API release 6.0.3.

Ensure you have the HP NFVD service details to hand, such as username, password, hostname and port.

The observer is installed as part of the core installation procedure.

Remember: Swagger documentation for the observer is available at the following default location: https://<your host>/1.0/hpnfvd-observer/swagger

About this task

The HP NFVD Observer job extracts HP NFVD resource information via REST. The observer loads and updates the resources and their relationships within the Agile Service Manager core topology service.

hpnfvd_observer_common.sh
The configuration file you use to customize HP NFVD Observer settings.
The parameters defined here are then used by the relevant start scripts to trigger the HP NFVD Observer jobs.
Tip: Alternatively, you can set the appropriate environment variables. If an environment variable is set, it takes precedence over the configuration file settings.
You define and start the following jobs.
Load job
Run this job whenever you need HP NFVD topology data refreshed.
By default, these jobs are one-off, transient jobs that carry out a full upload of all requested topology data when they are triggered.
You can also run these jobs (again) manually from the Observer UI, or schedule them to run at set times when you configure them.
Fileload job
Run this job to consumes topology data from a file.
The fileload job loads a baseline topology data view from a provided data file.
The fileload job is a transient (one-off) job that consumes topology data from the file, sends the data for processing, and then stops.
The fileload job provides an alternative to loading topology data through a file.
Listen job
A long-running job that reads LCM events published by HP NFVD on CGMB (Kafka) topic continually until it is explicitly stopped, or until the observer is stopped.
LCM messages in Kafka are typically encoded in Avro and are decoded by the observer using an HP NFVD LCM notification Avro schema file. Refer to the HP NFVD documentation on how to obtain the schema file. The additional steps required when using an Avro schema file are documented as part of the procedure.
The job should only be run after a load job has been completed.
The HP NFVD Observer loads the following resources and their relationship into the Agile Service Manager core topology service:
Table 1. HP NFVD resources and relationships loaded by the HP NFVD Observer job
Vertex Description
Organization Organization (for example, LOB) within Domain
VDC Tenant within Organization
VNF Group Group of VNF / CNF
VNF Virtual Network Function
CNF Containerized Network Function
VNFM Manager of VNF/CNF
VM Virtual Machine attached to VNF
Network Interface / Port Network Interface or Port attached to VNF
Connection Point Internal Connection Point
VNF-C VNF Component
CNF-C CNF Component
Virtual Link Virtual Network attached to VNF
Virtual Storage Storage attached to VNF
Deployment K8s resources attached to CNF
Statefulset K8s resources attached to CNF

Procedure

To edit the parameters in the configuration file

  1. Open the hpnfvd_observer_common.sh configuration file and edit the following parameters:
    For encryption: Run the encrypt_password.sh script in the ASM_HOME/bin directory:
    ./bin/encrypt_password.sh
    Enter and then confirm the password. The encryption utility returns an encrypted version.
    Table 2. Load job parameters
    Parameter Action Details
    Unique ID Enter a unique name for the job. Required
    HP NFVD data center name The name of the data center on which the HP NFVD is hosted. Required.
    Important: To observe the complete lifecycle of resources, configure the same data center name, username and hostname across all jobs.
    HP NFVD hostname Specify the hostname of the HP NFVD.
    HP NFVD username Specify the username.
    HP NFVD password Enter the password with which to authenticate. Required. Must be encrypted.
    HP NFVD host port Specify the port of the HP NFVD. Required
    HTTPS or HTTP connection to the HP NFVD server Choose to make either a HTTPS (secured) or HTTP connection to the HP NFVD server. Required. When set to true, provide the target system certificate to the certificate parameter.
    True for a CNF job and false for a VNF job The VNF job is expected to run with fewer threads and will take longer to complete.
    False
    If this filter parameter is set to false, cnf_group_filters defines group names to exclude.
    True
    If this filter parameter is set to true, cnf_group_filters defines group names to include.
    Required
    Target system certificate Specify a certificate by name to load into the trustStore.

    Required if the 'HTTPS connection to the HP NFVD server' parameter is set to true.

    To obtain authentication certificates using OpenSSL and store them as secrets, see Configuring observer job security

    SSL Verification Choose whether SSL validation is true or false. Turning SSL validation false will use HTTPS without hostname validation. Optional
    Connection and read timeout Enter the time at which the connection and read actions time out. Optional. Must be a value greater than 0 (zero), and the default is 5000 (5 seconds).
    Correlate Set this to true to enable Event Analytics correlation on the topology grouping based on VNF Groups created by this job. Optional
    CNF group filters If specified, this parameter selects CNF groups by partial matching on group name. For example, if CNF1,CNF2 is specified, then a CNF job will only process matching groups such as 'MyCNF1Yeh' and 'YourCNF2No', and a VNF job will process groups that do not match. Optional
    First retry after delay (milliseconds) Set the initial delay for a retry. Optional
    Max elapsed time for retries (milliseconds) Set the maximum elapsed time for retries. Optional
    Table 3. Fileload job parameters
    Parameter Action Details
    Unique ID Enter a unique name for the job. Required
    HP NFVD data center name The name of the data center on which the HP NFVD is hosted. Required.
    Important: To observe the complete lifecycle of resources, configure the same data center name, username and hostname across all jobs.
    HP NFVD hostname Specify the hostname of the HP NFVD.
    HP NFVD username Specify the username.
    Name of the VNF or CNF data file

    Specify the name of the VNF or CNF data file. Wildcards (*) are supported.

    Use separate data files for CNF and VNF resource types.
    Tip:
    • If the filename contains the token nfvd-cnf-data-dump/nfvd_cnf_data_dump, it is treated as a CNF resource.
    • If the filename contains the token nfvd-vnf-data-dump/nfvd_vnf_data_dump then it is treated as a VNF resource.
    Required. The data file must be located in the $/opt/ibm/netcool/asm/data/hpnfvd-observer directory.
    HP NFVD archive file retention days Specify the number of days that the HP NFVD archive files are retained. Optional. Default is 5 days.
    Correlate Set this to True to enable Event Analytics correlation on the topology grouping based on VNF Groups created by this job. Optional
    Access scope

    Enter text to provide a scope for the resources.

    Access scope can help map alerts to resources when resources in different scopes share parameters, such as matchTokens.

    Optional.
    Tip: You can define access scope for locations, project names, namespaces, and so on.
    Generate debug support file
    Set the optional Generate debug support file parameter to True to capture the output of the next scheduled job run as a file. This file is stored with an observer's log files and can be used to debug observer issues, for example at the request of your designated Support team, or while using a test environment. For one-off jobs (that is, Load jobs), this parameter reverts to False after the next completed run. To examine the output produced, you can load the generated debug file using the File Observer. The file is saved to the following locations:
    On-premises
    $ASM_HOME/logs/<obs>-observer/
    On OpenShift Container Platform
    /var/log/itsm/<obs>-observer
    Optional
    Observer job description Enter additional information to describe the job. Optional
    Job schedule

    Specify when the job should run, and whether it should run at regular intervals.

    By default the job runs immediately, and only once.

    Optionally you can specify a future date and time for the job to run, and then set it to run at regular intervals after that.

    Optional. Transient (one-off) jobs only.

    If you set a job schedule, the run intervals must be at least 90 seconds apart. If you set them at less than 15 minutes, a warning is displayed, as the frequency can impact system performance.

    Table 4. Listen job parameters
    Parameter Action Details
    Unique ID Enter a unique name for the job Required
    HP NFVD data center name The name of the data center on which the HP NFVD is hosted. Required.
    Important: To observe the complete lifecycle of resources, configure the same data center name, username and hostname across all jobs.
    HP NFVD username Specify the HP NFVD username of the account.
    HP NFVD Kafka broker host Specify the host of the Kafka broker to which HP NFVD posts its LCM updates.
    HP NFVD Kafka broker port Specify the port number of the Kafka broker. Required
    The HP NFVD Kafka topic to listen for LCM notifications Specify the topic name for LCM notifications. Required
    True for a CNF job and false for a VNF job The VNF job is expected to run with fewer threads and will take longer to complete.
    False
    If this filter parameter is set to false, cnf_group_filters defines group names to exclude.
    True
    If this filter parameter is set to true, cnf_group_filters defines group names to include.
    Required.
    Important: To observe the complete lifecycle of resources, this must be the same as the option used in the Load job.
    SSL Choose to turn SSL on (or off) for Kafka connection. Turn this option on if the Kafka connection is secured using SSL. Optional
    Avro decoding

    Choose whether Avro decoding is on or off (True or False).

    Set to True if incoming LCM messages are Avro encoded.

    Optional. Default is false.
    Kafka TrustStore file Specify the truststore file used to establish a secured connection to the Kafka broker Required if SSL has been enabled. The file must be present in the $ASM_HOME/security folder.
    Kafka trustStore password Enter the password of the Kafka truststore Required if a Kafka TrustStore file is specified. Must be encrypted.
    Kafka KeyStore file Specify the keyStore file used to establish a secured connection to the Kafka broker Required if SSL has been enabled. The file must be present in the $ASM_HOME/security folder.
    Kafka keyStore password Enter the password of the Kafka keyStore Required if a Kafka KeyStore file has been specified. Must be encrypted.
    Avro schema file The name of the Avro schema file to be used in decoding binary Avro Kafka messages. Required if Avro decoding is set to 'true'. The file must be located in the $ASM_HOME/security folder.
    Observer job description Enter additional information to describe the job. Optional

To start a job

  1. To start the HPNFVD jobs, use one of the following commands:
    Load
    $ASM_HOME/bin/hpnfvd_observer_load_start.sh
    Fileload
    $ASM_HOME/bin/hpnfvd_observer_fileload_start.sh
    Listen
    $ASM_HOME/bin/hpnfvd_observer_listen_start.sh

Results

This job loads all requested data, and runs only once. Run this job whenever you need the topology data refreshed.

What to do next

You can also use the following scripts:
hpnfvd_observer_load_stop.sh
Stops the Load job
hpnfvd_observer_fileload_stop.sh
Stops the Fileload job
hpnfvd_observer_listen_stop.sh
Stops the Listen job
hpnfvd_observer_job_list.sh
Lists the status of current jobs
hpnfvd_observer_log_level.sh
Sets the log level
Remember: As an alternative to being configured using the Observer Configuration UI, observer jobs have scripts to start and stop all available jobs, to list the status of a current job, and to set its logging levels. These scripts can be run with -h or --help to display help information, and with -v or --verbose to print out the details of the actions performed by the script, including the full cURL command. For the on-prem version of Agile Service Manager, observer scripts are configured for specific jobs by editing the script configuration files.