개요
CNCF에 들어가면, 여러 기술들이 일목요연하게 카테고리와 함께 분류되어있는 모습을 볼 수 있다.
Cloud Native Computing Foundation (CNCF): 클라우드 네이티브 애플리케이션의 발전을 지원하는 오픈 소스 소프트웨어 재단. 리눅스 재단(Linux Foundation)의 일부로, 클라우드 네이티브 기술의 생태계를 조성하고 관리.
오늘은 클라우드 생태계에서 카테고리별로 대중적인 기술들에 대해 소개하려고 한다.
(클라우드에 관한건 문외한이라 정말, 처음보는 것 투성이였다. 알고있던건 도커, 쿠버네티스, gRPC, argo와 각종 DB들 정도..)
1. App Definition and Development(애플리케이션 정의 및 개발)

역할: 클라우드 네이티브 애플리케이션을 정의하고 개발하는 데 중점을 두며, 빌드, 패키징 및 애플리케이션 라이프사이클 관리를 포함한다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Application & Image Build | Helm | 쿠버네티스 애플리케이션의 패키지 관리자로, 쉽게 애플리케이션을 관리할 수 있다. |
Backstage | 개발자 포털을 구축하는 플랫폼으로, 서비스와 인프라를 쉽게 관리할 수 있게 한다. | |
Continuous Integration & Delivery | Argo | 쿠버네티스에서 지속적인 전달 워크플로우를 실행하고 관리하는 오픈 소스 도구 모음이다. |
Flux | GitOps에 중점을 둔 쿠버네티스의 지속적이고 점진적인 전달 솔루션이다. | |
Database | TiKV | 수평으로 확장 가능한 분산 키-값 데이터베이스이다. |
Vitess | MySQL의 수평 확장을 위한 데이터베이스 클러스터링 시스템이다. | |
Streaming & Messaging | CloudEvents | 이벤트 데이터를 공통 방식으로 설명하는 사양이다. |
NATS | 모던 분산 시스템을 위한 메시징 서비스를 제공하는 연결 기술이다. |
2. Orchestration & Management / Runtime(오케스트레이션 및 관리 / 런타임)

역할: 컨테이너화된 애플리케이션을 오케스트레이션하고 관리하여 분산 환경에서 효율적으로 실행되도록 한다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Scheduling & Orchestration | Kubernetes | 애플리케이션 컨테이너의 배포, 확장 및 운영을 자동화하는 오픈 소스 플랫폼이다. |
KEDA | 이벤트 기반의 애플리케이션을 메트릭 기반으로 자동 확장하는 쿠버네티스 오토스케일러이다. | |
Service Mesh | Istio | 마이크로서비스 간의 데이터 공유를 제어하는 서비스 메쉬이다. |
Linkerd | 쿠버네티스를 위한 경량 서비스 메쉬로, 관측성, 보안 및 신뢰성 기능을 제공한다. | |
Remote Prodcedure Call | gRPC | 고성능, 범용 오픈 소스 RPC 프레임워크로, 데이터 센터와 모바일 앱의 커뮤니케이션을 최적화한다. |
Apache Thrift | 다양한 언어 간의 통신을 가능하게 하는 소프트웨어 프레임워크이다. | |
Cloud Native Storage | Rook | 여러 스토리지 솔루션의 관리를 자동화하는 쿠버네티스 스토리지 오케스트레이터이다. |
Longhorn | 쿠버네티스를 위한 분산 블록 스토리지 시스템이다. | |
Cloud Native Network | Cilium | eBPF를 사용하여 네트워킹, 보안 및 관측성을 제공하는 클라우드 네이티브 환경용 솔루션이다. |
CNI | 리눅스 컨테이너의 네트워크 인터페이스를 구성하기 위한 네트워크 플러그인 라이브러리이다. | |
Container Runtime | containerd | 호스트 시스템에서 컨테이너의 전체 라이프사이클을 관리하는 컨테이너 런타임이다. |
cri-o | 쿠버네티스를 위해 설계된 경량 컨테이너 런타임이다. |
3. Provisioning(프로비저닝)

