步骤一:安装ARMS应用监控组件
安装ARMS应用监控组件之前,请查看ACK Serverless集群是否存在ARMS Addon Token。若存在,ARMS会进行免密授权;若不存在,在安装ARMS应用监控组件时,需要手动填写accessKey和accessKeySecret进行授权。
查看集群是否存在ARMS Addon Token。
登录容器服务管理控制台,在集群列表页面,单击目标集群名称进入集群详情页。
在左侧导航栏选择,然后在顶部选择命名空间为kube-system,查看addon.arms.token是否存在。
操作步骤
在云资源访问授权页面完成授权。
登录容器服务管理控制台,在左侧导航栏选择集群列表。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择。
在组件管理页面,单击日志与监控页签,在ack-onepilot组件区域,单击安装。
在安装组件 ack-onepilot对话框中,设置相关配置项,然后单击确定。
如果ACK Serverless集群不存在ARMS Addon Token,则需要设置accessKey和accessKeySecret。其他配置项可按需选择,建议使用默认值。
配置项 | 描述 |
accessKey | 您的阿里云AccessKey ID。AK权限需包含访问ARMS的权限。 |
accessKeySecret | 您的阿里云AccessKey Secret。 |
步骤二:为Java应用开启ARMS应用监控
登录容器服务管理控制台,在左侧导航栏选择集群列表。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择。
在无状态页面的目标应用右侧选择。
如需创建一个新应用,单击使用YAML创建资源。
在YAML文件中将以下labels
添加到spec.template.metadata层级下。
labels:
armsPilotAutoEnable: "on"
armsPilotCreateAppName: "<your-deployment-name>" #请将<your-deployment-name>替换为您的应用名称。
armsSecAutoEnable: "on" #如果需要接入应用安全,则需要配置此参数。

创建一个无状态(Deployment)应用并开启ARMS应用监控的完整YAML示例模板如下:
展开查看完整示例YAML文件(Java)
apiVersion: v1
kind: Namespace
metadata:
name: arms-demo
---
apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
kind: Deployment
metadata:
name: arms-springboot-demo
namespace: arms-demo
labels:
app: arms-springboot-demo
spec:
replicas: 2
selector:
matchLabels:
app: arms-springboot-demo
template:
metadata:
labels:
app: arms-springboot-demo
armsPilotAutoEnable: "on"
armsPilotCreateAppName: "arms-k8s-demo"
spec:
containers:
- resources:
limits:
cpu: 0.5
image: registry.cn-hangzhou.aliyuncs.com/arms-docker-repo/arms-springboot-demo:v0.1
imagePullPolicy: Always
name: arms-springboot-demo
env:
- name: SELF_INVOKE_SWITCH
value: "true"
- name: COMPONENT_HOST
value: "arms-demo-component"
- name: COMPONENT_PORT
value: "6666"
- name: MYSQL_SERVICE_HOST
value: "arms-demo-mysql"
- name: MYSQL_SERVICE_PORT
value: "3306"
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: arms-springboot-demo-subcomponent
namespace: arms-demo
labels:
app: arms-springboot-demo-subcomponent
spec:
replicas: 2
selector:
matchLabels:
app: arms-springboot-demo-subcomponent
template:
metadata:
labels:
app: arms-springboot-demo-subcomponent
armsPilotAutoEnable: "on"
armsPilotCreateAppName: "arms-k8s-demo-subcomponent"
spec:
containers:
- resources:
limits:
cpu: 0.5
image: registry.cn-hangzhou.aliyuncs.com/arms-docker-repo/arms-springboot-demo:v0.1
imagePullPolicy: Always
name: arms-springboot-demo-subcomponent
env:
- name: SELF_INVOKE_SWITCH
value: "false"
- name: MYSQL_SERVICE_HOST
value: "arms-demo-mysql"
- name: MYSQL_SERVICE_PORT
value: "3306"
---
apiVersion: v1
kind: Service
metadata:
labels:
name: arms-demo-component
name: arms-demo-component
namespace: arms-demo
spec:
ports:
# the port that this service should serve on
- name: arms-demo-component-svc
port: 6666
targetPort: 8888
# label keys and values that must match in order to receive traffic for this service
selector:
app: arms-springboot-demo-subcomponent
---
apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
kind: Deployment
metadata:
name: arms-demo-mysql
namespace: arms-demo
labels:
app: mysql
spec:
replicas: 1
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- resources:
limits:
cpu: 0.5
image: registry.cn-hangzhou.aliyuncs.com/arms-docker-repo/arms-demo-mysql:v0.1
name: mysql
ports:
- containerPort: 3306
name: mysql
---
apiVersion: v1
kind: Service
metadata:
labels:
name: mysql
name: arms-demo-mysql
namespace: arms-demo
spec:
ports:
# the port that this service should serve on
- name: arms-mysql-svc
port: 3306
targetPort: 3306
# label keys and values that must match in order to receive traffic for this service
selector:
app: mysql
---
在无状态页面的目标应用操作列下方,单击ARMS控制台,可跳转至ARMS控制台对您的应用进行服务治理。
后续操作
为集群下所有应用卸载探针
登录容器服务管理控制台,在集群列表页面单击目标集群名称。
在左侧导航栏选择,然后通过关键字搜索ack-onepilot。
在ack-onepilot卡片上单击卸载。
在弹出的对话框中单击确定。
重启您的业务Pod。
为集群下指定应用卸载探针
在容器服务管理控制台左侧导航栏单击集群,在集群列表页面上的目标集群右侧操作列单击应用管理。
在无状态页面目标应用右侧选择。
在编辑YAML对话框中删除上文步骤二中安装探针时添加的labels
,然后单击更新。
重启Pod。