Skip to content

KX Insights Controller

Details of how to provide advanced configuration for the KXI Controller.

ReplicaCount and Resources

KX Insights Controller can be tuned to allow the user to better align against available resources

  replicaCount: 1
      cpu: 100m
      memory: 128Mi
      cpu: 100m
      memory: 128Mi
  assemblyConfigMap: custom-assembly
  loadDefaultAssemblies: true
variable type default description
replicaCount int 3 No. of KXI Controller pods to run
resources.requests.cpu string 150m Requested CPU for the KXI Controller
resources.requests.memory string 128Mi Requested memory for the KXI Controller
resources.limits.cpu string 500m Max CPU given to KXI Controller
resources.limits.memory string 256Mi Max Memory given to KXI Controller


variable type default description
assemblyConfigMap string A configMap containing assemblies to be loaded on startup

assemblyConfigMap allows the system administrator to provide a configMap containing assemblies to be loaded on startup .

If an assembly is already created inside of an environment. The contents can be exported by copying the details of the /kxic/data directory on the kxi-controller. This can then be applied to a configmap and loaded into another environment on startup.

Copy your existing assemblies from the kxi-controller.

mkdir custom-assembly
kubectl cp insights-kxi-controller-0:/kxic/data custom-assembly

Examine the downloaded assemblies and prune as required.

ls custom-assembly
assembly db pipeline schema stream

Create a tar file from the contents and create it as a secret the contents of the folder and add it to a configMap

tar -cvf custom-assembly.tar custom-assembly
kubectl create configmap kxi-extra-assemblies --from-file=custom-assembly.tar

When deploying Insights, this ConfigMap name can be used when deploying Insights. Update your values file as below.

  assemblyConfigMap: "kxi-extra-assemblies"

Disabling Default Assemblies

variable type default description
loadDefaultAssemblies bool true Embed the default assemblies on startup

By default the kxi-controller embeds two assemblies: dfx-assembly and iot-assembly. To disable these assemblies being embedded on startup, update your values file as below.

  loadDefaultAssemblies: false