diff --git a/docs/help.rst b/docs/help.rst index ae03332ef..3cb9f4889 100644 --- a/docs/help.rst +++ b/docs/help.rst @@ -167,12 +167,12 @@ Issues after installation when pods are running but not working correctly. limits: memory: 1Gi - If using a test cluster like Kind/Colima, re-install Robusta with the ``isSmallCluster=true`` property. + If using a test cluster like Kind/Colima, re-install Robusta with ``clusterSize=small``. If you're also using Robusta's kube-prometheus-stack, add the lines involving prometheusSpec. .. code-block:: bash - helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= --set isSmallCluster=true \ + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= --set clusterSize=small \ --set kube-prometheus-stack.prometheus.prometheusSpec.retentionSize=9GB \ --set kube-prometheus-stack.prometheus.prometheusSpec.storageSpec.volumeClaimTemplate.spec.resources.requests.storage=10Gi \ --set kube-prometheus-stack.prometheus.prometheusSpec.resources.requests.memory=512Mi diff --git a/docs/setup-robusta/gitops/argocd.rst b/docs/setup-robusta/gitops/argocd.rst index 5f25d8bf4..55482b30b 100644 --- a/docs/setup-robusta/gitops/argocd.rst +++ b/docs/setup-robusta/gitops/argocd.rst @@ -16,13 +16,14 @@ Preparing Robusta's config Prepare your ``generated_values.yaml`` file for ArgoCD: * If it's not already present, add ``clusterName: `` -* If installing on a test cluster like KIND, add ``isSmallCluster: true`` +* If installing on a small or test cluster like KIND, add ``clusterSize: small`` Example ``generated_values.yaml``: .. code-block:: yaml clusterName: my_cluster_name # <- This is the line to be added + clusterSize: small # <- Optional. Options: small (< 16 CPUs), medium (16-128 CPUs), large (> 128 CPUs). globalConfig: signing_key: xxxxxx account_id: xxxxxx diff --git a/docs/setup-robusta/gitops/flux.rst b/docs/setup-robusta/gitops/flux.rst index 17b040272..6ccae71a9 100644 --- a/docs/setup-robusta/gitops/flux.rst +++ b/docs/setup-robusta/gitops/flux.rst @@ -17,13 +17,14 @@ Preparing Robusta's config Prepare your ``generated_values.yaml`` file for Flux: * If it's not already present, add ``clusterName: `` -* If installing on a test cluster like KIND, add ``isSmallCluster: true`` +* If installing on a small or test cluster like KIND, add ``clusterSize: small`` Example ``generated_values.yaml``: .. code-block:: yaml clusterName: my_cluster_name # <- This is the line to be added + clusterSize: small # <- Optional. Options: small (< 16 CPUs), medium (16-128 CPUs), large (> 128 CPUs). globalConfig: signing_key: xxxxxx account_id: xxxxxx diff --git a/docs/setup-robusta/installation/_helm_install_no_prometheus.inc.rst b/docs/setup-robusta/installation/_helm_install_no_prometheus.inc.rst new file mode 100644 index 000000000..6f069d790 --- /dev/null +++ b/docs/setup-robusta/installation/_helm_install_no_prometheus.inc.rst @@ -0,0 +1,97 @@ +.. updated to .inc.rst because of "WARNING: duplicate label" + +Install with Helm +------------------------------ + +Copy the below commands, replacing the ```` placeholder. + +On some clusters this can take a while, so don't panic if it appears stuck: + +.. tab-set:: + + .. tab-item:: Normal Clusters + :name: install-standard + + .. code-block:: bash + :name: cb-helm-install-only-robusta + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= + + .. tab-item:: EKS + :name: install-eks + + To use all Robusta features, ensure storage is enabled on your cluster. If necessary, refer to the EKS documentation and install the `EBS CSI add-on `_ + + .. details:: How do I know if my cluster has storage enabled? + + Try installing Robusta. If storage is not configured, you'll receive an error: + + .. code-block:: + + PreBind plugin "VolumeBinding": binding volumes: timed out waiting for the condition + + Running ``kubectl get pvc -A`` will also show PersistentVolumeClaims in ``Pending`` state. + + In this case, follow the instructions above and enable storage for your cluster. + + .. code-block:: bash + :name: cb-helm-install-eks + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= + + .. tab-item:: GKE Autopilot + :name: install-gke-autopilot + + Due to Autopilot restrictions, some components are disabled. Don't worry, everything will still work. + + .. code-block:: bash + :name: cb-helm-install-gke-autopilot + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml \ + --set clusterName= \ + --set kube-prometheus-stack.coreDns.enabled=false \ + --set kube-prometheus-stack.kubeControllerManager.enabled=false \ + --set kube-prometheus-stack.kubeDns.enabled=false \ + --set kube-prometheus-stack.kubeEtcd.enabled=false \ + --set kube-prometheus-stack.kubeProxy.enabled=false \ + --set kube-prometheus-stack.kubeScheduler.enabled=false \ + --set kube-prometheus-stack.nodeExporter.enabled=false \ + --set kube-prometheus-stack.prometheusOperator.kubeletService.enabled=false + + .. tab-item:: OpenShift + :name: install-openshift + + First :ref:`modify the Helm values to enable OpenShift support`. + + Then install Robusta as usual with Helm: + + .. code-block:: bash + :name: cb-helm-install-openshift + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= + + .. tab-item:: Local/Test Cluster + :name: install-test-clusters + + Test clusters tend to have fewer resources. To lower Robusta's resource requests, set ``clusterSize=small``. + + .. code-block:: bash + :name: cb-helm-install-test-clusters + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= --set clusterSize=small + +Verifying Installation +------------------------------ + +Confirm that Robusta pods are running with no errors in the logs: + +.. code-block:: bash + :name: cb-get-pods-robusta-logs + + kubectl get pods -A | grep robusta + robusta logs diff --git a/docs/setup-robusta/installation/_helm_install_with_prometheus.inc.rst b/docs/setup-robusta/installation/_helm_install_with_prometheus.inc.rst new file mode 100644 index 000000000..4b3fce114 --- /dev/null +++ b/docs/setup-robusta/installation/_helm_install_with_prometheus.inc.rst @@ -0,0 +1,108 @@ +.. updated to .inc.rst because of "WARNING: duplicate label" + +Install with Helm +------------------------------ + +Copy the below commands, replacing the ```` placeholder. + +On some clusters this can take a while, so don't panic if it appears stuck: + +.. tab-set:: + + .. tab-item:: Normal Clusters + :name: install-standard + + .. code-block:: bash + :name: cb-helm-install-only-robusta + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= + + .. tab-item:: EKS + :name: install-eks + + To use all Robusta features, ensure storage is enabled on your cluster. If necessary, refer to the EKS documentation and install the `EBS CSI add-on `_ + + .. details:: How do I know if my cluster has storage enabled? + + Try installing Robusta. If storage is not configured, you'll receive an error: + + .. code-block:: + + PreBind plugin "VolumeBinding": binding volumes: timed out waiting for the condition + + Running ``kubectl get pvc -A`` will also show PersistentVolumeClaims in ``Pending`` state. + + In this case, follow the instructions above and enable storage for your cluster. + + .. code-block:: bash + :name: cb-helm-install-eks + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= + + .. tab-item:: GKE Autopilot + :name: install-gke-autopilot + + Due to Autopilot restrictions, some components are disabled. Don't worry, everything will still work. + + .. code-block:: bash + :name: cb-helm-install-gke-autopilot + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml \ + --set clusterName= \ + --set kube-prometheus-stack.coreDns.enabled=false \ + --set kube-prometheus-stack.kubeControllerManager.enabled=false \ + --set kube-prometheus-stack.kubeDns.enabled=false \ + --set kube-prometheus-stack.kubeEtcd.enabled=false \ + --set kube-prometheus-stack.kubeProxy.enabled=false \ + --set kube-prometheus-stack.kubeScheduler.enabled=false \ + --set kube-prometheus-stack.nodeExporter.enabled=false \ + --set kube-prometheus-stack.prometheusOperator.kubeletService.enabled=false + + .. tab-item:: OpenShift + :name: install-openshift + + First :ref:`modify the Helm values to enable OpenShift support`. + + Then install Robusta as usual with Helm: + + .. code-block:: bash + :name: cb-helm-install-openshift + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= + + .. tab-item:: Local/Test Cluster + :name: install-test-clusters + + Test clusters tend to have fewer resources. To lower Robusta's resource requests, set ``clusterSize=small``. + + .. code-block:: bash + :name: cb-helm-install-test-clusters + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm install robusta robusta/robusta -f ./generated_values.yaml --set clusterName= --set clusterSize=small \ + --set kube-prometheus-stack.prometheus.prometheusSpec.retentionSize=9GB \ + --set kube-prometheus-stack.prometheus.prometheusSpec.storageSpec.volumeClaimTemplate.spec.resources.requests.storage=10Gi \ + --set kube-prometheus-stack.prometheus.prometheusSpec.resources.requests.memory=512Mi + + .. note:: + If you are using docker desktop you will need to disable prometheus-node-exporter mounting host root, by adding the following to the above command: + + .. code-block:: bash + :name: disable host mount + + --set kube-prometheus-stack.prometheus-node-exporter.hostRootFsMount.enabled=false + +Verifying Installation +------------------------------ + +Confirm that Robusta pods are running with no errors in the logs: + +.. code-block:: bash + :name: cb-get-pods-robusta-logs + + kubectl get pods -A | grep robusta + robusta logs diff --git a/docs/setup-robusta/multi-cluster.rst b/docs/setup-robusta/multi-cluster.rst index 6cbf20ec9..d62a8cae5 100644 --- a/docs/setup-robusta/multi-cluster.rst +++ b/docs/setup-robusta/multi-cluster.rst @@ -33,9 +33,9 @@ If you lost your ``generated_values.yaml`` file, you can extract it from any clu .. code-block:: bash - helm get values -o yaml robusta | grep -v clusterName: | grep -v isSmallCluster: > generated_values.yaml + helm get values -o yaml robusta | grep -v clusterName: | grep -v clusterSize: | grep -v isSmallCluster: > generated_values.yaml .. note:: - The above command strips the ``clusterName`` and ``isSmallCluster`` options so you don't copy them accidentally. + The above command strips the ``clusterName``, ``clusterSize``, and ``isSmallCluster`` options so you don't copy them accidentally. These options should be determined on a cluster by cluster basis.