OpenTelemetry eBPF Instrumentation (OBI) enables non-intrusive monitoring for applications deployed in Container Compute Service (ACS) clusters. Install the ack-onepilot component and add OBI labels to your workload YAML to view application topology, traces, database analysis, and other monitoring data in Cloud Monitor 2.0.
Prerequisites
Cloud Monitor 2.0 is activated.
An ACS cluster is created. For more information, see Create an ACS cluster.
A namespace is created. For more information, see Manage namespaces and quotas. The examples in this topic use the
defaultnamespace.
Running OBI in sidecar mode on an ACS cluster requires special permissions. Please submit a support ticket to the ARMS after-sales team to request that the following Linux capabilities be granted to the current UID:
BPF
PERFMON
NET_ADMIN
NET_RAW
SYS_ADMIN
CHECKPOINT_RESTORE
SYS_RESOURCEStep 1: Install ack-onepilot
Log on to the ACK console. On the Clusters page, click the name of the target cluster.
In the left-side navigation pane, click Components and Add-ons. Search for ack-onepilot.
NoteMake sure that the ack-onepilot version is 5.2.2 or later.
On the ack-onepilot card, click Install Now.
The ack-onepilot component supports up to 1,000 pods by default. For every additional 1,000 pods in the cluster, increase the ack-onepilot resource by 0.5 CPU cores and 512 MB of memory.
Configure the AccessKey pair for the ACS cluster. At the bottom of the installation card, enter the AccessKey ID and AccessKey secret of your Alibaba Cloud account in the accessKey and accessKeySecret fields. Make sure that the corresponding Alibaba Cloud account has the AliyunARMSFullAccess and AliyunSTSAssumeRoleAccess permissions. For more information, see Create an AccessKey pair.
On the page that appears, configure the parameters. The
configuration.obiSidecarConfigparameter specifies the runtime configuration for OBI. To make changes, such as adding a custom gateway, copy the original parameter value, modify it, paste it into the input box, and then click the confirm button. By default, OBI supports official LLM server-side services, such as Alibaba Cloud Model Studio (DashScope), OpenAI, and Gemini. To use a different LLM server-side service, simply add anopenai_compatiblesection underebpf.payload_extraction.http.genaiand configure itshost. For example:ebpf: payload_extraction: http: jsonrpc: enabled: true genai: openai_compatible: enabled: true gateways: - host: newapi.comFor more information about other configurations, see OBI component configuration.
Step 2: Enable OBI for your application
Enable OBI monitoring for Deployment pods
Add OBI labels to an existing or new application to connect it to Cloud Monitor 2.0.
Log on to the ACK console. In the left-side navigation pane, click Clusters.
On the Clusters page, select the resource group and region, and then click the name of the target cluster. In the left-side navigation pane, click Workloads, and then select Deployments, StatefulSets, or DaemonSets.
Find the target application and choose
> Edit YAML.To create a new application, click Create from YAML.
In the YAML editor, add the following
labelsunder thespec.template.metadatalevel:spec: template: metadata: labels: apsara.apm/application-type: obi # Required. Specifies that the application uses OBI. armsPilotAutoEnable: 'on' armsPilotCreateAppName: "<your-app-name>" # Replace with the application name to display in the Cloud Monitor 2.0 console. armsPilotAppWorkspace: "<workspace>" # Replace with the workspace name. Leave blank to use the default.Click Update.
Enable OBI monitoring for SandboxSets
Add OBI labels to an existing or new application to connect it to Cloud Monitor 2.0.
Log on to the ACK console. In the left-side navigation pane, click Clusters.
On the Clusters page, select the resource group and region, and then click the name of the target cluster. In the left-side navigation pane, click Workloads, and then select Custom Resources. In the API Group field, enter
SandboxSet, and then find theSidecarSetin the corresponding namespace.Find the target application and choose
> Edit YAML.To create a new application, click Create from YAML.
In the YAML editor, add the following
labelsunder thespec.template.metadatalevel:spec: template: metadata: labels: apsara.apm/application-type: obi # Required. Specifies that the application uses OBI. armsPilotAutoEnable: 'on' armsPilotCreateAppName: "<your-app-name>" # Replace with the application name to display in the Cloud Monitor 2.0 console. armsPilotAppWorkspace: "<workspace>" # Replace with the workspace name. Leave blank to use the default.
Verify monitoring data
After OBI is configured, monitoring data becomes available in approximately 2 minutes.
Log on to the Cloud Monitor 2.0 console. Select the target workspace. In the left-side navigation pane, choose All Features > Application Observability > Application Insights.
On the application list page, click the name of the target application to view monitoring data such as application topology, traces, exceptions, slow transactions, and SQL analysis. For more information, see Application Monitoring. For AI Agent applications, view monitoring data in AI Agent Observability.