클라우드 네이티브 기술 (Cloud Native Technology)

개념

클라우드 네이티브 스택(the cloud native stack)이라고도 하는 클라우드 네이티브 기술은 클라우드 네이티브 애플리케이션을 구축하는 데 사용되는 기술이다. 조직이 퍼블릭, 프라이빗 및 하이브리드 클라우드와 같은 현대적이고 역동적인 환경에서 확장 가능한 애플리케이션을 구축 및 실행할 수 있도록 함으로써, ‘클라우드의 약속(promise of the cloud)‘을 지키고 클라우드 컴퓨팅 이점을 최대한 활용하게 한다. 이 기술은 클라우드 컴퓨팅 및 컨테이너, 서비스 메시(mesh), 마이크로서비스(microservices), 이뮤터블 인프라(immutable infrastructure)의 특징 및 기능(capabilities)을 활용하도록 처음부터 설계되었다.

다루는 문제

클라우드 네이티브 스택에는 다양한 기술 범주를 포함하며 다양한 문제를 해결한다. CNCF 클라우드 네이티브 랜드스케이프(Cloud Native Landscape)를 보면 얼마나 다양한 영역을 다루는지 알 수 있다. 그러나 전체적으로 보면, 기존 IT 운영 모델의 단점을 해결한다는 한 가지 주요 문제 해결을 목표로 한다. 이러한 도전적 문제(challenges)에는 확장 가능하고(creating scalable), 내결함성(fault-tolerant)이 있으며 자가 복구 가능한(self-healing) 애플리케이션을 생성하는 문제들뿐만 아니라, 상호 비효율적인 자원 활용 문제도 포함한다.

문제 해결 방식

각 기술들은 각자 매우 특정한 문제를 해결하는 반면, 그룹 형태의 클라우드 네이티브 기술은 탄력적(resilient)이고 관리 가능(manageable)하며 관찰 가능(observable)한 상호 느슨하게 결합된 시스템(loosely coupled systems)을 제공한다. 이 기술은 강건한(robust) 자동화와 결합하여, 엔지니어가 최소한의 노력으로 빈번하고 영향이 큰 변경을 예측 가능한 방식으로 수행할 수 있도록 한다. 클라우드 네이티브 시스템의 바람직한 특성은 클라우드 네이티브 스택을 통해서 더 쉽게 달성할 수 있다.