Documentation forSolarWinds Observability

Upgrade Kubernetes monitoring

SolarWinds Observability is constantly improving Kubernetes observability. To see the latest enhancements and avoid an incomplete view of the data in your dashboards, regularly upgrade your deployment to the latest version of the SWO K8s Collector. To ensure your SWO K8s Collector is always up-to-date, set up auto-updates on your cluster.

The current version and release date of the collector is   . See SWO K8s Collector release notes for full details of the release.

Manually upgrade the SWO K8s Collector

Determine if you need to upgrade your cluster

To determine whether any of your Kubernetes clusters have an outdated collector installed, click Kubernetes in the left pane of SolarWinds Observability and review the list of clusters in the Kubernetes area overview. If a warning icon is displayed next to a cluster's version number, the collector on that cluster is out of date and should be upgraded. See SWO K8s Collector release notes for a summary of the changes.

Hover over the warning icon to see the currently installed collector version, as well as the version of the collector available for upgrades. Depending on the installed version of the collector, your upgrade method varies:

  • If the currently installed SWO K8s Collector for your cluster is version 2.0 or later (installed or upgraded after January 17, 2023), upgrade your collector using the Helm chart.
  • If the SWO K8s Collector for your cluster is version 1.x or earlier (last installed or upgraded on or before January 17, 2023), upgrade from the raw manifest to a Helm chart. This upgrades your collector to the latest version and enables easier future upgrades using a Helm chart.

Upgrade using the Helm chart

Run the following command to upgrade your collector, replacing <YourNamespace> with the Kubernetes namespace where the SWO K8s Collector is installed.

helm repo update solarwinds
helm upgrade swo-k8s-collector solarwinds/swo-k8s-collector --namespace <YourNamespace> --cleanup-on-fail --atomic

Upgrade from a raw manifest to the Helm chart

To upgrade your Kubernetes cluster deployment while maintaining the history of the cluster's metrics and logs, manually update your existing Kubernetes cluster.

  1. Identify the UID of the Kubernetes cluster: 

    1. Locate your Kubernetes cluster in the Entity Explorer.

    2. Click on the cluster to view the entity details page.

    3. Find the UID of the Kubernetes cluster in the Details widget.

  2. Remove the existing Kubernetes configuration using one of the following methods:

    • If you still have the manifest.yaml file used to deploy the SWO K8s Collector, use the following command to remove the cluster configuration. Replace YourNamespace with the K8s namespace where you installed the SWO K8s Collector.

      kubectl delete -f manifest.yaml -n <YourNamespace>
    • If you no longer have the manifest.yaml file used to deploy the SWO K8s Collector, delete each deployed resource individually with the following commands. Replace YourNamespace with the K8s namespace where you installed the SWO K8s Collector.

      kubectl delete deployment -n <YourNamespace> swi-opentelemetry-collector
      kubectl delete daemonset -n <YourNamespace> swi-opentelemetry-collector-logs
      kubectl delete serviceaccounts -n <YourNamespace> swi-opentelemetry-collector
      kubectl delete clusterrolebindings swi-opentelemetry-collector
      kubectl delete clusterrole swi-opentelemetry-collector
      kubectl delete secret -n <YourNamespace> solarwinds-api-token
  3. Re-add your Kubernetes cluster as a new entity with the Add Data dialog. See Add a Kubernetes cluster.
  4. Add the cluster UID identified in step 1 to the values.yaml file, using the following lines of code. Replace <YourClusterUID> with the cluster UID identified in step 1.

    cluster: 
      name: … 
      uid: <YourClusterUID>

    For additional setup options, see all the configuration options in the sample values.yaml.

Enable auto-updates for the SWO K8s Collector

Basic configuration: enable auto-update during installation or update

The basic configuration for auto-updating the SWO K8s Collector deploys a CronJob to the cluster that periodically checks for newer versions of the collector. To set up auto-updating during installation or upgrade, add the following setting to values.yaml.

...
autoupdate:
    enabled: true
...

The CronJob performing auto-updates has full access to the namespace where it is deployed, and write access to ClusterRoles and ClusterRoleBindings. This is necessary if the event collector's ClusterRole needs to be updated.

Advanced configuration: use GitOps tools for automated deployment

To handle auto-updates of the Helm chart in an advanced manner, use open source tools like FluxCD and ArgoCD. These tools use GitOps practices to automate the deployment and updates for Kubernetes resources, including the SWO K8s Collector Helm chart. The desired state of the cluster is defined in a Git repository and changes to the repository are automatically applied to the cluster.

Tools like FluxCD or ArgoCD offer more flexibility to customize the frequency of update checks and the manner in which updates are handled. For example, you can set up a pipeline that checks for updates every hour and automatically deploys the new version to a staging environment for testing, before promoting it to production.

Using FluxCD or ArgoCD to automate the deployment of the SWO K8s Collector ensures the cluster remains up-to-date while reducing the manual effort required to update the cluster to the latest version. However, this method requires additional setup and configuration compared to the basic configuration provided with the SWO K8s Collector.

To use FluxCD or ArgoCD to manage updates to your SWO K8s Collector:

  1. Set up a Git repository to store the Helm chart and values files for the SWO K8s Collector.

  2. Install FluxCD or ArgoCD to your Kubernetes cluster.

  3. Configure FluxCD or ArgoCD to watch the Git repository for changes to the Helm chart and values files.

  4. Set up a CI/CD pipeline to automatically update the Git repository when a new version of the SWO K8s Collector is released.

Verify all of your organization's clusters are upgraded

To ensure that all of your Kubernetes clusters are upgraded to the latest version, click Kubernetes in the left pane of SolarWinds Observability and review the list of clusters in the Kubernetes area overview. A warning icon will display next to the cluster's version number if the SWO K8s Collector installed on that cluster is out of date.

If you do not see a warning icon in the table of clusters, you have properly upgraded all of your clusters.