From 4aa98692bc893e8dc50ac8a4f5a0850c3d21178b Mon Sep 17 00:00:00 2001 From: Tomer Date: Mon, 9 Dec 2024 11:20:24 +0200 Subject: [PATCH] Docs: Onboarding: small cluster sizes for prometheus if selected (#1656) --- docs/help.rst | 8 +- ...st => _helm_install_no_prometheus.inc.rst} | 2 +- .../_helm_install_with_prometheus.inc.rst | 100 ++++++++++++++++++ .../installation/all-in-one-installation.rst | 2 +- .../extend-prometheus-installation.rst | 2 +- .../installation/standalone-installation.rst | 2 +- 6 files changed, 110 insertions(+), 6 deletions(-) rename docs/setup-robusta/installation/{_helm_install.inc.rst => _helm_install_no_prometheus.inc.rst} (99%) create mode 100644 docs/setup-robusta/installation/_helm_install_with_prometheus.inc.rst diff --git a/docs/help.rst b/docs/help.rst index db61284dc..2afea74e1 100644 --- a/docs/help.rst +++ b/docs/help.rst @@ -127,11 +127,15 @@ Robusta runner, Prometheus or Holmes failures 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 the ``isSmallCluster=true`` property. + 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 isSmallCluster=true \ + --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 .. details:: robusta-runner isn't working or has exceptions diff --git a/docs/setup-robusta/installation/_helm_install.inc.rst b/docs/setup-robusta/installation/_helm_install_no_prometheus.inc.rst similarity index 99% rename from docs/setup-robusta/installation/_helm_install.inc.rst rename to docs/setup-robusta/installation/_helm_install_no_prometheus.inc.rst index 5e11eb8e9..45e303bcd 100644 --- a/docs/setup-robusta/installation/_helm_install.inc.rst +++ b/docs/setup-robusta/installation/_helm_install_no_prometheus.inc.rst @@ -74,7 +74,7 @@ On some clusters this can take a while, so don't panic if it appears stuck: 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:: Kind/Colima + .. tab-item:: Local/Test Cluster :name: install-test-clusters Test clusters tend to have fewer resources. To lower Robusta's resource requests, set ``isSmallCluster=true``. 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..2150f9e8e --- /dev/null +++ b/docs/setup-robusta/installation/_helm_install_with_prometheus.inc.rst @@ -0,0 +1,100 @@ +.. 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 for Robusta's bundled Prometheus. 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 ``isSmallCluster=true``. + + .. code-block:: bash + :name: cb-helm-install-test-clusters + + helm repo add robusta https://robusta-charts.storage.googleapis.com && helm repo update + helm upgrade robusta robusta/robusta -f ./generated_values.yaml --set clusterName= --set isSmallCluster=true \ + --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 + +Verifying Installation +------------------------------ + +Confirm that two 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/all-in-one-installation.rst b/docs/setup-robusta/installation/all-in-one-installation.rst index a8ff922b6..345e7cb5c 100644 --- a/docs/setup-robusta/installation/all-in-one-installation.rst +++ b/docs/setup-robusta/installation/all-in-one-installation.rst @@ -20,7 +20,7 @@ Prerequisites :header_update_levels: :file: setup-robusta/installation/_generate_config.jinja -.. include:: ./_helm_install.inc.rst +.. include:: ./_helm_install_with_prometheus.inc.rst .. include:: ./_see_robusta_in_action.rst diff --git a/docs/setup-robusta/installation/extend-prometheus-installation.rst b/docs/setup-robusta/installation/extend-prometheus-installation.rst index afe721dc2..980c6625e 100644 --- a/docs/setup-robusta/installation/extend-prometheus-installation.rst +++ b/docs/setup-robusta/installation/extend-prometheus-installation.rst @@ -21,7 +21,7 @@ Prerequisites :header_update_levels: :file: setup-robusta/installation/_generate_config.jinja -.. include:: ./_helm_install.inc.rst +.. include:: ./_helm_install_no_prometheus.inc.rst .. include:: ./_see_robusta_in_action.rst diff --git a/docs/setup-robusta/installation/standalone-installation.rst b/docs/setup-robusta/installation/standalone-installation.rst index 8cde2335e..729e5a4cc 100644 --- a/docs/setup-robusta/installation/standalone-installation.rst +++ b/docs/setup-robusta/installation/standalone-installation.rst @@ -28,7 +28,7 @@ Prerequisites :header_update_levels: :file: setup-robusta/installation/_generate_config.jinja -.. include:: ./_helm_install.inc.rst +.. include:: ./_helm_install_no_prometheus.inc.rst .. include:: ./_see_robusta_in_action.rst