起步

2.1 配置Spring Boot Admin服务端

首先 你需要创建一个最简单的Spring Boot服务端项目。最快捷的方式是使用start.spring.io来创建一个。

  1. pom.xml 添加Spring Boot Admin Server相关的依赖:
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-server</artifactId>
    <version>1.5.0</version>
</dependency>
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-server-ui</artifactId>
    <version>1.5.0</version>
</dependency>
  1. 添加@EnableAdminServer到配置文件中:
@Configuration
@EnableAutoConfiguration
@EnableAdminServer
public class SpringBootAdminApplication {
    public static void main(String[] args) {
        SpringApplication.run(SpringBootAdminApplication.class, args);
    }
}

如果你通过WAR包部署 Spring Boot Admin项目,请参考spring-boot-admin-sample-war项目。

也可以参考spring-boot-admin-sample项目,其中添加了安全相关的配置。

2.2 注册客户端应用程序

你可以将你的Spring Boot Admin 应用通过SBA的客户端或Spring Cloud Discovery(比如:Eureka)注册。

2.2.1 spring-boot-admin-starter-client

每个希望注册的客户端都需要包含Spring Boo Admin Client。

  1. pom.xml添加spring-boot-admin-starter-client:
<dependency>
    <groupId>de.codecentric</groupId>
    <artifactId>spring-boot-admin-starter-client</artifactId>
    <version>1.5.0</version>
</dependency>
  1. 配置URL:
spring.boot.admin.url: http://localhost:8080  (1)
management.security.enabled: false  (2)

(1)Spring Boot Admin服务注册的URL

(2)从Spring Boot 1.5.x开始,所有的端点默认启用安全认证。为了方便,在这里禁用了安全认证。你可以查看 5.安全 章节,学习如何处理安全认证相关的内容。

2.2.2 Spring Cloud Discovery

如果你已经在应用中使用了Spring Cloud Discovery,你可以不再需要Spring Boo Admin Client了。仅需要将当前应用配置为一个发现服务的客户端就可以了。

下面将使用Eureka作为示例,当然其它的Spring Cloud发现服务也是支持的。这儿也有使用ConsulZookeeper的示例。

你也可以查看Spring Cloud的文档。

  1. pom.xml添加spring-cloud-starter-eureka依赖:
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
  1. 通过@EnableDiscoveryClient开启服务发现:
@Configuration
@EnableAutoConfiguration
@EnableDiscoveryClient
@EnableAdminServer
public class SpringBootAdminApplication {
  public static void main(String[] args) {
    SpringApplication.run(SpringBootAdminApplication.class, args);
  }
}
  1. application.yml中配置Eureka服务器信息:
eureka:   (1)
  instance:
    leaseRenewalIntervalInSeconds: 10
  client:
    registryFetchIntervalSeconds: 5
    serviceUrl:
      defaultZone: ${EUREKA_SERVICE_URL:http://localhost:8761}/eureka/

management.security.enabled: false    (2)

(1)配置Eureka客户端相关信息。

(2)从Spring Boot 1.5.x开始,所有的端点默认启用安全认证。为了方便,在这里禁用了安全认证。你可以查看 5.安全 章节,学习如何处理安全认证相关的内容。

也可参考spring-boot-admin-sample-eureka

你可以将Spring Boot Admin配置在Eureka Server上。按照上面示例中配置就好了。但需要注意的是:不要将spring.boot.admin.context-path配置为“/”,它会和Eureka相冲突。

results matching ""

    No results matching ""