Version:

Adding a Cluster to KAgent (On Premise)

If you have an existing on premise Kinetica cluster that is not managed by KAgent, you can add it to KAgent without upgrading it. This is particularly useful in the following scenarios:

  • Not all administrative and normal users have direct server-level access to the nodes in the cluster, and they would like to individually manage all relevant services
  • Not all administrative users have direct server-level access, and they would like to schedule and manage backups and snapshots and restore from snapshots if necessary
  • Users would like to keep track of the valid Kubernetes Docker registries for use with the Active Analytics Workbench (AAW)

KAgent Installation

Before adding the cluster, KAgent must be installed on one of the nodes of the existing cluster or any other external server.

KAgent can be installed in two ways:

  • Deployment of the installation package on a RHEL or Debian/Ubuntu system
  • Via Docker

Important

KAgent requires that the 8081 port be made available on the host

Manual Install

KAgent can be deployed on any server inside or outside the cluster. Deploy the package using the standard procedures for a local package:

  • On RHEL:

    sudo yum install ./kagent-<version>.<architecture>.rpm
    
  • On Debian/Ubuntu:

    sudo apt install ./kagent-<version>.<architecture>.deb
    

This installs the package to the directory /opt/gpudb/kagent and registers and starts the kagent-ui service. KAgent will open port 8081 on the local firewall (if enabled).

Docker

After installing Docker, run the following via a local terminal:

sudo docker run -d -p 8081:8081 kinetica/kagent

The latest KAgent Docker image will be pulled and a container will be started.

Cluster Addition

The cluster addition process using KAgent involves adding key information about your cluster to KAgent, including deployment type, security information, node information, and current Kinetica-related packages/services installed.

Warning

Any services (graph, AAW, RabbitMQ, etc.) and/or nodes in the existing cluster that are not noted during the cluster setup process will not be automatically picked up by KAgent and thus cannot be managed by KAgent. Any services not already installed cannot be installed during this process; likewise, additional nodes cannot be added to the cluster during this process.

KAgent UI

../_images/kagent_start.png

After installing KAgent, the KAgent UI displays an overview page as well as access to KAgent administration tools, cluster setup, and cluster components. KAgent is accessible via the following URL:

http://<kagent-host>:8081/kagent
  • Click Rings to view the rings for the cluster; rings are used for high availability setups and to help organize clusters. To setup a ring:
    1. Click Add Ring
    2. Provide a ring label
    3. Click Add
  • Click Add Cluster to jump to the cluster setup process.
  • Click Clone to open the Clone Clusters interface. From here, a source cluster's authentication settings, users, and data can be cloned to a target cluster. Review Clone for more information.
  • Click Jobs to view completed and active KAgent jobs.
  • Click Logs to view KAgent logs.
  • Click console to view the console.

To access the KAgent UI and begin setting up a cluster:

  1. Ensure the KAgent service is started:

    service kagent_ui status
    
  2. Browse to the KAgent UI using IP or host name:

    http://<kagent-host>:8081/kagent
    
  3. Optionally, if using custom rings, i.e. not the default ring, click Rings then click Clusters next to the desired ring.

  4. Click Add New or Existing Cluster.

    Note

    Once in the setup process, click Clusters to exit setup and return to the start; click Logs to view KAgent logs; click Console to open the console log.

Cluster

../_images/kagent_cluster.png

Note

The license key can be the existing Kinetica license key or a new license key. Contact Support (support@kinetica.com) for any questions.

  1. Enter a name for the cluster. The name cannot contain spaces or underscores.

  2. Optionally, select Graph if a node in the existing cluster has the graph server on it. See Network Graphs & Solvers Concepts for more information.

  3. Optionally, select AAW if a node in the existing cluster has AAW (Active Analytics Workbench) installed on it.

  4. Optionally, select to install HA if setting up an HA ring. Review High Availability Configuration & Management for more information.

  5. For the Install Mode, select Online (install directly from the online Kinetica repository).

  6. For the Version, select either CUDA (GPU) or Intel (CPU-only) depending on the package variant that's already installed on the current cluster you want to add to KAgent.

    Tip

    Use the following command to determine the Kinetica package that is already on the machine:

    # RHEL
    rpm -qa | grep 'gpudb'
    
    # Ubuntu
    apt list --installed | grep 'gpudb'
    
  7. Enter the license key.

  8. If AAW is selected, select the Custom type for K8 Setup (Kubernetes should already exist and KAgent will not install anything during this process). Upload a configuration file for an already existing Kubernetes installation and provide a public IP address for the server hosting the Kubernetes installation. Note that AAW requires Kubernetes; see Active Analytics Workbench (AAW) Overview for more information.

  9. Click Next.

