Spring Boot 프로젝트를 생성한다.
Config 구축 때와 마찬가지로 Server와 Client 설정이 필요하다.
Eureka Server
의존성을 추가해주어야 한다.
implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server'
메인 클래스에 @EnableEurekaServer
어노테이션을 추가한다.
@EnableConfigServer
@SpringBootApplication
public class EurekaServiceApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServiceApplication.class, args);
}
}
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는 설정이 완료되었다.
Client도 Server만큼 설정이 간단하다.
implementation 'org.springframework.cloud:spring-cloud-starter-eureka-client'
메인 클래스에 @EnableEurekaClient
어노테이션을 추가한다.
@EnableEurekaClient
@SpringBootApplication
public class UserServiceApplication {
public static void main(String[] args) {
SpringApplication.run(UserServiceApplication.class, args);
}
}
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 설정 값 조정을 통해 다양한 시도가 가능하지만 그것은 각자의 몫으로 남겨두겠다.
이제 서비스를 모두 모아서 정보들을 관리하고 있으니 쓰는 사람만 있으면 된다. 누가 쓸까? 다음 글을 확인해보자.
Spring Cloud Eureka를 사용중인데, 너무 잘 정리되어 있어서 좋네요 😀 잘보고 갑니다!