본문 바로가기
WIKI 기술 지식 베이스

Linkerd 개요

원문 보기 위키 갱신

Linkerd는 Kubernetes용 서비스 메시입니다. 코드를 전혀 바꾸지 않고도 런타임 디버깅, 옵저버빌리티(observability), 신뢰성, 보안 기능을 제공해서 서비스를 더 쉽고 안전하게 운영할 수 있게 도와줘요. 컨트롤 플레인과 초경량 Rust 마이크로 프록시로 구성되며, CNCF의 graduated 프로젝트로 완전한 오픈소스로 개발되고 있어요.

출처: Linkerd Overview

본문

Linkerd는 Kubernetes용 서비스 메시입니다. 코드를 전혀 바꾸지 않고도 런타임 디버깅, 옵저버빌리티(observability), 신뢰성, 보안 기능을 제공해서 서비스를 더 쉽고 안전하게 운영할 수 있게 도와줘요.

서비스 메시 모델에 대한 간단한 소개가 필요하다면 'The Service Mesh: What Every Software Engineer Needs to Know about the World's Most Over-Hyped Technology'를 읽어보길 추천해요.

Linkerd는 완전한 오픈소스이며 Apache v2 라이선스로 배포되고, Cloud Native Computing Foundation의 graduated 프로젝트예요. Linkerd는 Linkerd GitHub 조직에서 공개적으로 개발되고 있어요.

Linkerd는 *컨트롤 플레인(control plane)*과 *데이터 플레인(data plane)*이라는 두 가지 기본 구성요소로 이루어져 있어요. Kubernetes 클러스터에 Linkerd 컨트롤 플레인을 설치한 다음, 워크로드에 데이터 플레인을 추가하면(이걸 '메싱(meshing)' 또는 '인젝션(injecting)'이라고 해요) 서비스 메시의 마법이 시작돼요!

Linkerd는 몇 분 안에 시작할 수 있어요!

어떻게 동작하나요

Linkerd는 각 서비스 인스턴스 옆에 초경량의 투명한 '마이크로 프록시(micro-proxy)'를 설치하는 방식으로 동작해요. 이 프록시들은 서비스로 들어오고 나가는 모든 트래픽을 자동으로 처리해요. 투명하기 때문에, 이 프록시들은 매우 잘 계측된 아웃-오브-프로세스 네트워크 스택처럼 동작하며, 텔레메트리를 컨트롤 플레인으로 보내고 컨트롤 신호를 받아요. 이런 설계 덕분에 Linkerd는 과도한 지연을 유발하지 않으면서 서비스와 주고받는 트래픽을 측정하고 조작할 수 있어요.

가능한 한 작고 가볍고 안전하게 만들기 위해, Linkerd의 마이크로 프록시는 Rust로 작성되었고 Linkerd에 특화되어 있어요. 이 마이크로 프록시에 대해 더 알고 싶다면 'Under the hood of Linkerd's state-of-the-art Rust proxy, Linkerd2-proxy' 블로그 글을 참고해요. (Linkerd가 왜 Envoy를 안 쓰는지 궁금하다면 'Why Linkerd doesn't use Envoy' 블로그 글에서 그 이유를 확인할 수 있어요.)

Linkerd 받기

Linkerd는 다양한 패키지와 채널로 제공돼요. 자세한 내용은 Linkerd Releases 페이지를 확인해 보세요.

다음 단계

몇 분 안에 Linkerd를 시작해 보거나, Linkerd의 구성요소와 이들이 어떻게 연결되는지 더 자세히 알고 싶다면 아키텍처 문서를 확인해 보세요.

더 알아보기 (Learn more)