클라우드 네이티브

처음부터 끝까지 클라우드- 클라우드 네이티브 ( Cloud Native )

고객 요구 사항과 비즈니스 환경의 변화를 신속하게 파악하고 시장을 선도하기 위해 기술을 어떻게 활용해 갈 것인가는 IT 조직에게는 영원한 과제 입니다. 최근에는 변화의 주기가 짧아지고 바로 앞을 예측하기가  점점 어려워지고 있습니다.

그래서 IT 조직에게  강하게 요구되는 것이 ‘스피드’와 ‘유연성’ 입니다.

스피드와 유연성을 얻기위한 방법으로서 주목하는 키워드가 바로  “클라우드 네이티브” 입니다.

급변하는 비즈니스 환경에서 성공하려면 기업들은 애플리케이션 설계, 구축 그리고 운영하는 방식을 바꿔야 합니다. 클라우드 네이티브 애플리케이션 개발은 클라우드 컴퓨팅 기술을 기반으로 애플리케이션을 구축, 실행 및 개선하는 접근 방식입니다.

또한 기업이 비즈니스를 디지털화하기 위해 클라우드 네이티브를 도입하는 사례가 확산하고 있습니다.

디지털 트랜스포메인션 과 컨테이너

디지털 트랜스포메이션 소개

디지털 트랜스포메이션이란 디지털 기술의 급격한 발전으로 인한 혁신적인 발전 방식을 뜻합니다. 즉, 비즈니스 동향, 전략, 사례, 솔루션, 서비스, 플랫폼의 혁신을 포함합니다. 기업은 언제나 기술 변화에 맞춰 진화해야 했습니다. 그러나 주로 “디지털”의 확장 가능한 속성 또는 고객 서비스 방식을 개선하기 위한 새로운 기능의 사용 방법 때문에 오늘날 그러한 변화는 점점 빨라지고 있습니다. 급속한 변화 속도로 인해 반복적이고 끊임없는 혁신, 즉 디지털 트랜스포메이션은 필수 요소가 되었습니다.

클라우드 네이티브 ( Cloud Native ) 란?

클라우드 네이티브 는 클라우드 컴퓨팅 모델을 사용하는 것을 전제로 설계된 시스템과 서비스 입니다.

처음부터 클라우드에서 운영하는 것을 전제로 설계된 시스템이 등장하면서 기존 시스템들과의 구분을 위해 “클라우드 네이티브”라는 용어를 사용하고 있습니다.

그러나 이러한 이점을 모두 활용하기 위해서는 새로운 형태의 애플리케이션 개발이 필요합니다.

Cloud Native 개발이 바로 이에 해당되며, 애플리케이션을 신속하게 구축하고 업데이트하면서 품질을 개선하고 위험을 낮추는 접근 방식입니다. 구체적으로 말하자면, 이 접근 방식을 활용하여 대응 능력, 확장성, 내결함성을 갖춘 애플리케이션을 퍼블릭, 프라이빗 또는 하이브리드 클라우드 환경이든 어디에나 구축할 수 있습니다.

“Cloud Native ”의 핵심은 애플리케이션을 어떻게 만들고 배포하는지에 있으며 기업내 데이터센터와 달리 애플리케이션을 퍼블릭 클라우드에 배포하는 것을 의미합니다.

다시 말해, 클라우드 네이티브 애플리케이션 개발은 새로운 애플리케이션을 구축하고, 기존 애플리케이션을 최적화하고, 모든 환경을 연결하는 작업을 가속화할 수 있는 방법입니다. 목표는 비즈니스 요구 사항의 변화 속도에 맞춰 사용자들이 원하는 애플리케이션을 제공하는 것입니다.

CNCF 에서 정의하는 Cloud Native 는 ?

컨테이너화되는 오픈소스 소프트웨어 스택을 사용하는 것을 의미합니다.

애플리케이션의 각 부분은 자체 컨테이너에 패키징되고 동적 오케스트레이션을 통해 각 부분이 적극적으로 스케줄링 및 관리되어 리소스 사용률을 최적화하며, 마이크로서비스 지향성을 통해 애플리케이션의 전체적인 민첩성과 유지 관리 편의성을 높이는 것입니다.

CNCF 소개

CNCF (Cloud Native Computing Foundation) 는 대표적으로 Kubernetes 와 Prometheus  와 같은 Cloud Native 오픈소스 기술들을 추진하고 관리하는 단체입니다.

CNCF는 2015 년에 Linux Foundation 산하에 설립되었고,  첫 번째 프로젝트로 Kubernetes 를 Google에서 기증하였습니다.

Cloud Native Computing Foundation - CNCF Projects

Cloud Native 애플리케이션을 어떻게 구축할까요?

Cloud Native 개발에는 일반적으로 데브옵스 ( DevOps ) , 애자일 방법론, 마이크로서비스 아키텍처, 클라우드 플랫폼, 쿠버네티스 및 도커와 같은 컨테이너 그리고 지속적 제공 (Continuous Delivery) 가 포함됩니다. 간단히 말해 새롭고 현대적인 모든 애플리케이션 배포 방법이 사용됩니다.

따라서 플랫폼 서비스(PaaS) 모델을 사용하는 편이 가장 바람직 합니다. 클라우드 고객의 대다수는 하드웨어를 추상화하는 인프라 서비스(IaaS)로 시작합니다. 그러나 PaaS는  OS를 추상화하므로 개발이나 운영환경에 신경 쓸 필요 없이 애플리케이션의 비즈니스 로직에 온전히 집중할 수 있습니다.

