kdb Insights Enterprise Installation
The section details the steps to deploy the kdb Insights Enterprise in a pre-configured Kubernetes cluster. Once installed you can use the system to build and deploy your workloads.
If you want to upgrade your kdb Insights Enterprise deployment, refer to the upgrade guide.
KX Nexus
The KX Nexus repository will be sunsetted in the future. Nexus links on this page are provided as a temporary alternative to the KX Downloads Portal for existing users. The KX Downloads Portal is the preferred repository for all use cases and KX Nexus links will be removed once the KX Nexus repository is decommissioned.
Prerequisites
-
Cluster and shared services
Before installing kdb Insights Enterprise you must have an appropriate Kubernetes cluster in place with the necessary shared services available. kdb Insights Enterprise provides a number of Terraform scripts which enable the quick deployment of the necessary cluster services on all three main cloud providers.
To install into an existing cluster please ensure that all necessary infrastructure pre-requisites have been met.
-
Kubernetes access
You must have access to the Kubernetes cluster along with a number of third-party tools to interact with the cluster, including an active kubeconfig with a namespace.
-
Helm
Helm is used to deploy and manage kdb Insights Enterprise.
-
DNS
In order for external clients to interact with kdb Insights Enterprise, a DNS record must be setup with your DNS provider.
-
kdb Insights CLI
The following instructions use the kdb Insights CLI. Make sure you have installed the CLI before you begin.
-
kdb Insights Enterprise license
The install process requires a kdb Insights Enterprise license. To obtain a valid license, speak to your KX sales representative.
The self-service licensing model previously in use for KX products has been deprecated. Contact your sales representative if you have questions about this, and wish to discuss moving to the new model.
You must have credentials to the appropriate Helm and Docker registries for charts and images. The install prompts you for repository locations and access details. Default registries:
- helm: https://portal.dl.kx.com/assets/helm/
- docker: portal.dl.kx.com
Existing users can use the KX Nexus repository until Nexus is removed in the future. To use the KX Nexus repository, use the following registries:
- helm: https://nexus.dl.kx.com/repository/kx-insights-charts/
- docker: registry.dl.kx.com
Variables
The CLI provides an interactive installer that deploys kdb Insights Enterprise on a Kubernetes cluster. It guides you through the steps to install the application. To ensure a smooth process, you need these variables:
variable | example | further details |
---|---|---|
INSIGHTS_HOSTNAME | kxi-insights.domain.com | DNS Hostname setup |
KX_LIC | /home/app/q/kx.lic | Path to KX License |
INSIGHTS_VERSION | 1.8.0 | Version to install |
Installation
Deploy on Kubernetes
When you deploy kdb Insights Enterprise, the install command does the following:
- Generates a
values.yaml
config file to use for repeatable future installs. - Installs the kdb Insights Operator to the
kxi-operator
namespace - Deploys the application to the cluster using the generated
values.yaml
Credentials prompts
You will be prompted for Helm and Docker credentials during the install setup. You will also be prompted to create Keycloak admin passwords, which should be saved for future use and to allow you to log into the Keycloak administration console.
Install namespaces
You can deploy kdb Insights Enterprise to the default namespace or a uniquely created namespace, however, two deployments cannot share the same namespace.
Prior to deployment, check the active namespace to ensure there are no current deployments. The following command returns any instances of the application currently deployed to the active namespace.
helm ls
Encryption in Transit
Encryption of data in transit is turned on by default for fresh installs. When you upgrade kdb Insights Enterprise the CLI gives you the option to turn encryption on or off.
When you install kdb Insights Enterprise, you will be prompted to enable encryption of data in transit. The default behaviour is to enable encryption.
To change this setting after installation, perform an upgrade.
To deploy kdb Insights Enterprise, run the following command:
kxi install run --version $INSIGHTS_VERSION --hostname $INSIGHTS_HOSTNAME --license-filepath $KX_LIC
kdb Insights Operator
If the kdb Insights Operator is not already installed, the CLI will attempt to install it along with the application.
This is deployed within the kxi-operator
namespace as a single deployment shared across all
kdb Insights Enterprise deployments on the cluster.
An Operator version is only compatible with corresponding minor versions of kdb Insights Enterprise, e.g. 1.4.X of the Operator supports 1.4.X of the application. The CLI will attempt to lookup the latest compatible operator version for the target application version.
Deploy on OpenShift
OpenShift SCC should be applied to insights namespaces first.
oc create ns kxi
oc create ns kxi-operator
oc adm policy add-scc-to-group nonroot-v2 system:serviceaccounts:kxi
oc adm policy add-scc-to-group nonroot-v2 system:serviceaccounts:kxi-operator
For OpenShift deployments, do the following:
-
generate the values.yaml file by populating the required parameters
kxi install setup --namespace kxi
-
open the values.yaml with your preferred editor and append openshift required values
global: clusterProvider: openshift packages: useLocalValues: true storageClass: "rook-cephfs" storageSize: 10Gi
- finally, deploy it
kxi install run --filepath=values.yaml --version=$INSIGHTS_VERSION --namespace kxi
Post install
Once the kdb Insights Enterprise is running you should see pods deployed.
All pods should enter a Running
state after a short period of time.
kubectl get pods -l app.kubernetes.io/instance=insights
Next steps
After installing the base system, deploy an assembly data capture.
Customize deployment
You can, alternatively, supply all setup and installation options by command line arguments or cli configuration. Refer to the options precedence for a description of the order in which these are read.
There are further configuration and customizations available for kdb Insights Enterprise. Details on how to use these are available in the Configuration section.