Prerequisites
License
A valid license is provided on each marketplace.
For more information on non-marketplace implementations please contact licadmin@kx.com.
Once a license file has been obtained, it may either be a kc.lic or a k4.lic file. A number of the examples for Microservices deployments require the contents of these files to be set as environment variables. For kc.lic licenses, KDB_LICENSE_B64 needs to be set to the base 64 encoded content. If k4.lic is used, KDB_K4LICENSE_B64 needs to used instead. Only one of these environment variables is required.
export KDB_LICENSE_B64=$(base64 kc.lic)
export KDB_K4LICENSE_B64=$(base64 k4.lic)
export KDB_LIENSE_B64=$(base64 -w 0 kc.lic)
export KDB_K4LICENSE_B64=$(base64 -w 0 k4.lic)
certutil -encode kc.lic tmp.b64
findstr /v /c:- tmp.b64 > kc.b64
for /f %x in (kc.b64) do set KDB_LICENSE_B64=%x
certutil -encode kx.lic tmp.b64
findstr /v /c:- tmp.b64 > k4.b64
for /f %x in (k4.b64) do set KDB_K4LICENSE_B64=%x
Running on Docker
To run Insights SDK on docker the system should have Docker installed and running –
the docker command should work inside the development environment.
Also
Running on Kubernetes
Insights SDK supports running on any CNCF-certified Kubernetes deployment.
Kubernetes nodes can be deployed either as bare metal servers or virtual machines (VMs). For VM deployments, consider enterprise grade virtualization systems such as vSphere, Red Hat Virtualization, Hyper-V, OpenStack, or KVM.
The following are also required to run on Kubernetes:
- A recommended operation system of Rocky Linux 9.4 or higher
- With a kernel version 5.14.0-427.42.1.el9_4 or higher
- Minimum Kubernetes version of >= 1.33
- A performant distributed storage solution offering dynamically provisioned PVC with RWM access level. Rook-cephfs offers such a storage solution.
- helm installed on the operator machine with the necessary access levels to interact with the Kubernetes control plane
Managed Kubernetes - AWS, GCP & Azure
Insights SDK is compatible with all major cloud providers’ Managed Kubernetes offerings. Below are the key requirements:
- Supported Kubernetes versions <= 1.33
- A performant distributed storage solution offering dynamically provisioned PVC with RWM access level.
- AWS offer FSx for Lustre Kubernetes compatible solution.
- GCP offer Managed Lustre with a Kubernetes CSI driver
- Azure offer Managed Lustre with a Kubernetes CSI driver
- Rook-Cephfs can be deployed and client managed as a performant alternative to a managed distributed solution solution
- helm installed on the operator machine with the necessary access levels to interact with the Kubernetes control plane.
Note
Kx provides Infrastructure as Code example scripts to deploy a cluster on AWS, GCP & Azure. As well as the core Kubernetes infrastructure, these scripts also deploy a configurable distributed storage solution, either Managed Lustre-based or Rook-cephfs self-managed. This infrastructure contains all the necessary prerequisites and deploys some of the optional requirements.
Optional requirements
In addition to the base requirements to run Insights SDK on Kubernetes, certain additional dependencies may be required depending on your specific implementation of Insights SDK services:
- To expose services outside the cluster, a Load Balancer is required to expose Insights SDK services as type
LoadBalancer. - An Ingress Controller is needed if you plan to add ingress routes for HTTP(S) traffic through a gateway pattern.
- A monitoring stack to monitor both the cluster infrastructure and expose Insights SDK metrics to the user. It is recommended to install the kube-prometheus-stack.
- For a logging solution, it is recommended to use Fluent Bit and Grafana Loki. These integrate well with the kube-prometheus-stack for monitoring.
Module-specific
QPacker itself has no dependencies, but to use it you will need an account with a cloud provider.