Prerequisites
Please check here for installation requirements
Installation
All the commands in this runbook were tested against a VM with Canonical, Ubuntu, 20.04 LTS, amd64 as root
.
Install K3s and wait for the pods to become ready:
curl -sfL https://assets.master.k3s.getvisibility.com/k3s/k3s.sh | INSTALL_K3S_VERSION="v1.26.10+k3s1" K3S_KUBECONFIG_MODE="644" sh -s - server --node-name=local-01 kubectl get deploy -n kube-system --output name | xargs -n1 -t kubectl rollout status -n kube-system
Install Helm 3:
wget --quiet https://raw.githubusercontent.com/helm/helm/master/scripts/get -O /tmp/get_helm.sh \ && chmod 0755 /tmp/get_helm.sh \ && /tmp/get_helm.sh -v v3.8.2
Configure GetVisibility private Docker image registry (replace
$USERNAME
and$PASSWORD
with the Docker credentials provided):kubectl create secret docker-registry gv-docker-registry \ --docker-server=https://images.master.k3s.getvisibility.com \ --docker-username=$USERNAME \ --docker-password=$PASSWORD \ --docker-email=no@email.com
Configure GetVisibility private Helm repository (replace
$USERNAME
and$PASSWORD
with the Helm credentials provided):helm repo add gv_stable https://charts.master.k3s.getvisibility.com/stable --username $USERNAME --password $PASSWORD helm repo update
Install chart GetVisibility Essentials and wait for the pods to become ready.
For Synergy (32 GB RAM machines):helm upgrade --install gv-essentials gv_stable/gv-essentials --wait \ --timeout=10m0s --kubeconfig /etc/rancher/k3s/k3s.yaml \ --set eck-operator.enabled=true --set eck-operator.settings.cpu=1 \ --set eck-operator.settings.memory=1 --set eck-operator.settings.storage=40 \ --set updateclusterid.enabled=false kubectl get deploy --output name | xargs -n1 -t kubectl rollout status
For Focus and Enterprice (48+ GB RAM machines):
helm upgrade --install gv-essentials gv_stable/gv-essentials --wait \ --timeout=10m0s --kubeconfig /etc/rancher/k3s/k3s.yaml \ --set eck-operator.enabled=true --set eck-operator.settings.cpu=8 \ --set eck-operator.settings.memory=20 --set eck-operator.settings.storage=160 \ --set updateclusterid.enabled=false kubectl get deploy --output name | xargs -n1 -t kubectl rollout status
Depending on the theme you want to use, run one of the commands below to install the chart GV Platform (don’t forget to replace
$PRODUCT
with either synergy or focus or enterprise):GetVisibility theme:
helm upgrade --install gv-platform gv_stable/gv-platform --wait \ --timeout=10m0s --kubeconfig /etc/rancher/k3s/k3s.yaml \ --set-string clusterLabels.environment=prod \ --set-string clusterLabels.cluster_reseller=getvisibility \ --set-string clusterLabels.cluster_name=mycluster \ --set-string clusterLabels.product=$PRODUCT
Forcepoint theme:
helm upgrade --install gv-platform gv_stable/gv-platform --wait \ --timeout=10m0s --kubeconfig /etc/rancher/k3s/k3s.yaml \ --set-string clusterLabels.environment=prod \ --set-string clusterLabels.cluster_reseller=forcepoint \ --set-string clusterLabels.cluster_name=mycluster \ --set-string clusterLabels.product=$PRODUCT
Upgrade
GV Essentials
In order to upgrade the essential services (e.g. Postgres, Kafka, MongoDB, Consul) run helm repo update
and then the same command you used in step 5.
Synergy/Focus/Enterprise
In order to upgrade Synergy/Focus/Enterprise run helm repo update
and then the same command you used in step 6.
Monitoring
You can optionally also install monitoring tools to collect metrics and logs of all services that are running inside the cluster:
Install the CRDs:
$ helm upgrade --install rancher-monitoring-crd gv_stable/rancher-monitoring-crd --wait \ --kubeconfig /etc/rancher/k3s/k3s.yaml \ --namespace=cattle-monitoring-system \ --version=100.1.2+up19.0.5 \ --create-namespace
Install the monitoring tools:
$ helm upgrade --install rancher-monitoring gv_stable/rancher-monitoring --wait \ --kubeconfig /etc/rancher/k3s/k3s.yaml \ --namespace=cattle-monitoring-system \ --version=100.1.2+up19.0.5 \ --set k3sServer.enabled=true \ --set k3sControllerManager.enabled=true \ --set k3sScheduler.enabled=true \ --set k3sProxy.enabled=true
To access the Grafana dashboard run the command kubectl port-forward svc/rancher-monitoring-grafana -n cattle-monitoring-system 3001:80 --address='0.0.0.0'
and in your browser type the address http://$SERVER_IP:3001
.
To access Prometheus dashboard run the command kubectl port-forward svc/rancher-monitoring-prometheus -n cattle-monitoring-system 3001:9090 --address='0.0.0.0'
and in your browser type the address http://$SERVER_IP:3001
.