역할: 클라우드 환경에서 인프라와 애플리케이션의 초기 설정과 구성을 담당한다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Security & Compliance | Falco | 애플리케이션의 비정상적 동작을 감지하는 클라우드 네이티브 런타임 보안 도구이다. |
OPA (Open Policy Agent) | 통합적이고 상황 인식적인 정책 집행을 가능하게 하는 범용 정책 엔진이다. | |
Container Registry | Harbor | 아티팩트를 보호하는 정책과 역할 기반 접근 제어를 제공하는 오픈 소스 레지스트리이다. |
Dragonfly | 컨테이너 이미지 배포를 관리하는 오픈 소스 프로젝트이다. | |
Automation & Configuration | Cloud Custodian | 클라우드 환경을 관리하는 규칙 엔진으로, 비용 최적화, 보안 및 컴플라이언스 자동화를 가능하게 한다. |
KubeEdge | 쿠버네티스를 클라우드에서 엣지 컴퓨팅 환경으로 확장한다. | |
Key Management | SPIFFE | 서비스 간의 신뢰 관계를 관리하고 보호하기 위한 오픈 소스 프레임워크이다. |
SPIRE | SPIFFE를 구현하는 소프트웨어로, 서비스 간 신뢰 관계를 설정한다. |
4. Observability and Analysis(관측 및 분석)

역할: 애플리케이션 및 인프라의 성능과 상태를 모니터링, 로깅 및 분석하는 데 중점을 둔다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Observability | Prometheus | 주로 메트릭 수집 및 쿼리를 위한 모니터링 시스템 및 시계열 데이터베이스이다. |
Fluentd | 통합 로깅 레이어를 위한 오픈 소스 데이터 수집기로, 로그를 수집, 처리 및 전달할 수 있다. | |
Chaos Engineering | Chaos Mesh | 쿠버네티스 클러스터의 회복력을 테스트하는 클라우드 네이티브 혼돈 공학 플랫폼이다. |
Litmus | 애플리케이션의 회복력을 테스트하는 클라우드 네이티브 혼돈 공학 도구 모음이다. | |
Continuous Optimization | Turbonomic | 애플리케이션 성능을 최적화하고 비용을 관리하는 플랫폼이다. |
Kubecost | 쿠버네티스 클러스터의 비용을 관리하고 최적화하는 도구이다. | |
Feature Flagging | OpenFeature | 기능 플래그 관리를 위한 오픈 소스 표준이다. |
Split | 기능 플래그를 통해 애플리케이션 기능을 제어하고 실험할 수 있게 하는 도구이다. |
이러한 기술들은 현대 클라우드 네이티브 생태계의 핵심을 이루며, 분산 환경에서 애플리케이션 개발, 배포, 관리 및 모니터링을 위한 강력한 솔루션을 제공한다.
이 도구들을 활용하면 조직은 확장 가능하고 회복력이 뛰어난 효율적인 클라우드 네이티브 애플리케이션을 구축할 수 있다.
개요
CNCF에 들어가면, 여러 기술들이 일목요연하게 카테고리와 함께 분류되어있는 모습을 볼 수 있다.
Cloud Native Computing Foundation (CNCF): 클라우드 네이티브 애플리케이션의 발전을 지원하는 오픈 소스 소프트웨어 재단. 리눅스 재단(Linux Foundation)의 일부로, 클라우드 네이티브 기술의 생태계를 조성하고 관리.
오늘은 클라우드 생태계에서 카테고리별로 대중적인 기술들에 대해 소개하려고 한다.
(클라우드에 관한건 문외한이라 정말, 처음보는 것 투성이였다. 알고있던건 도커, 쿠버네티스, gRPC, argo와 각종 DB들 정도..)
1. App Definition and Development(애플리케이션 정의 및 개발)

역할: 클라우드 네이티브 애플리케이션을 정의하고 개발하는 데 중점을 두며, 빌드, 패키징 및 애플리케이션 라이프사이클 관리를 포함한다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Application & Image Build | Helm | 쿠버네티스 애플리케이션의 패키지 관리자로, 쉽게 애플리케이션을 관리할 수 있다. |
Backstage | 개발자 포털을 구축하는 플랫폼으로, 서비스와 인프라를 쉽게 관리할 수 있게 한다. | |
Continuous Integration & Delivery | Argo | 쿠버네티스에서 지속적인 전달 워크플로우를 실행하고 관리하는 오픈 소스 도구 모음이다. |
Flux | GitOps에 중점을 둔 쿠버네티스의 지속적이고 점진적인 전달 솔루션이다. | |
Database | TiKV | 수평으로 확장 가능한 분산 키-값 데이터베이스이다. |
Vitess | MySQL의 수평 확장을 위한 데이터베이스 클러스터링 시스템이다. | |
Streaming & Messaging | CloudEvents | 이벤트 데이터를 공통 방식으로 설명하는 사양이다. |
NATS | 모던 분산 시스템을 위한 메시징 서비스를 제공하는 연결 기술이다. |
2. Orchestration & Management / Runtime(오케스트레이션 및 관리 / 런타임)