Deployment

../_images/kagent_deployment.png

  1. Select the On Premise deployment method, and click Next.

    Important

    If clearing the Open Firewall Ports checkbox, the firewall then must be configured manually to allow the required ports listed in the default ports table. Consult Firewall Settings for tips on configuring the firewall.

Security

../_images/kagent_security.png

  1. Enter and confirm the existing Admin Password. This is the password used to access Reveal, Active Analytics Workbench (AAW), and GAdmin as the default Admin user.

    Important

    The password provided here must match the existing cluster's admin password.

  2. Select an SSL Mode that best aligns with the existing cluster's SSL configuration:

    • Cert/key setup not required -- Kinetica will not require SSL certificate/key creation/upload but there will be no updates to security configuration settings
    • User-provided cert/key per node -- user must upload an SSL certificate and key for each node; Kinetica copies the cert/key pair to /opt/gpudb/certs, enables HTTPD, and configures HTTPD to use HTTPS
    • Generate self-signed cert/key per node -- KAgent generates a self-signed certificate and key for each node and places it in /opt/gpudb/certs, enables HTTPD, and configures HTTPD to use HTTPS
  3. Select the current Authentication type used for the existing cluster and fill the fields as necessary:

    • None -- no authentication or authorization
    • LDAP -- configures Kinetica to authenticate via LDAP; requires authentication to connect to the database, enables authorization, enables external authentication, automatically creates users in the database for LDAP users, and automatically grants roles in the database to LDAP users
    • Active Directory -- configures Kinetica to authenticate via Microsoft Active Directory; requires authentication to connect to the database, enables authorization, enables external authentication, automatically creates users in the database for Active Directory users, and automatically grants roles in the database to Active Directory users
    • Kerberos -- configures Kinetica to authenticate via Kerberos; requires authentication to connect to the database, enables authorization, enables external authentication, automatically creates users in the database for Kerberos users, and automatically grants roles in the database to Kerberos users
  4. Click Next.

Nodes

../_images/kagent_nodes.png

  1. Click Add New Node until the number of nodes in KAgent matches the number of nodes in the current cluster.

  2. Input the Hostname, Internal IP, and External IP for each existing node into KAgent.

  3. Optionally, if the User-provided cert/key per node SSL Mode was selected, click the lock icon in the SSL column and upload the SSL cert and key for each node.

  4. Select if each existing node has the Core package installed.

  5. For the existing head node host, designate it as the head node in KAgent by selecting the Head Node radio button next to it.

  6. Optionally, if the Graph package was selected in Cluster and an existing node hosts the graph server, designate it as the Graph node using the corresponding radio button. The graph node hosts the graph server. The graph node does not need to have the Core package enabled.

  7. Optionally, if AAW was selected in Cluster and an existing node hosts AAW, designate it as the AAW node using the corresponding radio button. The AAW node hosts the Active Analytics Workbench. Also, set the number of reserved GPUs for AAW to use for each node.

    Important

    Some features of AAW require GPUs to work or have increased performance. Review the AAW documentation for more information.

  8. Select each node that has Rabbit (RabbitMQ) installed.

  9. Click Next.

  10. Confirm which IP address KAgent should use to connect to the cluster: Internal or Public.

Credentials

../_images/kagent_credentials.png

  1. For the Server SSH Credentials, enter the SSH username and password or upload the SSH private key that will be used to access the node(s).
  2. Optionally, enter the sudo password.
  3. Click Verify.

The console will appear showing the log of KAgent interactions as KAgent attempts to access the cluster with the provided credentials and also retrieve information on the hosts, including Kinetica version and configuration (if installed), hostname and IP addresses, OS type, and Nvidia information.

Important

If the configuration you have selected does not match the current configuration on the cluster you're trying to upgrade, KAgent will list the errors and provide the opportunity to fix the configuration manually or automatically.

../_images/kagent_fix_config.png

Upgrade

Existing cluster version information will be detected and the Add Only + and Upgrade buttons will be activated.

  1. Review the Upgrade Summary to ensure there are no validation errors in the information.
  2. Click Add Only +. KAgent will open a window displaying the progress of the cluster addition.

After a successful cluster addition, you'll be returned to the KAgent home page and also will be offered to be redirected to GAdmin on the head node. Review Managing Kinetica with KAgent for more information on using KAgent.