쿠버네티스 기대효과 자료 다운로드 – 기획자/운영자/개발자 측면
쿠버네티스 개념 뽀개기와 데모 그리고 무료 체험 신청
최근 코로나19로 인한 비대면 솔루션의 수요가 늘면서, 클라우드 네이티브 앱 개발과 클라우드 네이티브 컴퓨팅 환경에 대한 요구사항들이 급증하고 있습니다.
그러나 COVID-19라는 재난으로 인해 디지털 트랜스포메이션, 클라우드 전환 등은 반강제적으로 그리고 빠르게 산업에 침투하고 있습니다.
고객 직접 대면이 어려운 지금, 비대면으로 고객들이 PoC(Proof of Concept)를 체험할 수 있도록 그 활용 가이드를 제안해드립니다.
디지털 트랜스포메이션 과 쿠버네티스
디지털 트랜스포메이션은 디지털 기술을 이용한 비즈니스 혁신 방식을 뜻합니다.
비즈니스 트렌드 , 전략, 사례, 솔루션, 서비스, 플랫폼의 혁신을 포함합니다.
최근에는 디지털 서비스와 소프트웨어를 신속히 제공할 수 있는 기업의 역량이 비즈니스의 성공과 실패를 좌우합니다.
가상화 기술은 기존의 환경을 단순하게 클라우드로 전환하는 데는 효과적일 수 있지만,
디지털 트랜스포케이션에서 요구하는 클라우드의 다양한 장점들을 충분히 활용하는데는 한계가 있습니다.
클라우드의 중심이 인프라에서 플랫폼으로 이동하면서 컨테이너 기술과 쿠버네티스(Kubernetes)가 대세로 자리 잡았 습니다.
쿠버네티스와 컨테이너 그리고 마이크로서비스 아키텍처로 대표되는 클라우드 네이티브 표준 기술은 관리자 개입 없이 성능과 이벤트에 자동 대응하고, 성능에 최적화된 환경을 정해진 룰에 따라 자동으로 유지합니다.
단순 IaaS 형태의 클라우드가 아닌 진정한 클라우도 구축과 운영 비용의 절감을 위해서는 컨테이너 기술을 기반으로 해야 합니다.
IT 기획자, 개발자 그리고 운영자 측면에서 쿠버네티스가 주면 장점을 살펴 보겠습니다.
컨테이너 기술의 장점
가상 머신은 하드웨어 스택을 가상화합니다. 컨테이너는 이와 달리 OS를 가상화하여 여러 개의 컨테이너를 OS 커널에서 직접 실행합니다. 컨테이너는 기존의 가상화 기술보다 훨씬 가볍게 동작하며, OS 커널을 공유하고, 시작 시간이나 종료 시간이 빠르고 , 메모리를 훨씬 적게 차지합니다.
컨테이너는 가상 머신과 마찬가지로 애플리케이션을 관련 라이브러리 및 종속 항목과 함께 패키지로 묶어 소프트웨어 서비스를 위한 환경을 분리할 수 있도록 해줍니다. 가상화 기술과 컨테이너 기술이 유사점은 여기까지입니다. 컨테이너를 사용하면 개발자와 IT 운영팀이 훨씬 작은 단위로 업무를 수행할 수 있어이점이 훨씬 많습니다.
역할 별로 살펴보는 쿠버네티스 도입의 이유들
기획자 측면에서 쿠버네티스 장점
기획자 측면의 장점 |
|
---|---|
특징 |
설명 |
디지털 트랜스포메이션 기반 구축 |
디지털트랜스 포메이션이 실현하려면 IT 서비스 개발과 개선 ‘속도’가 비즈니스 우위를 확보하기 위한 필수적인 조건 |
비용 절감 |
높은 시스템 자원 사용율에 따른 비용 절감 |
Guest OS 에 대한 라이선스 제거 |
|
Guest OS 유지보수비용 및 관리비용 제거 |
|
하이브리드 클라우드 실현 |
Private 클라우드 구축하여 Public 클라우드로 즉시 이전 가능 |
Private Cloud 와 Public Cloud 를 단일한 기술과 운영 방법으로 관리 |
|
컨테이너를 기반으로 하는 오픈소스이기 때문에 사용자들이 특정 업체에 종속되지 않고 클라우드의 환경들을 이전 |
|
DevOps 기반 |
컨테이너는 DevOps 빌드/테스트/배포 파이프라인을 간소화 |
개발자 측면에서 쿠버네티스 장점
개발자 측면의 장점 |
|
---|---|
특징 |
설명 |
효율적인 개발환경 구축 |
개발환경 구축 기간 단축 / OS가상화로 격리된 테스트 환경 구축 |
기존 가상화 대비 작은 시스템 리소스로 개발 환경 구축 |
|
배포 편이성 |
이미지를 통한 빌드, 배포 자동화 |
개발자 환경/테스트 환경/스테이징 환경/운영 환경에 대한 일관성 보장으로 장애 요인 제거와 장애 원인 파악 시간 단축 |
|
민첩한 개발 |
컨테이너를 통한 짧은 주기로 요구사항 정의와 릴리즈를 반복하는 Agile Development 지원 |
서비스 무정지 환경 제공 |
서비스 정지 없이 시스템 운영이 가능하여 배포시간과 횟수에 대한 제약이 없음 |
마이크로서비스 아키텍처 |
마이크로 서비스는 컨테이너로 구성하고 배포, 운영하는 것이 매우 유리 |
DevOps 기반 |
컨테이너는 DevOps 빌드/테스트/배포 파이프라인을 간소화 |
운영자 측면에서 쿠버네티스 장점
운영자 측면의 장점 |
|
---|---|
특징 |
설명 |
낮은 오버헤드와 빠른 시작 |
최소한의 CPU와 메모리 만 사용하여 비용절감과 부하가 작아 고성능 제공 |
Guest OS 가 없기 때문에 OS 부팅 없이 애플리케이션을 실행하여 빠른 시작 (호스트 OS 에서 프로세스로 실행) |
|
높은 이동성 ( Portability) |
Public Cloud (AWS, Azure, Google …)와 기업 내 에서 Linux 운영체제라면 어디서나 운영 및 이식이 용이함 |
구축 기간 단축 |
컨테이너 환경은 개발, 스테이징, 운영 환경을 단순한 복사로 구축하여 작업시간을 단축하고 일관성을 제공하여 환경에 의한 문제 원인 제거 |
장애 대응 |
배포, 시스템 유지보수, 장애 발생시 무정지 작업이 가능 |
컨터이너 이미지 단위로 배포하고 운영하기 때문에 장애시 전환 시간을 단축 |
|
이미지 형태의 배포로 환경 차이에 의한 장애원인 제거 |
|
클라우드 네이티브 운영 환경 실현 |
스케쥴링(Scheduling), 컨트롤링(Controlling) , 자가 복구(Self Healing), 오토 스케일링(Auto Scaling), 롤링 업데이트(Rolling Update) |
컨테이너 기술 소개
IT 분야에서 “컨테이너”도 일종의 박스의 의미이며, 물류분야에서 처럼 Portability (이동성) 을 실현하기 위해 만들어진 기술입니다.
이동성은 IT 시스템 (플랫폼 또는 인프라) 상에서 다른 IT 시스템으로 이동을 쉽게 허용하는 성질을 의미하는 것입니다.
가상화와 컨테이너의 비교
가상화는 개발측면이나 운영측면에서 자원 효율적으로 사용하고 관리하는 기술로서 널리 확산되었습니다. 다양한 OS 환경과 어플리케이션을 하나의 파일로 관리할 수 있는 “가상 머신 (VM)”은 손쉽게 이동할 수 있는 이식성을 제공해 주었습니다.
컨테이너는 하이퍼바이저와 Guest OS 없이 애플리케이션 운영환경을 제공하는 기술로서 앞서의 가상화 기술의 고질적인 문제점들을 해결하고 있습니다.