diff --git a/.github/workflows/release-charts.yaml b/.github/workflows/release-charts.yaml index 17670eb768..e16ede77f4 100644 --- a/.github/workflows/release-charts.yaml +++ b/.github/workflows/release-charts.yaml @@ -46,3 +46,14 @@ jobs: cat helm_push_result.txt cosign sign --yes ghcr.io/${{ github.repository }}/charts/retina@$(tail -n 1 helm_push_result.txt | awk '{ print $2 }') + - name: Build, Push and Sign Hubble chart + id: build_hubble_chart + shell: bash + run: | + set -euo pipefail + export TAG=$(make version) + helm package ./deploy/hubble/manifests/controller/helm/retina --version $TAG + # Get Helm chart's SHA digest from helm push cmd output + helm push retina-hubble-$TAG.tgz oci://ghcr.io/${{ github.repository }}/charts >> helm_push_hubble.txt 2>&1 + cat helm_push_hubble.txt + cosign sign --yes ghcr.io/${{ github.repository }}/charts/retina-hubble@$(tail -n 1 helm_push_hubble.txt | awk '{ print $2 }') diff --git a/deploy/hubble/manifests/controller/helm/retina/Chart.yaml b/deploy/hubble/manifests/controller/helm/retina/Chart.yaml index 994713661c..2196915119 100644 --- a/deploy/hubble/manifests/controller/helm/retina/Chart.yaml +++ b/deploy/hubble/manifests/controller/helm/retina/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -name: retina +name: retina-hubble description: A Helm chart for Retina Network Observability in Kubernetes with dependencies # A chart can be either an 'application' or a 'library' chart. diff --git a/docs/02-Installation/01-Setup.md b/docs/02-Installation/01-Setup.md index 5b436d21ad..6413dcea5a 100644 --- a/docs/02-Installation/01-Setup.md +++ b/docs/02-Installation/01-Setup.md @@ -10,6 +10,16 @@ Note: you can also run captures with just the [CLI](./02-CLI.md). - Helm version >= v3.8.0. +### Control Plane and Modes + +The installation of Retina can be configured using different control planes and modes. + +You can choose between the "legacy" control plane (the original implementation of Retina) and Hubble. + +If the "legacy" control plane is chosen, different modes are available. The available metric dimensions depend on the selected mode. For an explanation of the available modes, see [Legacy Metric Modes](../03-Metrics/modes/modes.md). + +Modes are not applicable to the Hubble control plane. For metrics related to the Hubble control plane, refer to the [Hubble metrics](../03-Metrics/02-hubble_metrics.md) documentation. + ### Basic Mode ```shell @@ -44,8 +54,6 @@ helm upgrade --install retina oci://ghcr.io/microsoft/retina/charts/retina \ ### Advanced Mode with Remote Context (with Capture support) -See [Metric Modes](../03-Metrics/modes/modes.md). - ```shell VERSION=$( curl -sL https://api.github.com/repos/microsoft/retina/releases/latest | jq -r .name) helm upgrade --install retina oci://ghcr.io/microsoft/retina/charts/retina \ @@ -66,8 +74,6 @@ helm upgrade --install retina oci://ghcr.io/microsoft/retina/charts/retina \ ### Advanced Mode with Local Context (with Capture support) -See [Metric Modes](../03-Metrics/modes/modes.md). - ```shell VERSION=$( curl -sL https://api.github.com/repos/microsoft/retina/releases/latest | jq -r .name) helm upgrade --install retina oci://ghcr.io/microsoft/retina/charts/retina \ @@ -86,6 +92,31 @@ helm upgrade --install retina oci://ghcr.io/microsoft/retina/charts/retina \ --set enableAnnotations=true ``` +### Hubble control plane + +```shell +VERSION=$( curl -sL https://api.github.com/repos/microsoft/retina/releases/latest | jq -r .name) +helm upgrade --install retina oci://ghcr.io/microsoft/retina/charts/retina-hubble \ + --namespace kube-system \ + --set os.windows=true \ + --set operator.enabled=true \ + --set operator.repository=ghcr.io/microsoft/retina/retina-operator \ + --set operator.tag=$VERSION \ + --set agent.enabled=true \ + --set agent.repository=ghcr.io/microsoft/retina/retina-agent \ + --set agent.tag=$VERSION \ + --set agent.init.enabled=true \ + --set agent.init.repository=ghcr.io/microsoft/retina/retina-init \ + --set agent.init.tag=$VERSION \ + --set logLevel=info \ + --set hubble.tls.enabled=false \ + --set hubble.relay.tls.server.enabled=false \ + --set hubble.tls.auto.enabled=false \ + --set hubble.tls.auto.method=cronJob \ + --set hubble.tls.auto.certValidityDuration=1 \ + --set hubble.tls.auto.schedule="*/10 * * * *" +``` + ## Next Steps: Configuring Prometheus and Grafana - [Prometheus](./04-prometheus.md)