SevOne NMS Appliance Configuration Guide

Configuration

Important: Starting SevOne NMS 6.7.0, MySQL has moved to MariaDB 10.6.12.
Note: Terminology usage...
In this guide if there is,
  • [any reference to master] OR
  • [[if a CLI command contains master] AND/OR
  •  [its output contains master]],
    it means leader.
   And, if there is any reference to slave, it means follower.

After deploying in Amazon Web Services or Azure or Openstack, set the correct application configuration for the customer's license type and count. Execute the following steps.

  1. If the license has not been applied, logon to the SevOne NMS Appliance via GUI and apply the license when prompted during logon.
  2. Logon to the SevOne NMS Appliance as root via SSH.
  3. Enter into the NMS container.
    
    $ podman exec -it nms-nms-nms /bin/bash
    
  4. Execute the following command for the list of all the available modules.

    List of available modules

    
    $ SevOne-select
    Usage:
    /usr/local/scripts/SevOne-select [OPTION [...]] <module> <option> <value>
    OPTION may include:
    -h --help | Show this help and exit.
    --no-color | Show this help in plain text without any colors and exit.
    --no-restart | Do not restart underlying service just make config changes.
    -p --pretend | Do not actually take any action.
    -m --mysql-configuration | Update mysql configuration for given appliance size and model (only
    for 'all' module).
    <module> may be:
    all | Configure config files for all the modules.
    mysql | Configure the MySQL config files.
    nginx | Configure the Nginx config files.
    redis | Configure the Redis config files.
    cli-php | Configure the CLI PHP config files.
    crontab | Configure the crontab files.
    system | Configure the system files.
    openldap | Configure the ldap files.
    ssh | Configure the ssh config files.
    sshd | Configure the sshd config files.
    kafka | Configure the kafka config files.
    php-fpm | Configure the PHP-FPM config files.
    cookie | Configure the cookies.
  5. Each module has configuration options. Drill-down each module to identify the options you have to set on all parts of the NMS.
  6. Module configuration commands may require size or an appropriate mode or fips or config.
  7. To configure the size of SevOne NMS Appliance module mysql (for example), execute the following command.

    Example

    SevOne NMS appliance sizes available for a module

    
    $ SevOne-select <module> appliance

    SevOne NMS appliance sizes available for module 'mysql'

    
    $ SevOne-select mysql appliance
    dnc100
    dnc1000
    dnc1500
    dnc200
    dnc300
    dnc400
    dnc600
    pas100k
    pas10k
    pas200k
    pas20k
    pas300k
    pas40k
    * pas5k
    pas60k

    The option with an asterisk (*) indicates which appliance is currently selected. The appliance size for module mysql in the example above is set to pas5k.

    Command to configure SevOne NMS appliance size for module 'mysql'

    
    $ SevOne-select mysql appliance <size>

    Configure SevOne NMS appliance module 'mysql' to pas20k and an AWS instance of the same pas20k size (r4.xlarge)

    
    $ SevOne-select mysql appliance pas20k

    SevOne NMS appliance module 'mysql' size is now pas20k

    
    $ SevOne-select mysql appliance
    dnc100
    dnc1000
    dnc1500
    dnc200
    dnc300
    dnc400
    dnc600
    pas100k
    pas10k
    pas200k
    * pas20k
    pas300k
    pas40k
    pas5k
    pas60k
    Note: You must select the exact size or a larger one when there is no match available. For example, for a PAS2k, since an exact match of pas2k is not available, you may choose the next larger size i.e. pas5k to accommodate the 2000 licenses for pas2k.
    Important: To configure all SevOne NMS appliance modules to a particular size in one go, execute the following command.
    
    $ podman exec -it nms-nms-nms /bin/bash
    
    $ SevOne-select all appliance <size>

    Configure 'all' SevOne NMS appliance modules to pas60k

    
    $ SevOne-select all appliance pas60k

    All SevOne NMS appliance modules are now set to size pas60k

    Example: Size of SevOne NMS appliance modules 'mysql', 'redis', and 'cli-php' is now pas60k

    
    $ SevOne-select <mysql / redis / cli-php> appliance
    dnc100
    dnc1000
    dnc1500
    dnc200
    dnc300
    dnc400
    dnc600
    pas100k
    pas10k
    pas200k
    pas20k
    pas300k
    pas40k
    pas5k
    * pas60k

    Example: Size of SevOne NMS appliance modules 'kafka' is now pas60k

    
    $ SevOne-select <kafka> appliance
    dnc
    pas100k
    pas10k
    pas200k
    pas20k
    pas300k
    pas40k
    pas5k
    * pas60k
  8. Configure MySQL to update the peers table with the correct settings based on the values listed in the table below.

    MySQL Configuration Options for SevOne Appliances

    SevOne Instance peers.model peers.capacity (objects) peers.interface_limit (interfaces) peers.flow_limit (flow limit)
    vPAS5k PAS 5,000 15 4,500
    PAS10k PAS 10,000 30 10,000
    PAS 20k / vPAS20k PAS 20,000 60 20,000
    PAS40k PAS 40,000 120 40,000
    PAS60k / vPAS60k PAS 60,000 180 60,000
    vPAS100k PAS 100,000 300 80,000
    PAS200k / vPAS200k PAS 200,000 600 80,000
    PAS300k PAS 300,000 1,000 80,000
    DNC100 / vDNC100 DNC n/a 100 30,000
    DNC200 DNC n/a 200 80,000
    vDNC300 DNC n/a 300 80,000
    DNC400 DNC n/a 400 80,000
    DNC600 DNC n/a 600 80,000
    DNC1000 / vDNC1000 DNC n/a 1,000 80,000
    DNC1500 DNC n/a 1,500 80,000
    DNC1500HF DNC n/a 1,500 160,000

    1. The example below provides MySQL configuration options needed for each command and each model size when updating the peers table.
      Note: The WHERE clause can be on set on conditions name or ip or server_id. In the example below, the WHERE clause is set for condition, name. Please replace <peer-name> with the name of the peer you want to set the condition for. Similarly, you can also choose the WHERE clause with conditions ip or server_id.
      • echo "UPDATE peers SET ... WHERE ip = <IP address>;" | mysqlconfig
      • echo "UPDATE peers SET ... WHERE server_id = <peer-id>;" | mysqlconfig

      Example: SevOne NMS appliance MySQL configuration

      #!/bin/bash
      # vPAS5k
      echo "UPDATE peers SET model='PAS', interface_limit=15, flow_limit = 4500, \
      capacity = 5000 WHERE name = <peer-name>;" | mysqlconfig
      
      # PAS10k
      echo "UPDATE peers SET model='PAS', interface_limit=30, flow_limit = 10000, \
      capacity = 10000 WHERE name = <peer-name>;" | mysqlconfig
      
      # PAS20k, vPAS20k
      echo "UPDATE peers SET model='PAS', interface_limit=60, flow_limit = 20000, \
      capacity = 20000 WHERE name = <peer-name>;" | mysqlconfig
      
      #PAS40k
      echo "UPDATE peers SET model='PAS', interface_limit=120, flow_limit = 40000, \
      capacity = 40000 WHERE name = <peer-name>;" | mysqlconfig
      
      # PAS60k, vPAS60k
      echo "UPDATE peers SET model='PAS', interface_limit=180, flow_limit = 60000, \
      capacity = 60000 WHERE name = <peer-name>;" | mysqlconfig
      
      # vPAS100k
      echo "UPDATE peers SET model='PAS', interface_limit=300, flow_limit = 80000, \
      capacity = 100000 WHERE name = <peer-name>;" | mysqlconfig
      
      # PAS200k, vPAS200k
      echo "UPDATE peers SET model='PAS', interface_limit=540, flow_limit = 80000, \
      capacity = 200000 WHERE name = <peer-name>;" | mysqlconfig
      
      # PAS300k
      echo "UPDATE peers SET model='PAS', interface_limit=1000, flow_limit = 80000, \
      capacity = 300000 WHERE name = <peer-name>;" | mysqlconfig
      
      # DNC100, vDNC100
      echo "UPDATE peers SET model='DNC', interface_limit=100, flow_limit = 30000, \
      capacity = 30000 WHERE name = <peer-name>;" | mysqlconfig
      
      # DNC200
      echo "UPDATE peers SET model='DNC', interface_limit=200, flow_limit = 80000, \
      capacity = 60000 WHERE name = <peer-name>;" | mysqlconfig
      
      # vDNC300
      echo "UPDATE peers SET model='DNC', interface_limit=300, flow_limit = 80000, \
      capacity = 90000 WHERE name = <peer-name>;" | mysqlconfig
      
      # DNC400
      echo "UPDATE peers SET model='DNC', interface_limit=400, flow_limit = 80000, \
      capacity = 120000 WHERE name = <peer-name>;" | mysqlconfig
      
      # DNC600
      echo "UPDATE peers SET model='DNC', interface_limit=600, flow_limit = 80000, \
      capacity = 180000 WHERE name = <peer-name>;" | mysqlconfig
      
      # DNC1000, vDNC1000
      echo "UPDATE peers SET model='DNC', interface_limit=1000, flow_limit = 80000, \
      capacity = 300000 WHERE name = <peer-name>;" | mysqlconfig
      
      # DNC51500
      echo "UPDATE peers SET model='DNC', interface_limit=1500, flow_limit = 80000, \
      capacity = 450000 WHERE name = <peer-name>;" | mysqlconfig
      
      # DNC51500HF
      echo "UPDATE peers SET model='DNC', interface_limit=1500, flow_limit = 160000, \
      capacity = 450000 WHERE name = <peer-name>;" | mysqlconfig

      Restart MySQL.
      
      $ podman restart nms-nms-mysqldata
      
      $ podman restart nms-nms-mysqlconfig
      
    2. Alternatively, to update MySQL configuration for a given appliance size and model, execute the following command. The -m or --mysql-configuration option applies to module all only. It updates the peers table with the correct settings. Please refer to table MySQL Configuration Options for SevOne Appliances above for the correct capacity, interface_limit, and flow_limit based on the size and model selected.
      
      $ podman exec -it nms-nms-nms /bin/bash
      
      $ SevOne-select -m all appliance
      
      OR
      
      $ SevOne-select --mysql-configuration all appliance
      Note: You may choose a value from the following list.
      • pas5k
      • pas10k
      • pas20k
      • pas60k
      • pas100k
      • pas200k
      • pas300k
      • dnc100
      • dnc200
      • dnc300
      • dnc400
      • dnc600
      • dnc1000
      • dnc1500

      Example: Set to DNC100.

      
      $ podman exec -it nms-nms-nms /bin/bash
      
      $ SevOne-select -m all appliance dnc100
      
      OR
      
      $ SevOne-select --mysql-configuration all appliance dnc100
      Note: Command SevOne-select -m all appliance dnc100 or SevOne-select --mysql-configuration all appliance dnc100 will change all appliance modules such as, mysql, redis, cli-php, and data bus to dnc100. However, module kafka will change to dnc. You may validate the change by checking the entries from Administration > Cluster Manager > choose an appliance from the left navigation bar > tab System Settings > field appliance for all applicable modules.
      Important: The -m / --mysql-configuration option only updates the MySQL configuration for active appliances. Running the command with this option on passive (HSA) appliances will not update the Myself configuration.
  9. To configure the mode of SevOne NMS Appliance module crontab, execute the following command.

    List available modes

    
    $ podman exec -it nms-nms-nms /bin/bash
    
    $ SevOne-select crontab
    Usage:
    /usr/local/scripts/SevOne-select [OPTION [...]] crontab <option> <value>
    OPTION may include:
    -h --help | Show this help and exit.
    --no-color | Show this help in plain text without any colors and exit.
    --no-restart | Do not restart underlying service just make config changes (only for ng
    inx and sshd).
    -p --pretend | Do not actually take any action.
    mode | Configure the 'mode' to use.
    active-model | Configure the active model to use.
    passive-model | Configure the passive model to use.

    List options for active model

    
    $ podman exec -it nms-nms-nms /bin/bash
    
    $ SevOne-select crontab active-model
    dnc
    * pas
    The option with an asterisk (*) indicates that it is currently selected. In the example above, pas is currently selected.
