Installing/Updating Sisense Internal Monitoring
This topic describes how to install or update the Sisense Internal Monitoring app (which is a Sisense custom Prometheus stack Helm chart).
Prerequisites
See the prerequisites in Manually Installing Sisense Helm Chart - Single Node or Manually Installing Sisense Helm Chart - Multinode/Cloud.
Note:
The Sisense Helm chart cannot be installed if your are Installing Sisense without ClusterVisiblity.
Adding the Helm Repo and Searching for the Helm Chart
-
If needed, add the Sisense Helm repo, and run a quick update to sync with the remote repo:
Copyhelm repo add sisense-fusion https://data.sisense.com/linux/helm/charts/fusion
helm repo update -
You can search the available chart version via one of the following commands:
# Only official versions
helm search repo sisense-fusion/kube-prometheus-stack -l
# Including non-official/development/customized versions
helm search repo sisense-fusion/kube-prometheus-stack -l
Upgrading Internal Monitoring
If you already have your own predefined prom-values.yaml file which you used from previous installations, and you are upgrading the Internal Monitoring version, perform the following command:
# Set your values file name, examples below:
PROM_VALUES=prom-values-single.yaml
# PROM_VALUES=prom-values-multi.yaml
vi ${PROM_VALUES}
# Change the value of "version:" into the new Sisense version, then save and and exit
# Example:
# version: L2024.1.0.51
# Set your monitoring namespace
MONITORING_NAMESPACE=monitoring
# Set the version in format Sever 2
SISENSE_SEMVER=<Version in format Semver 2>
# Example for L2024.1.0.51:
# SISENSE_SEMVER=2024.1.051
helm upgrade --namespace=${MONITORING_NAMESPACE} sisense-prom-operator sisense-fusion/kube-prometheus-stack --version ${SISENSE_SEMVER} -f ${PROM_VALUES}
You can now continue with the Sisense installation/upgrade.
First Installation
Persistent Volume Pre-configuration Before First Installation on a Single-node Environment
If you are installing on a Multi-node cluster, skip this section and proceed to Values Configuration.
Otherwise, for Single-node, before first installation:
-
Make sure that you have the AlertManager and Prometheus Persistent Volumes (PV) below with the following commands:
kubectl get pv alertmanager-db --no-headers --ignore-not-found
kubectl get pv prometheus-db-prometheus-0 --no-headers --ignore-not-found
-
If either of them are missing (both are required):
-
Download the following file(s) for whichever PV is missing:
-
-
For the missing PV(s), create it/them with the following commands:
Copykubectl apply -f alertmanager-pv.yaml
kubectl apply -f prometheus-pv.yaml
Values Configuration
-
Download the relevant values file into your server:
-
Values file for Single-node installation: prom-values-single.yaml
-
Values file for Multi-node installation:prom-values-multi.yml
-
Edit the values as needed (for example:
securityContext
parameters, such asrunAsUser
, orrunAsGroup
, etc…).The parameters below must be set as follows:
Single-node Installation Parameters
For Single-node installation:
-
Replace
<Your k8s node name>
with your Kubernetes node name (this appears in 3 locations in the file).
-
Replace
<Sisense version>
with the Sisense version of your installation (Example: L2024.1.0.51).
Examples:
# Repeated in 3 locations in the file
nodeSelector:
kubernetes.io/hostname: <Your k8s node name>
#kubernetes.io/hostname: mynodename
# Repeated just once
externalLabels:
version: <Sisense version>
#version: L2024.1.0.51
Multi-node Installation Parameters
For Multi-node installation:
-
Replace
<Your RWO StorageClass name>
with your RWO StorageClass name (this appears in 2 locations in the file). -
Replace
<Sisense namespace>
with the namespace where Sisense is going to be installed (usuallysisense
; this appears in 3 locations in the file). -
Replace
<Sisense version>
with the Sisense version of your installation (Example: L2024.1.0.51).
Examples:
# Repeated in 2 locations in the file
volumeClaimTemplate:
spec:
accessModes: ["ReadWriteOnce"]
storageClassName: <Your RWO StorageClass name>
#storageClassName: gp3
# Repeated just once
externalLabels:
version: <Sisense version>
#version: L2024.1.0.51
# In below, switch "<Sisense namespace>" to the actual namespace name
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
# key: node-sisense-Application
- key: node-<Sisense namespace>-Application
operator: In
values:
- "true"
- matchExpressions:
# key: node-sisense-Query
- key: node-<Sisense namespace>-Query
operator: In
values:
- "true"
- matchExpressions:
# key: node-sisense-Build
- key: node-<Sisense namespace>-Build
operator: In
values:
- "true"
Installation
-
After you have completed the pre-configuration above, install the Internal Monitoring app using the following command:
# Set your values file name, examples below:
PROM_VALUES=prom-values-single.yaml
# PROM_VALUES=prom-values-multi.yaml
# Set your monitoring namespace
MONITORING_NAMESPACE=monitoring
# Set the version in format Sever 2
SISENSE_SEMVER=<Version in format Semver 2>
# Example for L2024.1.0.51:
# SISENSE_SEMVER=2024.1.051
helm upgrade --namespace=${MONITORING_NAMESPACE} sisense-prom-operator sisense-fusion/kube-prometheus-stack \
--version ${SISENSE_SEMVER} -f ${PROM_VALUES} --install --create-namespace
-
Make sure that the Prometheus pods are running:
kubectl -n ${MONITORING_NAMESPACE} get pods
You can now continue with the Sisense installation/upgrade.