2018/11/23 3

Istio #3- Istio에 대한 소개

ISTIO 조대협 (http://bcho.tistory.com) Envoy를 이용해서 서비스 매쉬를 구현하기 위해서는 Envoy로 구성된 데이타 플레인을 컨트롤할 솔루션이 필요하다. Envoy를 데이타 플레인으로 사용하고 이를 컨트롤 해주는 오픈 소스 솔루션이 Istio 이다. (http://istio.io)아키텍쳐먼저 Istio의 구조를 보자 출처 : https://istio.io/docs/concepts/what-is-istio/데이타 플레인데이타 플레인은 envoy를 서비스 옆에 붙여서 사이드카 형식으로 배포를 해서, 서비스로 들어오고 나가는 트래픽을 envoy를 통해서 통제하게 된다. envoy는 서비스에서 서비스로 호출할때 상대편 서비스의 IP 주소를 알아야 하는데, 이를 서비스 디스커버리 (S..

Istio #2 - Envoy proxy

Istio #2 - Envoy Proxy 조대협 (http://bcho.tistory.com) 그럼 앞에서 설명한 서비스 매쉬의 구조를 구현한 Istio를 살펴보기전에, Istio에 사용되는 envoy 프록시에 대해서 먼저 알아보자. (이 글은 예전에 포스팅한 내용이지만, Istio 글의 흐름상 다시 포스팅 한다.) Envoy Proxy 먼저 istio에 사용되는 envory proxy를 살펴보자. Envoy 프록시는 Lyft사에서 개발되었으면 오픈소스로 공개되었다. 기존 프록시 L4기능 뿐 아니라 L7 기능도 지원하면서 HTTP 뿐아니라 HTTP 2.0,TCP,gRPC까지 다양한 프로토콜을 지원한다. 성능 지표를 보면 아래 Twillo에서 2017년에 테스트 한 자료를 참고할만 한데, (원본 https..

gRPC Channel

gRPC Channel, Stream 개념gRPC ChannelgRPC는 HTTP 2.0 기반에 HTTP Streaming을 이용해서 데이타를 보낸다. HTTP 2.0의 경우에는 커넥션을 계속 유지하는 메커니즘이기 때문에, gRPC는 보통 하나의 Connection을 맺어놓고, 이 Connection에 계속 메세지를 보내는 방식을 이용하는데, 이 Connection (TCP Connection)을 Channel이라고 한다. Stream하나의 RPC 콜을 호출할때 이 호출을 Stream 이라고 한다. RPC 호출이 시작되면, Stream이 시작되었다가 종료되면 당연히 Stream이 닫힌다. Stream의 동시성그러면 하나의 Channel에서 Stream을 호출하는데, 만약에 Stream의 길이가 길다면 다..

프로그래밍 2018.11.23