Important: for SevOne NMS 6.1 and prior releases,

Example# 1 - for PAS...

If SevOne instance is vPAS200k, please change the module settings as shown below.


$ podman exec -it nms-nms-nms /bin/bash
$ SevOne-select crontab <active / passive>-model pas
$ SevOne-select system supervisord.d master
$ SevOne-act check set-model --model PAS
$ SevOne-select mysql appliance pas200k
$ SevOne-select redis appliance pas200k
$ SevOne-select cli-php appliance pas200k
$ SevOne-select kafka appliance pas200k

Example# 2 - for DNC...

If SevOne instance is DNC100, please change the module settings as shown below.


$ podman exec -it nms-nms-nms /bin/bash
$ SevOne-select crontab <active / passive>-model dnc
$ SevOne-select system supervisord.d dnc
$ SevOne-act check set-model --model DNC
$ SevOne-select mysql appliance dnc100
$ SevOne-select redis appliance dnc100
$ SevOne-select cli-php appliance dnc100
$ SevOne-select kafka appliance dnc
Important: for SevOne NMS 6.2 and up releases,

Example# 1 - for PAS...

If SevOne instance is vPAS200k, please change the module settings as shown below.

Pass command with -m option

To change module settings, use the -m option. This is a preferred way to change the module settings.