역할: 컨테이너화된 애플리케이션을 오케스트레이션하고 관리하여 분산 환경에서 효율적으로 실행되도록 한다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Scheduling & Orchestration | Kubernetes | 애플리케이션 컨테이너의 배포, 확장 및 운영을 자동화하는 오픈 소스 플랫폼이다. |
KEDA | 이벤트 기반의 애플리케이션을 메트릭 기반으로 자동 확장하는 쿠버네티스 오토스케일러이다. | |
Service Mesh | Istio | 마이크로서비스 간의 데이터 공유를 제어하는 서비스 메쉬이다. |
Linkerd | 쿠버네티스를 위한 경량 서비스 메쉬로, 관측성, 보안 및 신뢰성 기능을 제공한다. | |
Remote Prodcedure Call | gRPC | 고성능, 범용 오픈 소스 RPC 프레임워크로, 데이터 센터와 모바일 앱의 커뮤니케이션을 최적화한다. |
Apache Thrift | 다양한 언어 간의 통신을 가능하게 하는 소프트웨어 프레임워크이다. | |
Cloud Native Storage | Rook | 여러 스토리지 솔루션의 관리를 자동화하는 쿠버네티스 스토리지 오케스트레이터이다. |
Longhorn | 쿠버네티스를 위한 분산 블록 스토리지 시스템이다. | |
Cloud Native Network | Cilium | eBPF를 사용하여 네트워킹, 보안 및 관측성을 제공하는 클라우드 네이티브 환경용 솔루션이다. |
CNI | 리눅스 컨테이너의 네트워크 인터페이스를 구성하기 위한 네트워크 플러그인 라이브러리이다. | |
Container Runtime | containerd | 호스트 시스템에서 컨테이너의 전체 라이프사이클을 관리하는 컨테이너 런타임이다. |
cri-o | 쿠버네티스를 위해 설계된 경량 컨테이너 런타임이다. |
3. Provisioning(프로비저닝)

역할: 클라우드 환경에서 인프라와 애플리케이션의 초기 설정과 구성을 담당한다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Security & Compliance | Falco | 애플리케이션의 비정상적 동작을 감지하는 클라우드 네이티브 런타임 보안 도구이다. |
OPA (Open Policy Agent) | 통합적이고 상황 인식적인 정책 집행을 가능하게 하는 범용 정책 엔진이다. | |
Container Registry | Harbor | 아티팩트를 보호하는 정책과 역할 기반 접근 제어를 제공하는 오픈 소스 레지스트리이다. |
Dragonfly | 컨테이너 이미지 배포를 관리하는 오픈 소스 프로젝트이다. | |
Automation & Configuration | Cloud Custodian | 클라우드 환경을 관리하는 규칙 엔진으로, 비용 최적화, 보안 및 컴플라이언스 자동화를 가능하게 한다. |
KubeEdge | 쿠버네티스를 클라우드에서 엣지 컴퓨팅 환경으로 확장한다. | |
Key Management | SPIFFE | 서비스 간의 신뢰 관계를 관리하고 보호하기 위한 오픈 소스 프레임워크이다. |
SPIRE | SPIFFE를 구현하는 소프트웨어로, 서비스 간 신뢰 관계를 설정한다. |
4. Observability and Analysis(관측 및 분석)

역할: 애플리케이션 및 인프라의 성능과 상태를 모니터링, 로깅 및 분석하는 데 중점을 둔다.
하위 분류 및 주요 기술:
하위 분류 | 기술 | 설명 |
---|---|---|
Observability | Prometheus | 주로 메트릭 수집 및 쿼리를 위한 모니터링 시스템 및 시계열 데이터베이스이다. |
Fluentd | 통합 로깅 레이어를 위한 오픈 소스 데이터 수집기로, 로그를 수집, 처리 및 전달할 수 있다. | |
Chaos Engineering | Chaos Mesh | 쿠버네티스 클러스터의 회복력을 테스트하는 클라우드 네이티브 혼돈 공학 플랫폼이다. |
Litmus | 애플리케이션의 회복력을 테스트하는 클라우드 네이티브 혼돈 공학 도구 모음이다. | |
Continuous Optimization | Turbonomic | 애플리케이션 성능을 최적화하고 비용을 관리하는 플랫폼이다. |
Kubecost | 쿠버네티스 클러스터의 비용을 관리하고 최적화하는 도구이다. | |
Feature Flagging | OpenFeature | 기능 플래그 관리를 위한 오픈 소스 표준이다. |
Split | 기능 플래그를 통해 애플리케이션 기능을 제어하고 실험할 수 있게 하는 도구이다. |
이러한 기술들은 현대 클라우드 네이티브 생태계의 핵심을 이루며, 분산 환경에서 애플리케이션 개발, 배포, 관리 및 모니터링을 위한 강력한 솔루션을 제공한다.
이 도구들을 활용하면 조직은 확장 가능하고 회복력이 뛰어난 효율적인 클라우드 네이티브 애플리케이션을 구축할 수 있다.