개발강의정리/Spring

[스프링 부트 개념과 활용] 5-3. 스프링 부트 Actuator 3부: 스프링 부트 어드민

nineDeveloper 2019. 12. 5.
728x90

스프링 부트 개념과 활용

5. 스프링 부트 운영

스프링 부트는 애플리케이션 운영 환경에서 유용한 기능을 제공합니다
스프링 부트가 제공하는 엔드포인트와 메트릭스 그리고 그 데이터를 활용하는 모니터링 기능에 대해 학습합니다

포스팅 참조 정보

GitHub

공부한 내용은 GitHub에 공부용 Organizations에 정리 하고 있습니다

해당 포스팅에 대한 내용의 GitHub 주소

실습 내용이나 자세한 소스코드는 GitHub에 있습니다
포스팅 내용은 간략하게 추린 핵심 내용만 포스팅되어 있습니다

https://github.com/freespringlecture/springboot-concept-uses/tree/chap05-03-actuator_springbootadmin

 

freespringlecture/springboot-concept-uses

백기선님의 스프링 부트 개념과 활용 강의 내용 정리. Contribute to freespringlecture/springboot-concept-uses development by creating an account on GitHub.

github.com

해당 포스팅 참고 인프런 강의

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/dashboard

 

스프링 부트 개념과 활용 - 인프런

스프링 부트의 원리 및 여러 기능을 코딩을 통해 쉽게 이해하고 보다 적극적으로 사용할 수 있는 방법을 학습합니다. 중급 프레임워크 및 라이브러리 Spring Spring Boot 온라인 강의

www.inflearn.com

실습 환경

  • Java Version: Java 11
  • SpringBoot Version: 2.1.2.RELEASE

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

https://github.com/codecentric/spring-boot-admin

 

codecentric/spring-boot-admin

Admin UI for administration of spring boot applications - codecentric/spring-boot-admin

github.com

  • 스프링 진영에서 제공하는 프로젝트가 아니고 제3자가 오픈소스로 제공하는 애플리케이션
  • 설정한 스프링 부트 Actuator 정보를 UI에서 확인할 수있는 애플리케이션 툴

어드민 서버 역할 애플리케이션 생성

의존성 추가

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

@EnableAdminServer 어노테이션 추가

@SpringBootApplication
@EnableAdminServer
public class Application {

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

}

어드민 클라이언트 설정

  • 설정하는 방법은 두가지가 있음
  • 아래와 같이 client 라이브러리를 통해서 설정하는 방법과 스프링 클라우드를 사용해서 디스커버리 되도록 하는 방법
  • 이런 정보들이 밖으로 노출되면 매우 위험하므로 SpringSecurity를 적용해서 EndpointsAdmin만 접근이 가능하도록 해야함

어드민 클라이언트 라이브러리 적용

추가하면서 jolokia 의존성이 따라서 들어오므로 MbeanHTTP를 통해서 볼수있게 됨

의존성 추가

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

properties 설정

어드민 서버 주소를 설정

spring.boot.admin.client.url​=​http://localhost:8080
management.endpoints.web.exposure.include​=​*

client 서버포트 변경

server.port=18080
728x90

댓글

💲 추천 글