부트 개념과 활용-34.스프링 부트 어드민(스프링 부트 운영)


스프링 부트 Actuator 3부: 스프링 부트 어드민

스프링 부트 어드민은 스프링 진영에서 제공하는 프로젝트가 아니라, 제 3자가 오픈소스로 제공한다.
앞선 포스팅의 Actuator 정보들을 UI에서 확인할 수 있게 해 준다.

실습

서버가 하나 필요. https://www.baeldung.com/spring-boot-admin
https://github.com/codecentric/spring-boot-admin
스프링 부트 Actuator UI 제공 어드민 서버 설정

admin 서버

의존성 추가 (버전 호환성때문에 애먹음 버전 잘 확인할것.)

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.3.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

<dependency>
  <groupId>de.codecentric</groupId>
  <artifactId>spring-boot-admin-starter-server</artifactId>
  <version>2.0.1</version>
</dependency>

@EnableAdminServer 설정

@SpringBootApplication
@EnableAdminServer
public class AdminApplication {

    public static void main(String[] args) {
        SpringApplication.run(AdminApplication.class, args);
    }
}

클라이언트

마찬가지로 버전 호환 주의..

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.3.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
...
<dependency>
  <groupId>de.codecentric</groupId> 
  <artifactId>spring-boot-admin-starter-client</artifactId>
  <version>2.0.1</version>
</dependency>
spring.boot.admin.client.url=http://localhost:8080
server.port=18080

management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always

서버에 현재 떠있는 클라이언트가 조회되고, 들어가면 상세한 정보들을 볼 수 있다.
운영중인 시스템의 로그레벨을 바꾸고 적용시킨다던가, 현재 스레드, 메모리, http trace, 스레드의 덤프까지 뜰 수 있다.

admin1

admin2




© 2019. by jaeuk