通过本教程,您将学习如何将ACK集群下的Java应用接入云监控2.0应用监控,体验应用性能分析和调用链分析等功能,并配置告警。
前提条件
您已开通阿里云云监控2.0服务。
创建Kubernetes集群。具体操作,请参见创建ACK托管集群。
创建Java应用,如果您没有可以使用的Java应用,可以参考以下示例YAML创建。具体操作,请参见创建无状态工作负载Deployment。
说明JDK版本要求,请参见ARMS应用监控支持的Java组件和框架。进程最大堆内存需大于256 MB。
示例YAML创建了以下资源:
空间名称:arms-demo。以下所有资源均创建在arms-demo命名空间下。
无状态应用:arms-springboot-demo和arms-springboot-demo-subcomponent。
服务:arms-demo-component。
数据库:arms-demo-mysql。
使用流程
为应用安装探针。
安装ack-onepilot组件:ack-onepilot是阿里云容器服务Kubernetes提供的系统组件,可以让部署在容器服务Kubernetes中的Java或Golang应用接入云监控2.0。
更新YAML:通过在应用的YAML中添加
labels,开启监控并配置应用在云监控2.0中的展示名称。
查看监控数据。
为监控数据配置告警。
为应用安装探针
1. 安装ack-onepilot组件
在容器服务管理控制台的集群列表页面单击目标集群名称。
在左侧导航栏选择,然后在右侧页面通过关键字搜索ack-onepilot。
在ack-onepilot卡片上单击安装,然后在弹出的对话框单击确定。

2. 更新YAML
在页面选择应用所在的命名空间,然后在目标应用右侧选择。

在编辑 YAML中将以下
labels添加到spec.template.metadata层级下,然后单击更新。labels: armsPilotAutoEnable: "on" armsPilotCreateAppName: "<your-deployment-name>" #应用在ARMS中的展示名称。例如,在arms-springboot-demo和arms-springboot-demo-subcomponent应用的YAML中添加配置,开启监控并配置在ARMS中的展示名称分别为arms-k8s-demo和arms-k8s-demo-subcomponent。
arms-springboot-demo应用

arms-springboot-demo-subcomponent应用

待容器完成自动重新部署后,等待1~2分钟,选择云监控2.0控制台的左侧导航菜单,在应用列表页面单击目标应用名称,查看应用的监控指标。更多信息,请参见查看监控详情(新版)。
查看监控详情
调用链分析
调用链分析功能可以通过自由组合筛选条件与聚合维度进行实时分析,并支持通过错/慢Trace分析功能,定位系统或应用产生错、慢调用的原因。
arms-k8s-demo应用

调用链详情:

arms-k8s-demo-subcomponent应用

调用链详情:

监控指标
-
应用概览
arms-k8s-demo应用

arms-k8s-demo-subcomponent应用

-
应用拓扑
arms-k8s-demo应用

arms-k8s-demo-subcomponent应用

配置告警
通过配置告警,您可以制定针对特定应用的告警规则。当告警规则被触发时,系统会以您指定的通知方式向告警联系人或钉群发送告警信息,以提醒您采取必要的解决措施。具体操作,请参见告警管理。
释放资源
完成教程后:
-
如果仍需要继续监控当前应用,请确保账户不要欠费。
-
如果无需继续监控当前应用,请卸载探针。具体操作,请参见卸载Kubernetes环境中的探针。



