您可以使用在容器服务(TKE)中的应用市场服务 > tapm-operator,快速安装应用性能监控 APM 的探针。即可监控追踪容器服务中的应用,查看应用相关的监控指标与链路。本文将会为您介绍如何在容器服务(TKE)侧安装 APM 探针。
说明:
仅支持 Java 语言- Opentelementry 增强探针。
新版本 tencent-opentelemetry-operator 已经发布,支持部署在容器服务 TKE 的 Java、Python、Node、.Net 应用快速接入 APM,支持 APM 控制台一键安装 Operator,支持探针自动升级,具体使用方式请参考安装 tencent-opentelemetry-operator。tapm-operator 将于2024年9月1日下线,已经通过 tapm-operator 接入 APM 的应用可以继续使用,但推荐您尽快更换新版本 tencent-opentelemetry-operator 方案,并通过 TKE 应用中心或者 Helm 卸载 tapm-operator。
接入步骤
通过 TKE 应用市场安装 tapm-operator
若您的集群从未通过 TKE 应用市场安装 tapm-operator,请参见以下操作步骤:
前置步骤
创建 TKE 集群,您可查看 容器服务(TKE)相关文档,了解并使用容器服务。
在容器服务(TKE)侧应用市场安装 tapm-operator
1. 进入 腾讯云容器服务(TKE)控制台-应用。
2. 选择您的容器集群,在容器集群下单击新建。
2.1. 输入应用名称。
2.2. 选择命名空间。
2.3. 来源项选择应用市场。
2.4. Chart 中的应用场景选择监控。
2.5. 选择应用性能监控 APM 的应用tapm-operator。
2.6. Chart 版本需选择最新版本。
![](https://qcloudimg.tencent-cloud.cn/image/document/6fd2bef6da44fbbc301f046309ab1c7c.png)
2.7 修改 yaml 文件参数。
单击下方的参数编辑按钮,进入参数配置页面。
![](https://qcloudimg.tencent-cloud.cn/image/document/1102001450e65daf6e130e798f6954e3.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/1102001450e65daf6e130e798f6954e3.png)
根据下列描述修改 env 参数:
参数 | 描述 | 获取方式和格式说明 |
APM_TOKEN | 您的 APM 实例对应的上报 Token | 1. 在应用性能监控控制台>数据接入页面选择 Java 语言接入方式及上报方式,单击下一步。 ![]() 2. 单击OpenTelemetry增强探针,获取 Token。 ![]() |
CLUSTER_ID | 此应用所在 Kubernetes集群的 ID | |
TKE_REGION | 此应用的 Kubernetes 集群所在地域 |
命名空间添加 label
在需要被注入的 pod 所在 namespace 加上 label
swck-injection: enabled
。如下图:![](https://qcloudimg.tencent-cloud.cn/image/document/4d78f1e4f057c67f4b6bf24fea47ecfa.png)
工作负载添加 label
若您已经通过 TKE 应用市场的方式成功接入 APM,只需新增应用信息即可,请参见以下操作步骤:
操作说明
您需要将新增的应用所在的 pod 打上 label,具体添加步骤可参见下列场景:
- java-agent-app-name: service-name // 服务名,例如:order-service- java-agent-injected: "true" // pod 是否需要注入,默认写 true
场景一:未创建工作负载
在 TKE 创建或修改 Deployment 配置时加上 label
1. 进入 容器服务控制台,单击相关集群,进入工作负载 > Deployment ,选择新建或修改 Deployment。
![](https://qcloudimg.tencent-cloud.cn/image/document/6c9354a8d05940e26cca90cf921cea43.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/6c9354a8d05940e26cca90cf921cea43.png)
2. 在 Labels 配置项中新增 label。
- java-agent-app-name = service-name- java-agent-injected = true
![](https://qcloudimg.tencent-cloud.cn/image/document/318cb2250aa7f72911b63ffd3766cd8a.png)
3. 单击创建 Deployment,即新增完成。
![](https://qcloudimg.tencent-cloud.cn/image/document/318cb2250aa7f72911b63ffd3766cd8a.png)
场景二:已在TKE控制台创建工作负载
若已创建 Deployment,可直接单击 Deployment 名称修改 YAML 文件,按照如下格式修改。
- java-agent-app-name: service-name- java-agent-injected: "true"
注意:
需要加到 deployment 下的 template 的 metadata 的 labels 里面。
![](https://qcloudimg.tencent-cloud.cn/image/document/bdbed7fb84da9a78fbd33c5f141c9d98.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/bdbed7fb84da9a78fbd33c5f141c9d98.png)
场景三:已通过 yaml 创建工作负载
通过 TKE 控制台创建工作负载,TKE 会默认添加 label:
k8s-app: <工作负载名>
,所以若通过 yaml 直接创建需要额外添加这个 label。通过 yaml 创建工作负载需要给 pod 添加以下标签:
- java-agent-app-name: order-service1- java-agent-injected: "true"- k8s-app: demo-springboot2
注意:
需要加到 deployment 下的 template 的 metadata 的 labels 里面。
![](https://qcloudimg.tencent-cloud.cn/image/document/6e4a3eb4c57c90c29a720987314776e0.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/6e4a3eb4c57c90c29a720987314776e0.png)
跨地域上报处理
以上步骤会将数据上传到 APM,地域默认为容器集群所在的地域。请注意,APM 暂不支持部分容器集群所在的地域上报,如您有此类情况或者有特殊需求,可以修改或新增 label 进行跨地域上报。
新增/修改 Label 信息说明:
backend-service: APM 接入点信息
例如:APM 控制台数据接入信息为:![](https://qcloudimg.tencent-cloud.cn/image/document/cbb4e9f0a6a1f05ad38ba6cf811b0231.png)
pl.ap-beijing.apm.tencentcs.com
则需要新增/修改 Label 信息为:backend-service:pl.ap-beijing.apm.tencentcs.com
![](https://qcloudimg.tencent-cloud.cn/image/document/cbb4e9f0a6a1f05ad38ba6cf811b0231.png)
场景一:未创建工作负载
在 TKE 创建或修改 Deployment 配置时加上 label。
1. 进入 容器服务控制台,点击相关集群,进入工作负载 > Deployment ,选择新建或修改 Deployment。
![](https://qcloudimg.tencent-cloud.cn/image/document/6c9354a8d05940e26cca90cf921cea43.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/6c9354a8d05940e26cca90cf921cea43.png)
2. 在 Labels 处新增 label。
以 ![](https://qcloudimg.tencent-cloud.cn/image/document/fa94c64e396e107e46b206293e6b0851.png)
backend-service:pl.ap-beijing.apm.tencentcs.com
为例:
![](https://qcloudimg.tencent-cloud.cn/image/document/fa94c64e396e107e46b206293e6b0851.png)
场景二:已创建工作负载
若已创建 Deployment,可直接单击 Deployment 名称修改 YAML 文件,按照如下格式修改。
以 ![](https://qcloudimg.tencent-cloud.cn/image/document/1d0d8330b9b693fd390bc9748048443d.png)
backend-service:pl.ap-beijing.apm.tencentcs.com
为例:
![](https://qcloudimg.tencent-cloud.cn/image/document/1d0d8330b9b693fd390bc9748048443d.png)
查看容器监控数据
完成以上步骤后,您就可以在应用性能监控 APM 页面监控到您在容器中部署的应用情况,以及该应用相关的容器基础资源监控。
1. 在应用监控页,可选择想监控的应用,查看应用所在容器 Deployment 及 pod 的监控信息。
![](https://qcloudimg.tencent-cloud.cn/image/document/b2bf792b70b6128154077427d3dbde53.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/b2bf792b70b6128154077427d3dbde53.png)
2. 在调用查询 > 链路详情页中,可单击查看该 span 归属应用所在 pod 的基础监控信息。
![](https://qcloudimg.tencent-cloud.cn/image/document/96f9ed87d1fe37a0f21e673cdcd2bf11.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/96f9ed87d1fe37a0f21e673cdcd2bf11.png)
容器监控链路详情如下:
![](https://qcloudimg.tencent-cloud.cn/image/document/fe1184e7fee43e498c64af80280d5b62.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/fe1184e7fee43e498c64af80280d5b62.png)