SevOne Data Insight Installation Guide

About

This document allows you to perform fresh SevOne Data Insight installation (not upgrades) only.

Pre-Installation Checklist

This section applies to both single-node and multi-node installations.

Important: Port 22 is required.

IP Conflicts

The following are the default IP ranges used by SevOne Data Insight.

If there is an IP range conflict with your environment, please refer to SevOne Data Insight Administration Guide > Deployment > Handle IP Conflicts to override the defaults.

Flag Description IP Address IP Range
––cluster-cidr Pod IP addresses 192.168.80.0/20 192.168.80.0.0 - 192.168.95.255
––service-cidr Service IP addresses 192.168.96.0/20 192.168.96.0 - 192.168.111.255
––cluster-dns Cluster DNS (must be in Service's range) 192.168.96.10 n/a

Install Single-Node

Using ssh, log into SevOne Data Insight as sevone.

$ ssh sevone@<SevOne Data Insight IP address or hostname>

ISO Installations

If you are deploying SevOne Data Insight from a .iso image, you must execute the following steps.

# copy over the default ansible config
$ sudo cp -r /opt/SevOne/upgrade/ansible/playbooks/inventory/* /etc/ansible/

# install base packages
$ sevone-cli playbook up --tags os --extra-vars "freight_install_skip_broken=yes"

# provision kubernetes
$ sevone-cli playbook up --extra-vars "freight_install_skip_broken=yes"

Generate SSH Keys

As a security measure, fresh installations do not ship with pre-generated SSH keys. Execute the following command to generate unique SSH keys for your cluster.

$ sevone-cli cluster setup-keys

Install SOA

Attention:
This section only applies if your SevOne NMS is on 6.x and you want to upgrade SOA.

If your SevOne NMS is on 7.0 or above, please skip this section.

SOA is a required dependency of SevOne Data Insight and must be installed on your SevOne NMS.

Note:
  • You will be prompted to enter a password. This will be the root password for your NMS.
  • When upgrading SOA, nginx service will restart on your SevOne NMS. This causes a very brief service impact.
  • SOA version
    SOA must be on the latest version on all appliances in SevOne NMS cluster. Command Line Interface (CLI) must be used to upgrade SOA on all peers as the graphical user interface (GUI) only upgrades SOA for the NMS appliance you are connected to.

$ sevone-cli soa upgrade \
/opt/SevOne/upgrade/utilities/SevOne-soa-*.rpm \
<enter SevOne NMS IP address>

Connect NMS (single-node)

Important: You must already have SevOne Data Insight deployed with the supported base images to link your SevOne Data Insight to your SevOne NMS.

You will be prompted for the following information when running the bootstrap command.

Prompt Description
Datasource Name The name of your datasource. This can be anything.
URL SevOne NMS address. This is the URL for SevOne NMS you want to connect SevOne Data Insight to. For example, https://10.12.34.56 or https://nms.customer.com
Username It should be admin unless you know what you are doing.
Password Same password used in SevOne NMS. This is the password for username, admin.
Tenant Name The name of your first tenant. This can be anything.
  1. Execute the bootstrap command.
    $ sevone-cli sdi connect-nms

    Example: Run bootstrap command

    Note: In this example, I have provided the following information at the prompts.
    • Name: SevOne
    • URL: https://10.129.14.168
    • Login instead of providing an API key? [ y/n ]: y
    • Username: admin
    • Password: SevOne
    • Name: SevOne (this is the tenant name)
    • Tenant Alternate/Display Name: hit <RETURN key>
    • Username: admin
    • Would you like to Add an object metadata filter? [y/N] N

    
    $ sevone-cli sdi connect-nms
    
    Defaulted container "graphql" out of: graphql, fix-shared-storage-permission (init)
    
    > @sevone/insight-server@6.8.0 prod:bootstrap
    > NODE_PATH=./dist/libs node dist/scripts/database-init/bootstrap.js
    
    info: Authsource Configuration
        Enter the name of your authentication source. Note that it may be the same
        as your datasource. Ex: , SevoneNMS8, Auth Serv, Datasource 123
    Name: SevOne
    info: Enter the NMS base URL to your authentication source.
        Ex: https://api.example.com
    URL: https://10.129.14.168
    Login instead of providing an API key? [y/n]: y
    Username: admin
    Password: ******
    info: [SevOne@reconfigure-datasource] SOA request (SOA-1) post https://10.129.14.168/api/v3/users/signin
    (node:248) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verification.
    (Use `node --trace-warnings ...` to show where the warning was created)
    info: [SevOne@reconfigure-datasource] SOA response (SOA-1) elapsed 1994ms.
    info: [SevOne@reconfigure-datasource] SOA request (SOA-2) post https://10.129.14.168/api/v3/users/apikey
    info: [SevOne@reconfigure-datasource] SOA response (SOA-2) elapsed 72ms.
    info: Tenant Configuration
        Enter the name of your tenant. This is independent to Data Insight.
        Ex: WestCoast BestCoast, EastCoast BeastCoast
    Name: SevOne
    (OPTIONAL. Hit enter to skip) Enter the alternate/display name of your tenant.
    Tenant Alternate/Display Name: 
    info: Super Admin User Configuration
        Enter the username of your Retina Super Admin user. Note that this user
        MUST match a user with appropriate permissions on your authsource. Even
        if it's not a Super User on your authsource, it WILL be on Retina.
        Ex: JJJSchmidt, jsmith
    Username: admin
    info: [SevOne@reconfigure-datasource] SOA request (SOA-3) get https://10.129.14.168/api/v3/health/ping
    info: [SevOne@reconfigure-datasource] SOA response (SOA-3) elapsed 7ms.
    info: Bootstrap complete.
    Defaulted container "graphql" out of: graphql, fix-shared-storage-permission (init)
    
    > @sevone/insight-server@6.8.0 prod:provision
    > NODE_PATH=./dist/libs node dist/scripts/database-init/provision.js
    
    
    No existing object metadata filters.
    
    Would you like to Add an object metadata filter? [y/N] N
    (node:275) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verification.
    (Use `node --trace-warnings ...` to show where the warning was created)
    info: [SevOne@SevOne] SOA request (SOA-1) post https://datasource-di-1.default.svc.cluster.local.:443/api/v3/users
    info: [SevOne@SevOne] SOA response (SOA-1) elapsed 54ms.
    info: Provisioning complete.
    
    Important: The command above can be retried to change your values in the event of typos or incorrect credentials.
    Note: If you need to connect to a different NMS, please refer to section Configuration > Tenants and Datasources > Configuration > Manage Datasources via CLI or User Interface > Modify a Datasource in SevOne Data Insight Administration Guide
  2. SevOne Data Insight is now provisioned. From a web browser of your choice, enter <SevOne Data Insight IP address or hostname> in the URL to access the graphical user interface.

Install Multi-Node

ISO Installations

If you are deploying SevOne Data Insight from a .iso image, you must execute the following steps.

# copy over the default ansible config
$ sudo cp -r /opt/SevOne/upgrade/ansible/playbooks/inventory/* /etc/ansible/

# install base packages
$ sevone-cli playbook up --tags os --extra-vars "freight_install_skip_broken=yes"

Configure Cluster

Every SevOne Data Insight node ships as a running single-node Kubernetes cluster. In order to create a multi-node cluster, you must designate one of the nodes to be your control plane node.

Example

Important:
The hostnames and IP addresses mentioned in this table are used in the examples for the steps below.
Please make sure to replace the hostnames and IP addresses with your machine's hostnames and IP addresses.

Hostname IP Address Role
sdi-node01 10.123.45.67 control plane
sdi-node02 10.123.45.68 agent1
sdi-node03 10.123.45.69 agent2

Execute the following steps.

  1. Using ssh, log into the designated SevOne Data Insight control plane node as sevone.
    $ ssh sevone@<SevOne Data Insight 'control plane' node IP address or hostname>

    Example

    $ ssh sevone@10.123.45.67
  2. Register and configure your agent nodes.
    Important: You will be prompted for your SSH password.
    
    $ sevone-cli cluster worker add <'agent1' IP address> --hostname <'agent1' host name>
    
    $ sevone-cli cluster worker add <'agent2' IP address> --hostname <'agent2' host name>
    

    Example

    
    $ sevone-cli cluster worker add 10.123.45.68 --hostname sdi-node02
    
    $ sevone-cli cluster worker add 10.123.45.69 --hostname sdi-node03
    
  3. Teardown the Kubernetes cluster.
    
    $ sevone-cli cluster down
    
  4. Spin up the cluster.
    
    $ sevone-cli cluster up
    
    Important: This command will automatically take the IP addresses of the agent nodes from /etc/ansible/hosts file.
  5. Verify that your agent node(s) have been added to the Kubernetes cluster.
    
    $ /usr/local/bin/kubectl get nodes
    NAME                             STATUS   ROLES                  AGE     VERSION
    <your 'control plane' hostname>  Ready    control-plane,master   52d     v1.28.2+k3s1
    <your 'agent1' hostname>         Ready    <none>                 2m25s   v1.28.2+k3s1
    <your 'agent2' hostname>         Ready    <none>                 2m45s   v1.28.2+k3s1
    ...
    <your 'agent<n>' hostname>       Ready    <none>                 3m05s   v1.28.2+k3s1
    

    Example

    
    $ /usr/local/bin/kubectl get nodes
    NAME         STATUS   ROLES                  AGE     VERSION
    sdi-node01   Ready    control-plane,master   52d     v1.28.2+k3s1
    sdi-node02   Ready    <none>                 2m25s   v1.28.2+k3s1
    sdi-node03   Ready    <none>                 2m45s   v1.28.2+k3s1
    

Install SOA

Attention:
This section only applies if your SevOne NMS is on 6.x and you want to upgrade SOA.

If your SevOne NMS is on 7.0 or above, please skip this section.

SOA is a required dependency of SevOne Data Insight and must be installed on your SevOne NMS.

Note:
  • You will be prompted to enter a password. This will be the root password for your NMS.
  • When upgrading SOA, nginx service will restart on your SevOne NMS. This causes a very brief service impact.
  • SOA version
    SOA must be on the latest version on all appliances in SevOne NMS cluster. Command Line Interface (CLI) must be used to upgrade SOA on all peers as the graphical user interface (GUI) only upgrades SOA for the NMS appliance you are connected to.
  • Add flag --all-peers if you want to install SOA on all peers in the cluster.

$ sevone-cli soa upgrade \
/opt/SevOne/upgrade/utilities/SevOne-soa-*.rpm \
<enter SevOne NMS IP address> --all-peers

Connect NMS (multi-node)

Connect SevOne Data Insight to your SevOne NMS. For details, please refer to section Connect NMS for single node.

Important: OOTB Reports
To import OOTB reports and templates, please refer to SevOne Data Insight Administration Guide > section Configuration > OOTB Reports.
Note: Please refer to SevOne Data Insight Administration Guide for configuration and deployment details and SevOne Data Insight Troubleshooting / Debug / Tools Guide for troubleshooting scenarios, how to debug SevOne Data Insight, and various tools available.

Deploy Data Insight on IBM Cloud using Virtual Private Cloud (VPC) Infrastructure

To deploy IBM SevOne NPM component, Data Insight, on IBM Cloud, the following steps are required. 
  • create or utilize an existing IBM Cloud Object Storage location to upload IBM SevOne NPM .qcow2 image for component, SevOne Data Insight.
  • create a custom image for VPC.
  • create a new Virtual Server instance for VPC and boot the newly created custom image.
Important:
  • You must download IBM SevOne NPM KVM/Openstack .qcow2 image for component, SevOne Data Insight, from  IBM Passport Advantage via Passport Advantage Online.
  • You must have experience with IBM Cloud and have an account with required permissions to create infrastructure such as, storagecustom images, and virtual server instances.
  • For details on how to create a standard IBM Cloud component, please refer to  https://cloud.ibm.com/docs or contact SevOne Support Team or your Technical Account Manager.
Important: The free tier of IBM Cloud cannot be utilized for deploying IBM SevOne NPM components.
Note: In this section, deployment is demonstrated using the IBM Cloud web interface. However, you may utilize any other IBM Cloud methods such as, API.

Upload image to IBM Cloud Object Storage

Execute the following steps.
  1. Create or utilize an existing IBM Cloud Object Storage instance and bucket. For details on how to configure these, please refer to https://cloud.ibm.com/docs.
  2. Once an IBM Cloud Object Storage instance and bucket are configured, browse to the bucket and click the Upload button.
    uploadCloudObjectStorage
  3. An Upload menu will open.

    Upload menu...
    uploadCloudObjectStorageMenu
    • Select Aspera high-speed transfer radio button; this option is recommended for large files.
      Important: You may be prompted to install the IBM Aspera Connect file transfer utility.
    • Click Upload files button to open the file browser and select the sdi-v<x.x.x>-build.<##>.qcow2 file from your local machine.
      Important: The file must have a .qcow2 extension. If the file extension is .gz then you will first need to decompress the file using an archive utility.
    • Click Upload buton to start the transfer.
      Important:
      You must wait for the file transfer to complete.

      This may take some time depending on your connection speed to the IBM Cloud.

      Once the upload has completed, sdi-v<x.x.x>-build.<##>.qcow2 file will be available in the bucket.
      uploadQCOW2File
    • Upload of .qcow2 file to IBM Cloud Object Storage is now complete. You may now proceed to section Create a Custom image for VPC to create a custom VPC image.

Create a Custom image for VPC

Execute the following steps.
  1. To create a custom image for virtual private cloud, .qcow2 image is required. This image is converted to a bootable image which can be attached to a VPC virtual server instance.
  2. Under VPC Infrastructure in left panel, click Images.
  3. In the right panel, tab Custom images, click the Create button.
    customVPCImageCreate
  4. When you click on Create button, Custom image for VPC workflow will open.
    Example
    customImageVPCParameters
    createCustomImageVPC-1
    createCustomImageVPC-2
    • Name - enter the name for the image. For example, sdi-v<x.x.x>-build.<##>.qcow2. For consistency, do not enter extension .qcow2.
    • Image source - choose radio button Cloud Object Storage.
      • select Locate by instance and bucket.
      • set the Cloud Object Storage instance, Location, and Bucket from the respective drop-downs. The instance and bucket must match to where you uploaded the image in the previous step.
      • locate your .qcow2 image in the file list and select the radio button next to it. For example, sdi-v<x.x.x>-build.<##>.qcow2.
    • For SevOne Data Insight 6.x, choose the operating system.
      • Operating system - select Red Hat Enterprise Linux.
      • Version - select red-8-amd64-byol.
  5. For any other settings such as, Encryption, Tags, Resource group, etc., please contact your IBM Cloud Administrator or leave the fields with the default values.
  6. Click Create custom image button.
    Note: You have now created an image and you may perform the provisioning of one or more VPC virtual server instances for SevOne Data Insight.

Create a new Virtual server instance for VPC

  1. Create a Virtual server instance for each node you intend to deploy in your SevOne Data Insight cluster.
  2. Under VPC Infrastructure in left panel, click Virtual server instances.
  3. In the right panel Virtual server instances for VPC, click the Create button.
    createVirtualServerInstance
  4. When you click on Create button, Virtual server for VPC workflow will open. createVirtualServerForVPC-1
    createVirtualServerForVPC-2
    createVirtualServerForVPC-3
    1. Name - enter the name for the specific instance. It is recommended to set this to the desired hostname.
    2. Image - click Change image and select the custom Data Insight image you created in the previous step.
    3. Profile - click Change profile and select an appropriate compute profile to match or exceed the hardware requirements of the instance you are deploying.
      Note:
      Please refer to SevOne Data Insight Release Notes > section Deployment Recommendation to obtain compute requirements for each instance type.

      Based on this, the closest IBM Cloud instance type is bx2-8x32.
    4. SSH keys - choose your SSH key.
      Important: The SSH key will not be copied to the instance.
    5. Storage - set the boot volume to 250GB.
    6. For any other settings such as, Networking, Advanced options, Tags, Resource group, etc., please contact your IBM Cloud Administrator or leave the fields with the default values.
    7. Click Create virtual server button. Repeat this process for each Data Insight instance you want to create.
      Important: Once the instance is created, it will automatically boot and become available from your Virtual Server Instance list.
Note: You have now completed the deployment of SevOne Data Insight component of IBM SevOne NPM on IBM Cloud.