본문 바로가기
반응형

Service Mesh/Consul3

Consul 가용 영역 우선순위 라우팅(locality-aware routing) 일반적으로 Consul은 서비스 간 통신할 때 아래와 같이 동작한다.위 방식은 사용 가능한 모든 서비스에 트래픽을 분산시킬 수 있기 때문에 대부분의 환경에서는 문제가 되지 않는다.그러나 어떤 상황에서는 서비스 간 호출 대기 시간을 줄이거나, 가용 영역 간 데이터 전송 비용을 줄이기 위해 트래픽이 동일한 가용 영역 내에 유지되도록 하고 싶을 수 있다.  이 문제를 해결하기 위해 Consul 1.17 버전에서는 locality-aware routing에 대한 기능을 도입했다.  locality-aware routing 기능을 적용하면 아래와 같이 동작하게 된다.서비스 호출 시 트래픽을 같은 영역 내에 유지함으로써 서비스 간 대시 시간을 줄여 서비스 성능을 향상하고, 트래픽 비용을 절감할 수 있다.  같은 영.. 2024. 2. 7.
Consul Peering 환경에서 데이터 센터 간 Failover 구성 본 글은 이전에 작성된 [Consul Cluster Peering을 통한 데이터 센터 간 통신] 글에서 구성한 환경 기반으로 작성하는 글로 본 글의 실습을 진행하려면 이전 글의 환경 구성을 완료해야 한다. Failover란?Failover는 주요 서비스의 장애 발생 시, 자동으로 대체 서비스로 전환하는 과정을 의미한다. 이는 예기치 못한 데이터 센터 장애에 서비스의 중단 시간을 최소화하고, 서비스의 지속 가능성을 보장하기 위해 중요한 기능이다. 본 글에서 진행할 Failover 실습 시나리오는 아래와 같다. 위 시나리오를 구성하기 위한 Failover 방법으로는 두 가지가 있는데, ServiceResolver와 SamenessGroup방식이 있다. ServiceResolver: 서비스에서 upstream.. 2024. 2. 7.
Consul Cluster Peering을 통한 데이터 센터 간 통신 Cluster Peering이란?Consul에서 Cluster Peering은 독립적인 Consul 서버들을 서로 연결하여, 다양한 파티션과 데이터 센터에 배포된 서비스들이 통신할 수 있게 해주는 기능이다. 아래 그림은 HashiCorp Consul 문서에서 제공하는 Peering 아키텍처이다.그림 참조: https://developer.hashicorp.com/consul/docs/connect/cluster-peering위 그림에서는 Consul DC1과 Consul DC2가 Peering 연결 되어있고, 각 DC에 존재하는 Mesh Gateway를 통해 "Service A"에서 "Service D"로 통신할 수 있다는 걸 보여준다. Cluster Peering의 동작을 보면 Consul의 또 다른 .. 2024. 2. 7.
728x90
반응형