Auto Instrumentation
The SWO K8s Collector allows you to deploy the OpenTelemetry Operator which can be used to auto-instrument applications with SolarWinds Observability SaaS APM.
Setting up
Step 1: Enable deployment of the operator
-
Set the following option in
values.yaml
:operator.enable=true
Step 2: Ensure proper TLS Certificate management
The operator uses webhooks to instrument workloads. In Kubernetes, in order for the API server to communicate with the webhook component, the webhook requires a TLS certificate that the API server is configured to trust. There are a few different ways to generate/configure the required TLS certificate:
-
Deploy
cert-manager
as part of this chart.-
Ensure there is no
cert-manager
instance already present in the cluster. -
Set
certmanager.enabled=true
.
-
-
Deploy
cert-manager
separately and setcertmanager.enabled
tofalse
. -
You can provide your own Issuer by configuring the
operator.admissionWebhooks.certManager.issuerRef
value. You will need to specify the kind (Issuer or ClusterIssuer) and the name. This method also requires the installation ofcert-manager
. -
You can use an automatically generated self-signed certificate by setting
operator.admissionWebhooks.certManager.enabled
tofalse
andoperator.admissionWebhooks.autoGenerateCert.enabled
totrue
. Helm will create a self-signed cert and a secret for you. -
You can use your own generated self-signed certificate by setting both
operator.admissionWebhooks.certManager.enabled
andoperator.admissionWebhooks.autoGenerateCert.enabled
tofalse
. You should provide the necessary values tooperator.admissionWebhooks.cert_file
,operator.admissionWebhooks.key_file
, andoperator.admissionWebhooks.ca_file
. -
You can side-load custom webhooks and certificate by disabling
operator.admissionWebhooks.create
andoperator.admissionWebhooks.certManager.enabled
while setting your custom cert secret name inoperator.admissionWebhooks.secretName
.
Step 3: Proceed through the APM onboarding wizard
-
In SolarWinds Observability SaaS, click Add Data at the top.
-
Click the APM tab.
-
Click language of application being instrumented to launch the Add Data wizard.
-
Type a name for your service, and select the Kubernetes radio button.
-
Follow the instructions in the Add Data wizard to complete the onboarding process.