一、操作步骤
注意:说明:
注意: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/v1kind: Deploymentmetadata: labels: app: service-provider-2022-a name: service-provider-2022-a namespace: defaultspec: 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