Cloud Native 애플리케이션은 조직 내 인력과 이들의 협업 프로세스를 자동화하는 것에서 시작합니다. 즉, DevOps를 도입하여 공통의 목적과 주기적인 피드백을 통해 개발팀과 운영팀의 협업을 지원할 수 있습니다.

  • 데브옵스 (DevOps )

    클라우드 네이티브 애플리케이션은 조직 내 인력과 이들의 협업 프로세스를 자동화하는 것에서 시작합니다. 즉, DevOps를 도입하여 공통의 목적과 주기적인 피드백을 통해 개발팀과 운영팀의 협업을 지원할 수 있습니다.

    DevOps 및 컨테이너 접근 방식에서는 하나의 대규모 릴리스 및 업데이트를 기다리는 것이 아니라 마이크로서비스처럼 여러 서비스가 탄력적으로 결합된 하나의 컬렉션으로 애플리케이션을 쉽게 출시할 수 있습니다.

  • 컨테이너 ( Container)

    컨테이너를 도입하면 이상적인 애플리케이션 배포 유닛 및 독립적인 실행 환경을 제공하여 이러한 프랙티스를 지원할 수 있습니다.

  • CI/CD (지속적인 통합과 제공)

    많은 조직이 실용적인 서비스 기반 아키텍처를 이용하여 계속해서 레거시 애플리케이션을 최적화할 수 있습니다. 이러한 최적화는지속적인 통합(Continuous Integration, CI)과 지속적인 제공(Continuous Delivery, CD) 및 완전히 자동화된 배포 운영 같은 DevOps 워크플로우를 통해 지원됩니다.

  • 마이크로서비스 아키텍터 ( MSA)

    클라우드 네이티브 개발은 아키텍처의 모듈성, 탄력적인 결합, 그리고 독립적인 서비스에 중점을 둡니다. 각 마이크로서비스는 비즈니스 역량을 구현하고 자체 프로세스를 실행하고 애플리케이션 프로그래밍 인터페이스(Application Programming Interfaces, API) 또는 메시징을 통해 커뮤니케이션합니다. 이러한 커뮤니케이션은 서비스 메쉬 레이어를 통해 관리할 수 있습니다.

클라우드 네이티브 세미나

찾아가는 클라우드 네이티브 세미나

Kubernetes, Container, DevOps, MSA, CI/CD 기술 등은 업계 표준이자 핵심 기술들은 하이브리드 클라우드 전략을 실현 할 수 있습니다.

최신 IT 트렌드와 클라우드 구축사례를 통해 비즈니스 혁신과 저비용 고효율의 IT 인프라스트럭처 구축의 실마리를 공유하는 Half Day 워크샵을 지원해 드립니다.

원하는 시간과 장소 그리고 10가지 세션 중에 3~5가지를 선택해서, 알려주시면 맞춤형 세미나를 진행합니다.

고객사례를 통해 입증된 클라우드 네이티브 개발 핵심 가이드 by Red Hat

References & Related Links

컨테이너 장점

컨테이너 장점

가상 머신은 하드웨어 스택을 가상화합니다. 컨테이너는 이와 달리 OS를 가상화하여 여러 개의 컨테이너를 OS 커널에서 직접 실행합니다. 컨테이너는 기존의 가상화 기술보다 훨씬 가볍게 동작하며, OS 커널을 공유하고, 시작 시간이나 종료 시간이 빠르고 ,  메모리를 훨씬 적게 차지합니다

컨테이너 기술 소게

컨테이너 기술 소개

IT 분야에서 “컨테이너”도 일종의 박스의 의미이며, 물류분야에서 처럼 Portability (이동성) 을 실현하기 위해 만들어진 기술입니다.

이동성은 IT 시스템 (플랫폼 또는 인프라) 상에서 다른 IT 시스템으로 이동을 쉽게 허용하는 성질을 의미하는 것입니다.

컨테이너 개념 소개

컨테이너 를 들으면 무엇이 떠오르나요?

항구나 공항 등에서 보는 직 물류 업계에서 사용되는 컨테이너가 떠오르 실 것입니다

컨테이너는 내용물을 하나씩 이동하는 것이 아니라 박스에 수하물을 담아 통째로 이동하기 때문에 편리한 물류 수단입니다.

가상화 와 컨테이너 비교

가상화와 컨테이너의 비교

가상화는 개발측면이나 운영측면에서 자원 효율적으로 사용하고 관리하는 기술로서 널리 확산되었습니다. 다양한 OS 환경과 어플리케이션을 하나의 파일로 관리할 수 있는 “가상 머신 (VM)”은 손쉽게 이동할 수 있는 이식성을 제공해 주었습니다.

컨테이너는 하이퍼바이저와 Guest OS 없이 애플리케이션 운영환경을 제공하는 기술로서 앞서의 가상화 기술의 고질적인 문제점들을 해결하고 있습니다.

Docker 그리고 컨테이너 기술의 역사

Docker 그리고 컨테이너 기술의 역사

컨테이너 기술의 시작과 현재까지 발전해온 역사를 살펴봅니다.

1972년 IBM VM / 370 (OS) 최초 가상화 기능 구현 , 1979 년 UNIX V7 에 chroot 시스템 콜 도입, 1999년 Virtuozzo 출시 컨테이너 가상화의 새로운 방향을 제시

물리서버, 가상화 그리고 컨테이너로의 발전
물리서버, 가상화를 넘어 컨테이너 까지

컨테이너 기술이 등장하기 전까지 IT 역사를 되돌아 보겠습니다.

가상화기술이 출현하기 전에는 하나의 물리적 서버에서 다양한 애플리케이션을 올려 사용하는 시대였습니다.

Summary
product image
Aggregate Rating
5 based on 7 votes
Brand Name
OPENMARU APM
Product Name
OPENMARU APM (Application Performance MAnagement)