在使用服务网格之前,您需要将本地工程接入 SOFA 服务注册中心,完成服务注册。本文介绍如何把微服务接入 SOFA 服务注册中心。
下面根据微服务类型,详细介绍以下三种微服务如何接入 SOFA 服务注册中心,即 SOFARegistry,完成服务注册。
SOFABoot 服务
升级 SOFABoot 依赖版本至最新版本。版本信息,详见 SOFABoot 版本说明。
<parent> <groupId>com.alipay.sofa</groupId> <artifactId>sofaboot-enterprise-dependencies</artifactId> <version>3.x.x</version> </parent>
通过以下任一方式,添加应用启动参数:
在
app/web/src/main/resources/config
下的application.properties
文件中新增如下配置:说明这种方式是把信息配置在代码里。
com.alipay.env=shared com.alipay.instanceid=// 需要填写 com.antcloud.antvip.endpoint=// 需要填写 com.antcloud.mw.access=// 需要填写 com.antcloud.mw.secret=// 需要填写
指定 JVM 启动参数值:
说明这种方式是把信息配置在启动的 JVM 里,优先级高于代码。
-Dcom.alipay.env=shared -Dcom.alipay.instanceid=// 需要填写 -Dcom.antcloud.antvip.endpoint=// 需要填写 -Dcom.antcloud.mw.access=// 需要填写 -Dcom.antcloud.mw.secret=// 需要填写
在 IntelliJ IDEA 中的配置示例如下截图:
说明以上参数值是中间件的全局配置项,可在 脚手架控制台 获取,详情请参见 引入 SOFA 中间件 > 中间件全局配置。
Dubbo 服务
引入
sofa-registry-cloud-all
SDK 依赖。版本信息请参见 SDK 版本说明。<dependency> <groupId>com.alipay.sofa</groupId> <artifactId>sofa-registry-cloud-all</artifactId> <!-- 替换 x.x.x 为该 SDK 最新版本号 --> <version>x.x.x</version> </dependency>
引入 Tracer 依赖。Tracer 针对 Dubbo 框架提供 3 种方式接入,分别针对 Spring Boot 1.x、Spring Boot 2.x 和非 Spring Boot 类型的 Dubbo 应用。根据您的实际业务需求,选择相应的 Tracer 依赖接入。
Spring Boot 1.x
<!-- for Spring Boot 1.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>2.3.7.JST.1</version> <exclusions> <exclusion> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
Spring Boot 2.x
<!-- for Spring Boot 2.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>3.2.3.JST.1</version> <exclusions> <exclusion> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
非 Spring BootTracer 依赖信息和与上文 Spring boot 2.x 相同。引入后,还需要在代码 Main 启动入口第一行加入以下开关:
SofaTracerConfiguration.setProperty(SofaTracerConfiguration.JSON_FORMAT_OUTPUT,"false");
配置 Dubbo 的注册中心,使用 dsr:
<dubbo:registry address="dsr://dsr"/>
通过以下任一方式,添加应用启动参数:
在
dubbo.properties
中配置如下:com.alipay.instanceid=// 需要填写 com.antcloud.antvip.endpoint=// 需要填写 com.antcloud.mw.access=// 需要填写 com.antcloud.mw.secret=// 需要填写
指定 JVM 启动参数值:
-Dcom.alipay.instanceid=// 需要填写 -Dcom.antcloud.antvip.endpoint=// 需要填写 -Dcom.antcloud.mw.access=// 需要填写 -Dcom.antcloud.mw.secret=// 需要填写
指定系统环境变量:
SOFA_INSTANCE_ID=// 需要填写 SOFA_ANTVIP_ENDPOINT=// 需要填写 SOFA_ACCESS_KEY=// 需要填写 SOFA_SECRET_KEY=// 需要填写
说明以上参数值是中间件的全局配置项,可在 脚手架控制台 获取,详情请参见 引入 SOFA 中间件 > 中间件全局配置。
Spring Cloud 服务
引入以下
sofa-registry-cloud-all
SDK 依赖。版本信息请参见 SDK 版本说明。<dependency> <groupId>com.alipay.sofa</groupId> <artifactId>sofa-registry-cloud-all</artifactId> <!-- 替换 x.x.x 为该 SDK 最新版本号 --> <version>x.x.x</version> </dependency>
根据您的 Spring Cloud 版本信息,引入对应的 Tracer 依赖。
Spring Cloud:Camden、Dalston 和 Edgware 版本(对应 Spring Boot 1.x 版本)
<!-- 支持服务调用tracer日志记录能力 --> <!-- for Spring Boot 1.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>2.3.7.JST.1</version> <exclusions> <exclusion> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
Spring Cloud:Finchley、Greenwich 版本(对应 Spring Boot 2.x 版本)
<!-- 接入tracer --> <!-- for Spring Boot 2.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>3.2.3.JST.1</version> <exclusions> <exclusion> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
通过以下任一方式,添加应用启动参数。
注意如您即将使用的应用服务发布平台不是 SOFASTACK 自提供的容器应用服务或经典应用服务,则无需添加以下参数配置。
在应用 yml 文件指定参数:
sofa: registry: discovery: instanceId:// 需要填写 antcloudVip:// 需要填写 accessKey:// 需要填写 secretKey:// 需要填写
指定 JVM 启动参数值:
-Dcom.alipay.instanceid=// 需要填写 -Dcom.antcloud.antvip.endpoint=// 需要填写 -Dcom.antcloud.mw.access=// 需要填写 -Dcom.antcloud.mw.secret=// 需要填写
指定系统环境变量:
SOFA_INSTANCE_ID= SOFA_ANTVIP_ENDPOINT= SOFA_SECRET_KEY= SOFA_ACCESS_KEY=
说明以上参数值是中间件的全局配置项,可在 脚手架控制台 获取,详情请参见 引入 SOFA 中间件 > 中间件全局配置。
本地应用改造完成后,您即可将该应用发布部署至 容器应用服务 或 经典应用服务(仅专有云)。详情的部署步骤请参见 服务网格快速入门。
在文档使用中是否遇到以下问题
更多建议
匿名提交