Spring Cloud Netflix Eureka 구축하기

onlyJoon·2024년 2월 2일
2

MSA

목록 보기
5/5
post-thumbnail

🧐Eureka 어떻게 써?

Spring Boot 프로젝트를 생성한다.

Config 구축 때와 마찬가지로 Server와 Client 설정이 필요하다.

👍Eureka Server

의존성 추가

Eureka Server 의존성을 추가해주어야 한다.

implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server'

Eureka Server 활성화

메인 클래스에 @EnableEurekaServer 어노테이션을 추가한다.

@EnableConfigServer
@SpringBootApplication
public class EurekaServiceApplication {

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

}

application.yaml

server:
  port: 8761

spring:
  application:
    name: eureka

eureka:
  client:
    register-with-eureka: false
    fetch-registry: false
  • register-with-eureka
    • 자신을 등록할 것인지를 선택하는 옵션
    • 디스커버리 서버가 두 개 이상일 경우에 true
    • 하나일 때는 등록이 의미없으므로 false
  • fetch-registry
    • Eureka client가 registry 정보를 로컬에 caching 할지 여부
    • eureka 서버이므로 비활성화

Eureka Server는 설정이 완료되었다.

😪Eureka Client

Client도 Server만큼 설정이 간단하다.

의존성 추가

implementation 'org.springframework.cloud:spring-cloud-starter-eureka-client'

Eureka Client 활성화

메인 클래스에 @EnableEurekaClient 어노테이션을 추가한다.

@EnableEurekaClient
@SpringBootApplication
public class UserServiceApplication {

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

}

application.yaml

eureka:
  instance:
    instance-id: ${spring.cloud.client.hostname}:${spring.application.instance_id:${random.value}}
  client:
    register-with-eureka: true
    fetch-registry: true
    service-url:
      defaultZone: http://{Eureka Server 주소}/eureka

😑너무 쉬운거 아니야?

Eureka는 매우 간단하게 끝났다. yaml 설정 값 조정을 통해 다양한 시도가 가능하지만 그것은 각자의 몫으로 남겨두겠다.

이제 서비스를 모두 모아서 정보들을 관리하고 있으니 쓰는 사람만 있으면 된다. 누가 쓸까? 다음 글을 확인해보자.

profile
A smooth sea never made a skilled sailor

1개의 댓글

comment-user-thumbnail
2024년 2월 8일

Spring Cloud Eureka를 사용중인데, 너무 잘 정리되어 있어서 좋네요 😀 잘보고 갑니다!

답글 달기