- 데이터 공유 제어 방법
- Application에 구축된 전용 인프라 계층
- service간 통신을 추상화하여 안전하고, 빠르고, 신뢰할 수 있게 만ema
- 추상화를 통해 복잡한 내부 네트워크 제어 및 추적
- 내부 네트워크 관련 로직 추가함으로써 안정성, 신뢰성, 탄력성, 표준화, 가시성, 보안성 확보
- L7 network layer
Service Mesh의 기능
- Service Discovery
- Load Balancing
- Dynamic Request Routing
- Circuit Breaking
- Retry and Timeout
- TLS
- Distributed Tracing
- metrics 수집
Sidecar Pattern
- 기본 App 외 추가 기능을 별도의 App으로 구현하고 이를 동일한 파드 내에 배치
- 기본 App 로직 수정하지 않고도 추가 기능 수행 가능
- 기본 App과 리소스 공유하여 metrics 수집 및 proxy 동작 가능
SOA의 ESB와 Service Mesh와의 차이
- Service Oriented Architecture는 비즈니스 로직에 집중하고 도메인 중심으로 서비스를 분화.
- SOA는 분산 처리에서 발생하는 문제를 해결하기 위해 Enterprise Service Bus를 도입.
- 분산처리 환경에서의 문제를 기본 App 외부에서 해결하는 점은 비슷
- ESB는 중앙집중형, 공통 기능의 비대화에 따른 문제를 해소 X
Service Mesh의 장단점
장점
- 기능을 App 외부에 구현하며, 재사용 가능
- MSA 도입하며 발생하는 런타임의 복잡성을 해결
- App개발 시 언어와 미들웨어 등에 종속성 제거
단점
- 시스템의 런타임 인스턴스 수가 크게 증가(최소 2배수)
- 서비스 간 통신에 네트워크 레이어가 추가
Reference
'Cloud Architecture' 카테고리의 다른 글
Control Tower Troubleshooting (0) | 2022.11.11 |
---|---|
L4와 L7 (0) | 2022.06.16 |
CAP 이론, ACID, Eventual Consistency VS Strong Consistency (0) | 2022.06.16 |
Proxy / Forward Proxy / Reverse Proxy (0) | 2022.06.15 |
TCP, UDP, TCP Window Size (0) | 2022.06.15 |