Java Agent 支持配置管理

最近更新时间:2025-06-11 15:55:02

我的收藏

场景说明

该文档指导您通过 Java Agent 接入北极星时,使用配置管理能力的操作步骤。

操作步骤

说明:
Java Agent 的版本要 2.0.1.0及以上。

步骤1:通过 Java Agent 接入北极星

服务通过 Java Agent 接入北极星。具体步骤参见:Spring Cloud 使用 Java Agent

步骤2:配置管理

在上一步接入操作中 步骤3 Spring Cloud 应用 yaml 文件中声明 Java Agent 标签 中配置相关项。具体参数如下:
配置项
配置值
是否必填
配置项说明
spring.config.import
optional:polaris
使用北极星的配置中心

spring.cloud.polaris.config.enabled
true
开启北极星配置中心功能

spring.cloud.polaris.config.address
例如 grpc://127.0.0.1:8093
北极星的配置中心地址

spring.cloud.polaris.config.groups[0].name
例如 service-provider-2022

北极星配置分组名称

spring.cloud.polaris.config.groups[0].files[0]
config/callee.properties

指定北极星配置分组文件名称

配置示例:
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: service-provider-2022-a
name: service-provider-2022-a
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: service-provider-2022-a
template:
metadata:
labels:
app: service-provider-2022-a
annotations:
# 声明需要往这个POD中注入javaagent
polarismesh.cn/javaagent: "true"
# 声明应用的框架类型,对于SpringCloud应用则填写spring-cloud
polarismesh.cn/javaagentFrameworkName: spring-cloud
# 声明应用的框架版本,当前支持hoxton, 2022,2023
polarismesh.cn/javaagentFrameworkVersion: 2022
# 声明javaagent包的镜像版本,配置管理需要使用2.0.1之后的版本,可用版本:https://github.com/polarismesh/polaris-java-agent/releases
polarismesh.cn/javaagentVersion: 2.0.1.0
# 用户自定义的JavaAgent配置,不填写的配置则使用默认配置,格式为JSON。
polarismesh.cn/javaagentConfig: |
{
"spring.config.import": "optional:polaris",
"spring.cloud.polaris.config.enabled": "true",
"spring.cloud.polaris.config.address": "grpc://127.0.0.1:8903",
"spring.cloud.polaris.config.groups[0].name": "service-provider-2022",
"spring.cloud.polaris.config.groups[0].files[0]": "config/callee.properties",
"spring.cloud.polaris.lossless.enabled": "true"
}
spec:
containers:
- image: polarismesh/polaris-javaagent-demo-sc-quickstart-2022-provider-a:2.0.1.0-java17
imagePullPolicy: Always
name: provider
resources:
limits:
cpu: "500m"
memory: 1000Mi
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
command:
- /bin/bash
- -c
- cd /app && java -Dserver.port=65001 -Dspring.cloud.nacos.config.enabled=false -jar main.jar
lifecycle:
preStop:
exec:
command: [ "curl","-X","PUT","http://127.0.0.1:28080/offline","&&","sleep","30" ]
readinessProbe:
httpGet:
path: /online
port: 28080
initialDelaySeconds: 3
periodSeconds: 3
restartPolicy: Always