$ podman exec -it nms-nms-nms /bin/bash

$ SevOne-select -m all appliance pas200k
Note: Command changes all appliance modules such as, mysql, redis, cli-php, and kafka to pas200k. And,
  • crontab <active / passive>-model will be set to pas
  • system supervisord.d will be set to master (i.e., leader)
  • model will be set to PAS

Pass command without -m option

To change the module settings, use the -m option as shown above. However, if you choose to pass the command without the -m option, follow the steps below.


$ podman exec -it nms-nms-nms /bin/bash

$ SevOne-select all appliance pas200k
When command, SevOne-select all appliance pas200k, is passed without the -m option, it does not set the model. To set model, flow_limit, capacity, and interface_limit, you must run the MySQL query for pas200k (as used for this example). Please refer to MySQL Query for query details.
Note: Command SevOne-select all appliance pas200k will change all appliance modules such as, mysql, redis, cli-php, and kafka to pas200k. And,
  • crontab <active / passive>-model will be set to pas
  • system supervisord.d will be set to master (i.e., leader)

Model will be set when you run the MySQL query for the pas200k.

  • model will be set to PAS

Example# 2 - for DNC...

If SevOne instance is DNC100, please change the module settings as shown below.

Pass command with -m option

To change module settings, use the -m option. This is a preferred way to change the module settings.


$ podman exec -it nms-nms-nms /bin/bash

$ SevOne-select -m all appliance dnc100
Note: Command changes all appliance modules such as, mysql, redis, and cli-php to dnc100. Module kafka is set to dnc. And,
  • crontab <active / passive>-model will be set to dnc
  • system supervisord.d will be set to dnc
  • model will be set to DNC

Pass command without -m option

To change the module settings, use the -m option as shown above. However, if you choose to pass the command without the -m option, follow the steps below.


$ podman exec -it nms-nms-nms /bin/bash

$ SevOne-select all appliance dnc100

When command, SevOne-select all appliance dnc100, is passed without the -m option, it does not set the model. To set model, flow_limit, capacity, and interface_limit, you must run the Myself query for dnc100 (as used for this example). Please refer to MySQL Query for query details.

Note: Command SevOne-select all appliance dnc100 changes all appliance modules such as, mysql, redis, and cli-php to dnc100. Module kafka is set to dnc. And,
  • crontab <active / passive>-model will be set to dnc
  • system supervisord.d will be set to dnc

Model will be set when you run the MySQL query for the dnc100.

  • model will be set to DNC