Istio 2

Istio

[Istio?] Service Mesh를 구현할 수 있는 오픈소스 솔루션. 서비스에 경량화 프록시(Proxy)를 사이드카(sidecar) 방식으로 배치하여 서비스 간 통신을 제어. Istio를 사용하면 Application 코드의 변경없이 로드밸런싱, 서비스간 인증, 모니터링 등을 적용하여 마이크로 서비스를 쉽게 관리할 수 있다. 마이크로서비스간의 모든 네트워크 통신을 담당하는 프록시인 Envoy를 서비스마다 배포한다음 프록시들의 설정값을 저장하고 관리하는 컨트롤러 역할을 한다. 각각의 마이크로 서비스에 사이드카 형태로 배포된 envoy프록시를 Data Plane이라고하며, Data Plane을 컨트롤하는 부분을 Control Plane이라고 한다. [Istio 구조] Data Plane: 각 서비스에 ..

Kubernetes 2023.01.31

Service Mesh

[개요] Service Mesh 아키텍쳐는 MicroService 아키텍쳐와 더불어 활발하게 언급되고 있는 아키텍쳐이다. 왜 Service Mesh 아키텍쳐가 무엇인지 그리고 왜 활발하게 언급되고있는지, 구현체인 Istio에 대해서도 정리한다. [Service Mesh?] 마이크로서비스 구조를 띄는 시스템의 통신이 Mesh 네트워크의 형태를 띄는 것에 빗대어 Service Mesh로 명명되었다고 한다. 애플리케이션 계층이 아닌 인프라 플랫폼 계층에 특정 모듈을 삽입하여 애플리케이션에 대한 라우팅, 보안 등의 기능을 추가하는 것. 마이크로서비스에서 각 서비스들이 상호 통신을 할 때 코딩수준에서 통신방법을 정의해서 사용하는 방식을 많이 사용하였다. 하지만 통신이 복잡해지기 시작하면 이처럼 직접 구현하는 것이..

Kubernetes 2023.01.31