티스토리 뷰
istio란 Service간의 연결을 proxing이라는 방법으로 제어하는 오픈소스소프트웨어입니다.
1. WHY istio ?
- Service의 Micro화로 인해 service의 양과 상호 연결의 복잡도가 증가하여 Service들을 효율적으로 관리할 필요가 발생
- Service Mesh란? Service를 발견->연결->모니터링하는것을 말합니다.
- istio의 탄생 배경
-> netflix가 service mesh 오픈소스 공개하였으나 사용하기 매우 복잡
-> java spring framework으로 추상화하여 사용하기 쉽게 만듬. 그러나 java만 적용 가능.
-> Software계층이 아닌 infra계층에서 service mesh를 해결하려는 시도
즉, network layer에서 service간의 연결 문제를 해결함. 각 Service마다 proxy를 만들고 proxy를 통해 Service 연결 제어
-> Service가 많아 질수록 proxy에 연결 설정을 하는 것이 복잡해짐
-> Control plane등장: proxy간의 구성설정을 저장하고 proxy에 전달하는 proxy 통제 그룹
(Data plane: service간 트래픽 제어를 하는 proxy그룹)
- Data plane을 통제하여 service 탐색, 연결, 모니터링을 하는 OSS가 istio이다.
- Envoy proxy: istio가 사용하는 proxy S/W - https://arisu1000.tistory.com/27864
- Lyft사가 개발한 cloud전용 L7 proxy
- Architecture: 수신->처리->분배
- Listener: Request 수신
- Filter: Request 처리(압축, routing제어)
- Cluster: 서비스 분배
2. Istio의 기능: Connect, Secure, Control, Observe services
Service간의 로드밸런싱 및 Traffic 제어
활용예)- A/B테스팅, Canary배포- Timeout, Circuit breaker, Retries
Service 인증 /권한 제어 및 통신암호화(TLS) 기본 제공
제반 정책 관리
활용예)
- 유량제어
- 라우팅정책: 접근user, device등에 따른 service 연결
로깅 및 메트릭 수집
3. Istio Architecture
- Data plain : service mesh의 수행 그룹
- Envoy proxy: Service간 In/Outbound 트래픽을 중계하는 proxy
- 각 Service마다 Envoy proxy가 1:1로 sidecar루 구성되어 트래픽을 제어함
- Control plain : Data plain 제어
- Mixer: 서비스 라우팅 정책 관리와 모니터링 수행
- Pilot: End Point 관리, 로드밸런싱, 트래픽 제어
- Service discovery: envoy에게 service endpoint(IP,PORT) 제공
- 로드밸런싱(A/B테스팅, Canary배포): service 호출 경로 통제 제공
- 트래픽제어:Service resiliency(타임아웃, circuit breaker, 재시도) 제공
- Gallery: 구성 정보를 수집, 처리, 배포하는 컴포넌트
- Citadel: 인증/인가 및 인증서 관리
- Authentication & Authorization
- credential(인증서) 관리
### 용어참고
- envoy: 사절, 외교관->cloud용 proxy툴
- gRPC(google Remote Procedure Call): 구글이 만든 gRPC
- telemetry: 원격측정[법] -> Metric 집계 기능
- resiliency: 탄력, 회복력, 탄성 -> 안정적 Service 보장 기능
- citadel: 성,성채,거점
- credential: 신용정보
'Cloud > istio' 카테고리의 다른 글
05. Traffic Management: 서비스 Routing (0) | 2020.03.10 |
---|---|
04. Getting started (0) | 2020.03.06 |
99. Trouble shooting (0) | 2020.03.03 |
03. istio sidecar injection (0) | 2020.03.03 |
02. istio 설치 (0) | 2020.03.03 |
- Total
- Today
- Yesterday
- 분초사회
- SAGA
- 버라이어티가격
- agile
- AXON
- API Composition
- 디토소비
- Event Sourcing
- CQRS
- 돌봄경제
- 마이크로서비스 패턴
- 도파밍
- 마이크로서비스
- 요즘남편 없던아빠
- 스포티파이
- spotify
- 호모프롬프트
- 육각형인간
- micro service
- 애자일
- 스핀프로젝트
- 리퀴드폴리탄
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |