Lionel Blog

The road is under your feet, the heart looks to the distance

Istio v1alpha3 라우팅 API 소개

Istio v1alpha3 라우팅 API 및 설계 원칙 소개

Istio 0.8 릴리스 발표

Istio의 어린이날 선물

6월 1일 아침, Istio 커뮤니티는 0.8 릴리스를 발표했습니다. 일반적인 버그 수정 및 성능 개선 외에, 이 어린이날 선물에는 어떤 기대할 만한 내용이 있을까요? 함께 살펴보겠습니다.

Istio 사이드카 자동 주입 원리

Kubernetes 웹훅 확장 메커니즘 분석

Kubernetes 1.9 버전은 Admission Webhook(웹 콜백) 확장 메커니즘을 도입했습니다. 웹훅을 통해 개발자는 Kubernetes API 서버의 기능을 매우 유연하게 확장하여 API 서버가 리소스를 생성할 때 리소스를 검증하거나 수정할 수 있습니다. Istio 0.7 버전은 Kubernetes 웹훅을 활용하여 사이드카 자동 주입을 구현했습니다.

마이크로서비스 아키텍처의 인프라: 서비스 메시와 Istio에 대해 이야기하다

서비스 메시 패턴 및 Istio 오픈 소스 프로젝트 소개

아키텍처 패턴으로서 마이크로서비스는 복잡한 시스템을 수십에서 수백 개의 작은 서비스로 분할하며, 각 서비스는 독립적인 비즈니스 로직을 구현합니다. 이러한 작은 서비스는 소규모 소프트웨어 엔지니어링 팀이 이해하고 수정하기 쉽고, 언어 및 프레임워크 선택의 유연성을 제공하며, 애플리케이션 개발 및 출시 시간을 단축하고, 다양한 워크로드 및 리소스 요구 사항에 따라 서비스를 독립적으로 확장/축소할 수 있는 이점을 제공합니다. 반면에 애플리케이션이 여러 마이크로서비스 프로세스로 분할되면 프로세스 내 메서드 호출이 프로세스 간 원격 호출로 변경됩니다. 이는 수많은 서비스의 연결, 관리 및 모니터링의 복잡성을 야기합니다. 이 문서에서는 서비스 메시 패턴이 마이크로서비스 아키텍처의 이러한 과제를 어떻게 해결하는지, 그리고 서비스 메시의 대표적인 오픈 소스 프로젝트인 Istio를 소개합니다.

Nginx 오픈소스 서비스 메시 컴포넌트 Nginmesh 설치 가이드

Nginmesh는 Istio 서비스 메시 플랫폼의 데이터 플레인 프록시로 사용되는 NGINX의 오픈소스 서비스 메시 프로젝트입니다. 이는 7계층 로드 밸런싱 및 서비스 라우팅 기능을 제공하며, Istio와 사이드카로 통합되어 '표준적이고 안정적이며 안전한 방식'으로 서비스 간 통신을 용이하게 하는 것을 목표로 합니다. Nginmesh는 연말에 0.2 및 0.3 버전을 연속으로 출시하여 서비스 디스커버리, 요청 전달, 라우팅 규칙, 성능 지표 수집 등의 기능을 제공합니다. 이 문서에서는 kubeadm을 사용하여 Kubernetes 클러스터를 설치하고 Nginmesh 사이드카를 배포하는 방법을 설명합니다.

Istio를 이용한 카나리 릴리스(Canary Release) 구현

사용자에게 영향을 주지 않는 원활한 서비스 업그레이드

애플리케이션이 출시된 후, 운영팀이 직면하는 큰 과제 중 하나는 기존 서비스에 영향을 주지 않으면서 업그레이드를 수행하는 방법입니다. 이 문서에서는 Istio를 사용하여 애플리케이션의 카나리 릴리스를 구현하는 방법을 소개합니다.

Istio를 사용하여 애플리케이션 트래픽 전환 구현

  "이 문서는 Istio 공식 문서를 번역한 것입니다."

이 작업은 애플리케이션 트래픽을 이전 버전의 서비스에서 새 버전으로 점진적으로 마이그레이션하는 방법을 보여줍니다. Istio를 통해 다양한 가중치 규칙(10%, 20%, ··· 100%)을 사용하여 트래픽을 이전 버전 서비스에서 새 버전 서비스로 원활하게 마이그레이션할 수 있습니다.

Istio 및 Bookinfo 예제 프로그램 설치 및 사용 후기

Istio 및 Bookinfo 예제 프로그램을 처음부터 직접 구축하는 방법

Istio는 Google, IBM, Lyft에서 개발한 서비스 메시(Service Mesh) 오픈 소스 프로젝트로, Google이 Kubernetes에 이어 내놓은 또 하나의 걸작입니다. 이 글에서는 베어 메탈에서 Istio 및 Bookinfo 예제 프로그램을 처음부터 구축하는 방법을 시연합니다.