Add a Kubernetes cluster
SolarWinds Observability documentation for the early access program - The following content includes descriptions of features that are part of an early access program. The features are available only to customers registered in the early access program. All feature functionality is subject to change when the feature is deployed to all customers. Contact SolarWinds using the in-product feedback button or email SWO-support@solarwinds.com if you would like to be added to the early access program.
To monitor your Kubernetes cluster and associated services with SolarWinds Observability, ensure your Kubernetes environment is set up and supported by SolarWinds Observability. See Getting started with Kubernetes and system requirements for details.
If you already have a Kubernetes entity created and need to upgrade your collector, see Upgrade Kubernetes monitoring.
The wizard in the Add Data dialog walks you through this process from start to finish, providing you with the exact commands to run on the cluster. If preferred, you can instead follow specific instructions to manually deploy the collector without using the Add Data dialog. You can also monitor EKS-managed and AKS-managed clusters using the Amazon Elastic Kubernetes Service (Amazon EKS) add-on or the Azure Kubernetes Service (AKS) add-on.
See Entities in SolarWinds Observability for an overview of Kubernetes entities and how they work in SolarWinds Observability.
Monitor a cluster using the wizard
- In SolarWinds Observability, click Add Data at the top.
-
In the Add Data dialog Intro, click Monitor my Kubernetes clusters.
-
Enter the Cluster name and the Kubernetes namespace in the provided fields. The Kubernetes namespace is where the SWO K8s Collector will be deployed. See SWO K8s Collector for more information.
-
Click the Deploy Agent toggle to enable or disable the SolarWinds Observability Agent.
When enabled, the SolarWinds Observability Agent is included in the deployed helm chart, making cluster services available for monitoring integrations. To enable an integration associated with a Kubernetes cluster, see Configure Kubernetes cluster integration.
-
Click Next.
-
Create or select an API ingestion token to use when sending your collected Kubernetes cluster data by doing either of the following:
- Select Generate New Token and enter an Ingestion Token Name, and then click Next.
- Select Use Existing Token and select an ingestion token from the list, and then click Next.
- Run the provided command within the kubectl command line tool to create a new namespace.
- Run the provided command within the kubectl command line tool to create a secret. See Managing Secrets using kubectl.
- Create a file named
values.yaml
to save the provided configuration content. For advanced setup options, see all the configuration options in the sample values.yaml. - Run the provided command to deploy the helm chart to your environment. Click Next.
- Wait for the Kubernetes cluster and metrics to generate, or click Skip Verification. You can now view your Kubernetes clusters in the Entity Explorer.
To view data collected for the newly configured entity in the Entity Explorer, click the name of the Kubernetes in the confirmation dialog in the lower-left corner. It may take a few seconds for data to appear for the newly created entity. See Entity Explorer for details.
Monitor a cluster manually
- Copy or create an API token (Ingestion type), found in the settings area of SolarWinds Observability. See API Tokens for details.
-
Create a namespace where the SWO K8s Collector will be deployed.
kubectl create namespace <YourK8sNamespace>
-
Create a kubectl secret with the following command, replacing
<YourK8sNamespace>
with the namespace of your Kubernetes cluster and<YourApiToken>
with the API token from the previous step.kubectl create secret generic solarwinds-api-token -n <YourK8sNamespace> --from-literal=SOLARWINDS_API_TOKEN=<YourApiToken>
-
Create a
values.yaml
file with the required configuration. You can also deploy the SWO K8s Collector with advanced configuration options, see the available configuration options in the sample values.yaml.Required configuration. Create your
values.yaml
file with the following helm values, replacing:<YourOTelEndpoint>
with your organization's OTel endpoint<YourUniqueId>
with a unique ID that follows the following format:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
<YourClusterName>
with the display name for the cluster entity in SolarWinds Observability- To enable the SolarWinds Observability Agent for a Kubernetes cluster integration, add the following helm values:
swoagent:
enabled: true
otel: endpoint: <YourOTelEndpoint>:443 cluster: name: <YourClusterName> uid: <YourUniqueId> swoagent: enabled: true/false
-
Deploy the helm chart with the
values.yaml
file with the following command, replacing<YourK8sNamespace>
with the namespace of your Kubernetes cluster.helm repo add solarwinds https://helm.solarwinds.com && helm install -f values.yaml swo-k8s-collector solarwinds/swo-k8s-collector --namespace <YourK8sNamespace> --atomic
Once collected K8s data is sent to SolarWinds Observability, Kubernetes cluster and Kubernetes node entities are created and available in the Entity Explorer and Kubernetes area overview.
Monitor an Amazon EKS cluster
With Amazon Elastic Kubernetes Service (Amazon EKS), you can run Kubernetes in the AWS cloud and on-premises data centers.
To monitor an Amazon EKS cluster, deploy the SWO K8s Collector on an Amazon EKS cluster using the Amazon EKS add-on:
- Copy or create an API token (Ingestion type), found in the settings area of SolarWinds Observability. See API Tokens for details.
-
Create a namespace where the SWO K8s Collector will be deployed:
kubectl create namespace solarwinds
-
Create a kubectl secret with the following command, replacing
<YourApiToken>
with the API token from the previous step:kubectl create secret generic solarwinds-api-token -n solarwinds --from-literal=SOLARWINDS_API_TOKEN=<YourApiToken>
-
Enable the SWO K8s Collector add-on in the AWS console:
-
Subscribe to the SWO K8s Collector EKS add-on on AWS Marketplace and complete the on-screen instructions.
After subscribing, you are automatically redirected to the Amazon EKS console.
-
In the Amazon EKS console, go to your EKS clusters, and in the Add-ons tab, select Get more add-ons.
-
Find SWO K8s Collector EKS add-ons in the cluster setting of your existing EKS clusters.
You can type
SWO K8s Collector
in the search bar. -
Follow the on-screen instructions to enable the SWO K8s Collector add-on for your Amazon EKS cluster.
You can learn more about direct deployment to Amazon EKS clusters in the AWS News Blog.
-
While enabling the SWO K8s Collector add-on, you are required to provide the following additional details in Optional configuration settings:
-
<YourOTelEndpoint>
with your organization's OTel endpoint -
<YourUniqueId>
with a unique ID that follows the following format:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
-
<YourClusterName>
with the display name for the cluster entity in SolarWinds Observability
otel: endpoint: <YourOTelEndpoint>:443 cluster: name: <YourClusterName> uid: <YourUniqueId>
-
-
Once the collected Kubernetes data is sent to SolarWinds Observability, the Kubernetes cluster and Kubernetes node entities are created and available in the Entity Explorer and Kubernetes area overview.
Monitor an Azure AKS cluster
With the Azure Kubernetes Service (AKS), you can deploy, run, and scale Kubernetes clusters.
To monitor an Azure AKS cluster, deploy the SWO K8s Collector on an Azure AKS cluster using the Azure AKS add-on:
-
In Azure Market, find SWO K8s Collector for AKS Cluster.
-
Proceed with the deployment wizard:
-
On the Basics tab, under Project details, select your subscription type and resource group.
-
Under Instance details, select the region.
-
Select which AKS cluster should the SWO K8s Collector be deployed in. Click Next.
-
On the SWO K8s Collector tab, enter the cluster name in the Cluster Display Name field.
- Copy or create an API token (Ingestion type), found in the settings area of SolarWinds Observability. See API Tokens for details.
- From the Endpoints dropdown, select the endpoint used to send collected data to SolarWinds Observability. Click Next.
The endpoints vary based on the data center your organization uses. You can find the data center your organization uses by referring to the URL you use to access SolarWinds Observability.
-
- On the Review + create tab, click Create.
This deploys the SWO K8s Collector into the selected AKS cluster.
Monitor an OpenShift cluster
SolarWinds Observability requires SWO K8s Collector 4.1.0 and later to monitor an OpenShift cluster.
- Copy or create an API token (Ingestion type), found in the settings area of SolarWinds Observability. See API Tokens for details.
-
Create a namespace where the SWO K8s Collector will be deployed. Do not use the namespace
default
.kubectl create namespace <YourK8sNamespace>
-
Create a kubectl secret with the following command, replacing
<YourK8sNamespace>
with the namespace of your Kubernetes cluster and<YourApiToken>
with the API token from the previous step.kubectl create secret generic solarwinds-api-token -n <YourK8sNamespace> --from-literal=SOLARWINDS_API_TOKEN=<YourApiToken>
-
Create a
values.yaml
file with the required configuration. You can also deploy the SWO K8s Collector with advanced configuration options, see the available configuration options in the sample values.yaml.Required configuration. Create your
values.yaml
file with the following helm values, replacing:<YourOTelEndpoint>
with your organization's OTel endpoint<YourClusterName>
with the display name for the cluster entity in SolarWinds Observability
otel: endpoint: <YourOTelEndpoint>:443 cluster: name: <YourClusterName> ebpfNetworkMonitoring: enabled: false swoagent: enabled: false openshift: enabled: true
-
Deploy the helm chart with the
values.yaml
file with the following command, replacing<YourK8sNamespace>
with the namespace of your Kubernetes cluster.helm repo add solarwinds https://helm.solarwinds.com && helm install -f values.yaml swo-k8s-collector solarwinds/swo-k8s-collector --namespace <YourK8sNamespace> --atomic
Once collected K8s data is sent to SolarWinds Observability, Kubernetes cluster and Kubernetes node entities are created and available in the Entity Explorer and Kubernetes area overview.