spring boot admin监控 集成 nacos服务发现

佐手、 提交于 2019-11-30 12:30:50

测试需要三个使用服务: nacos注册中心, spring boot admin监控服务(集成nacos client), 测试服务(集成nacos client)

1, nacos注册中心

下载nacos-server.jar 启动就可以了,默认端口 8848 ,默认账号密码都是:nacos

 

2, spring boot admin监控服务

 

<properties>
		<spring.boot.version>2.1.6.RELEASE</spring.boot.version>
		<spring.boot.admin.version>2.1.6</spring.boot.admin.version>
		<spring.cloud.alibaba.version>2.1.0.RELEASE</spring.cloud.alibaba.version>
	</properties>
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>com.alibaba.cloud</groupId>
				<artifactId>spring-cloud-alibaba-dependencies</artifactId>
				<version>${spring.cloud.alibaba.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>


<dependencies>
		
		
		<dependency>
			<groupId>de.codecentric</groupId>
			<artifactId>spring-boot-admin-starter-server</artifactId>
			<version>${spring.boot.admin.version}</version>
			
		</dependency>
		
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-jetty</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-mail</artifactId>
		</dependency>

		<dependency>
			<groupId>com.alibaba.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
		</dependency>
	</dependencies>

spring boot admin 详细实现参考: https://www.cnblogs.com/forezp/p/10242004.html

这里增加了spring-cloud-starter-alibaba-nacos-discovery

配置项变化:

#spring.boot.admin.client.url=http://127.0.0.1
#spring.boot.admin.client.username=${spring.application.name}
#spring.boot.admin.client.password=password
#
#spring.boot.admin.client.instance.name=${spring.application.name}
#spring.boot.admin.client.instance.service-base-url=http://localhost:8081
#spring.boot.admin.client.instance.metadata.user.name=name
#spring.boot.admin.client.instance.metadata.user.password=password

spring boot admin client相关配置不再需要,通过服务注册可以自动发现 

spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
spring.cloud.nacos.discovery.metadata.user.name=name
spring.cloud.nacos.discovery.metadata.user.password=password
spring.cloud.nacos.discovery.metadata.management.context-path=/admin/actuator

这里需要注意的是metadata相关的配置

spring.cloud.nacos.discovery.metadata.user.name=name
spring.cloud.nacos.discovery.metadata.user.password=password

增加这两项,默认会使用basic auth进行登录

 

spring.cloud.nacos.discovery.metadata.management.context-path=/admin/actuator

这里指定actuator请求的前缀,要包括server.servlet.context-path 配置的前缀, 这个配置是重点, 找了好久才发现, 当你actuator端点配置不是默认的/actuator,也就是:management.endpoints.web.base-path=/admin/actuator

 

3, 测试服务

当没有nacos时集成的是spring-boot-admin-starter-client

<dependency>
			<groupId>de.codecentric</groupId>
			<artifactId>spring-boot-admin-starter-client</artifactId>
			<version>2.1.6</version>
		</dependency>

有了nacos, 就不需要spring-boot-admin-starter-client这个了,换成spring-cloud-starter-alibaba-nacos-discovery

<dependency>
			<groupId>com.alibaba.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
			<version>2.1.0.RELEASE</version>
		</dependency>

这个服务用来检测服务是否可用, 跟2配置基本一致,只是没有spring boot admin

 

三个服务都启动后,在第2个服务上可以看到两个服务(第1个和第2个)的监控信息, 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!