1、 服务获取nacos配置信息
此时需要网络通畅,spring-boot和spring-cloud版本匹配。如,获取配置信息的接口:
curl -XGET 'http://*.*.*.136:8848/nacos/v1/cs/configs?dataId=*-*-job-tracker.yml&tenant=pfme&group=*-*-job-tracker'
2、 服务注册到nacos集群
除了上述条件,此时还需要服务开放web端口,供nacos调用,对于spring-boot程序,通常需要引入web依赖和配置监听端口(默认8080),如下所示:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.2.5.RELEASE</version>
</dependency>
server:
port: 28080
注册成功:
3、完整配置
《pom.xml》
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Hoxton.SR12</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>2021.1</version>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2021.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.2.5.RELEASE</version>
</dependency>
</dependencies>
《bootstrap.yml》
spring:
application:
name: *-*-job-tracker
profiles:
active: noctest
cloud:
nacos:
config:
namespace: pfme
group: ${spring.application.name}
file-extension: yml
discovery:
namespace: pfme
group: ${spring.profiles.active}
《bootstrap-noctest.yml》
spring:
cloud:
nacos:
config:
server-addr: *.*.*.135:8848, *.*.*.136:8848, *.*.*.137:8848
discovery:
server-addr: *.*.*.135:8848, *.*.*.136:8848, *.*.*.137:8848
《--job-tracker》或《--job-tracker.yml》或《--job-tracker-noctest.yml》
server:
port: 28080