service mesh 3

Istio - (5) Destination Rule 응용

Destination Rule 지금까지 실습 과정 중 Destination Rule은 Pod의 Label을 통해 서비스의 Subset을 분류하는데만 사용하였다. 하지만 Destination Rule을 설정하여 다음과 같이 더욱 정교한 트래픽 관리가 가능하다. Load balancing(round robin, random, least connection) Rate limiting(connection pool 크기 조절) Circuit breaker(outlier detection) Load balancing DestinationRule이 정의되지 않은 서비스는 K8s Service의 L4 Load Balance가 적용된다. Round Robin DestinationRule에 trafficPolicy 항목을..

Service Mesh 2021.04.06

Istio - (2) Istio 설치(EKS)

AWS EKS EKS는 AWS에서 제공하는 'K8s as a Service'로 사용자가 쉽게 K8s 클러스터를 생성할 수 있다. 구체적인 개념과 사용법은 필자가 작성해놓은 페이지들이 있으므로 참고하기 바란다. 따라서 EC2 SSH Key 생성 및 awscli, eksctl, kubectl 등의 설치 과정은 생략하도록 하겠다. Amazon EKS Tutorial - Part.1 Kubernetes on AWS AWS에서 Kubernetes 클러스터를 구축 및 운영하는 방법은 다양하다. EC2 인스턴스로부터 k8s를 직접 설정하거나 Kops를 통해 구축을 자동화하되 사용자가 직접 운영하는 방식, 그리고 EKS cwal.tistory.com EKS 클러스터 생성 아래 명령어를 실행 후 15~20분 정도 기다리..

Service Mesh 2021.03.27

Istio - (1) Introduction

Service Mesh Service Mesh는 Application을 구성하는 Microservice간의 통신을 제어하거나, 추적할 수 있는 별도의 Infrastructure Layer를 의미한다. L7에서 HTTP URL Path, Header 등을 기반으로 동작하며, 보통은 Proxy를 비즈니스 로직을 수행중인 Microservice 옆에 Sidecar로 붙여서 Network Traffic을 대신 전달(routing)하는 방식으로 구성한다. 그렇다면 왜 Service Mesh가 필요할까? 기존 Monolithic Application의 경우 로그 파일을 직접 확인하거나, tcpdump 등으로 패킷 내용을 추적하여 트러블슈팅이 가능했다. 또한 Process, Thread 간의 데이터 전달은 인스턴스 ..

Service Mesh 2021.03.27