CaaS(Containers as a Service)란 무엇일까요?

작성자 IBM Services

CaaS(Containers as a Service)는 사용자가 컨테이너, 애플리케이션 및 클러스터를 업로드, 구성, 시작, 중지, 스케일링하고 혹은 달리 관리할 수 있도록 허용하는 클라우드 서비스 모델입니다. 이는 컨테이너 기반 가상화, API(Application Programming Interface) 또는 웹 포털 인터페이스를 사용하여 이러한 프로세스를 구현합니다. CaaS는 온프레미스 데이터 센터 또는 클라우드를 통해 보안이 강화되고 확장 가능한 컨테이너화된 애플리케이션을 구성할 수 있도록 사용자를 지원합니다. 컨테이너 및 클러스터는 이 모델에서 서비스로 사용되며, 클라우드 또는 온사이트 데이터 센터에 배치됩니다. 

CaaS는 왜 중요할까요?

광범위한 애플리케이션의 모델인 CaaS는 완전히 확장된 컨테이너와 애플리케이션을 구축하는 프로세스를 효율화할 수 있도록 개발자를 지원합니다. 이 모델은 보안이 강력한 환경에서 거버넌스 통제성을 지닌 작동 가능한 컨테이너 배치 서비스를 제공하는 IT 부서의 핵심 요소입니다. CaaS 모델은 소프트웨어 정의된 자체 인프라 내에서 컨테이너 관리를 간소화할 수 있도록 기업들을 지원합니다.

기타 클라우드 컴퓨팅 서비스와 유사하게, 사용자는 자신이 원하는 CaaS 리소스를 선택하고 이에 대해서만 비용을 지불할 수 있습니다. 일부 CaaS 리소스의 예로서 컴퓨팅 인스턴스, 스케줄링 기능 및 로드 밸런싱 등을 들 수 있습니다.

클라우드 컴퓨팅 서비스의 확산으로, CaaS는 IaaS(Infrastructure as a Service)의 서브세트로 간주되며 IaaS 및 PaaS(Platform as a Service) 사이에서 찾을 수 있습니다. CaaS에는 IaaS 환경에 일반적으로 사용되는 베어메탈 하드웨어 호스트 시스템 및 가상 머신(VM)에 대조되는 기본 리소스로서 컨테이너가 포함됩니다.

CaaS 기술의 핵심 특성은 주요 IT 기능을 자동화하는 오케스트레이션입니다. Google Kubernetes 및 Docker Swarm은 CaaS 오케스트레이션 플랫폼의 두 가지 사례입니다. IBM, AWS(Amazon Web Services) 및 Google은 퍼블릭 클라우드 CaaS 제공자의 일부 사례입니다.

컨테이너는 왜 중요할까요?

모든 업계의 엔터프라이즈 고객들은 CaaS 및 컨테이너 기술의 이점을 파악하고 있습니다. 컨테이너를 사용하면 효율성이 향상되며, 마이크로서비스를 사용한 클라우드 네이티브 개발과 애플리케이션 현대화를 위한 혁신적 솔루션을 빠르게 배치할 수 있는 기능을 이러한 고객들에게 제공합니다. 컨테이너화는 이러한 고객들이 소프트웨어를 보다 빠르게 릴리스하고 하이브리드 및 멀티클라우드 환경 간에 이식성을 향상시키며 인프라, 소프트웨어 라이센싱 및 운영 비용을 절감할 수 있도록 지원합니다.  

컨테이너 사용을 통해 고객들은 다음의 이점을 얻을 수 있습니다.

  • 이식성: 애플리케이션이 컨테이너에서 작성되면, 완성된 앱에는 종속 항목 및 구성 파일을 포함하여 실행이 필요한 모든 것들이 들어 있습니다. 이식성이 있는 경우 일반 사용자는 다양한 환경과 프라이빗 클라우드 또는 퍼블릭 클라우드에서 애플리케이션을 안정적으로 실행할 수 있습니다. 또한 이러한 이식성은 엔터프라이즈에 매우 풍부한 유연성을 제공하여 개발 프로세스를 가속화하고 다른 제공자 또는 클라우드 환경으로 손쉽게 전환할 수 있도록 해줍니다.
  • 고도의 효율성 및 비용 절감: 컨테이너가 별도의 운영 체제를 필요로 하지 않으므로 이에는 VM보다 리소스가 더 적게 필요합니다. 컨테이너에는 종종 실행을 위해 단지 수십 메가바이트만 필요하기 때문에, 사용자는 VM 실행에 달리 사용될 수 있는 단일 서버에서 여러 컨테이너를 실행할 수 있습니다. 이 효율성 덕분에 데이터 센터 비용을 절감할 수 있습니다. 또한 컨테이너는 기본 하드웨어에 대한 높은 활용도를 유지하고 하드웨어를 덜 필요로 하기 때문에 기본 베어메탈 비용을 절감할 수 있습니다.

동일한 리소스를 공유함에도 불구하고, 컨테이너는 서로 상호작용하지 않으며 동일 서버에서 다른 컨테이너들과 다소 분리되어 있습니다. 하나의 컨테이너에 대해 애플리케이션이 충돌하는 경우, 다른 컨테이너는 기술적 문제 없이 이를 계속 사용할 수 있습니다.

  • 보안: 컨테이너가 서로 간에 유지하는 격리는 위험을 최소화하는 보안 기능으로서 배가됩니다. 한 애플리케이션이 손상된 경우 그 부정적인 영향은 다른 컨테이너로 전파되지 않습니다.

또한 컨테이너가 운영 체제에서 분리되어 애플리케이션 프로세스를 실행하고 애플리케이션 실행에 특정 소프트웨어가 필요하지 않으므로, 호스트 시스템 관리가 보다 간편합니다. 이러한 이점으로 사용자는 업데이트와 보안 패치를 신속히 실행할 수 있습니다.     

  • 속도: 컨테이너는 운영 체제 북을 필요로 하지 않으므로, 컨테이너를 시작하고 컨테이너를 작성, 복제 또는 삭제하는 데 몇 초밖에 소요되지 않습니다. 이러한 장점은 또한 빠른 개발 프로세스를 가능하게 하고, 시장 출시 속도와 운영 속도를 가속화하며, 이전보다 간단하고 빠르고 쉽게 새 버전이나 소프트웨어를 출시할 수 있도록 해줍니다. 또한 이러한 속도는 고객 경험에도 도움이 되며, 기업 및 개발자가 버그에 신속하게 대응하고 고객이 이를 처리하는 즉시 새 기능을 통합할 수 있도록 합니다.
  • 스케일링: 컨테이너의 특성이 수평적 확장 기능이므로, 일반 사용자는 용량을 확장할 동일 클러스터 내에서 다수의 동일 컨테이너를 통합할 수 있습니다. 스마트 스케일링을 사용하고 필요 시에 필요한 컨테이너만 실행함으로써, 사용자는 비용을 상당히 절감하고 투자수익률(ROI)을 높일 수 있습니다.  
  • 효율적 개발: 효과적이고 효율적인 개발 파이프라인을 갖추는 것은 컨테이너 기반 인프라의 장점입니다. 애플리케이션이 로컬로 빌드된 것처럼 작동하고 실행되도록 컨테이너가 허용하기 때문에 환경 불일치가 제거됩니다. 이러한 제거 덕분에 테스트와 디버깅이 강화되므로, 복잡도와 시간 낭비가 감소됩니다. 또한 이 기능은 애플리케이션 업데이트의 경우 배가되며, 단지 개발자가 구성 파일을 수정한 후 새 컨테이너를 생성하고 이전 컨테이너를 삭제하기만 하면 됩니다. 물론 이는 신속히 수행해야 하는 프로세스입니다. 

관리형 컨테이너 서비스 및 클라우드 컨테이너 스택

컨테이너를 사용하여 자체 비즈니스를 강화하려는 엔터프라이즈 고객은 두 가지 옵션 중에서 선택해야 합니다.

  1. CaaS 플랫폼 및 공용 클라우드나 온사이트 인프라 플랫폼에 배치

  2. 세 개의 기본 채택된 퍼블릭 클라우드 제공자인 Google, Amazon 또는 Microsoft Azure가 제공하는 관리형 컨테이너 서비스

이러한 두 가지 옵션 중 하나가 반드시 기업에서 독점적으로 사용되고 있지는 않습니다. CNCF(Cloud Native Computing Foundation)가 Google 및 Linux Foundation과의 파트너십으로 설립되고 Kubernetes Certification 프로그램을 시작했으므로, CNCF는 모든 벤더들이 플랫폼 간의 컨테이너 이식성과 순응성을 위해 표준을 유지하도록 보장해 왔습니다.   

온사이트 배치 또는 관리형 컨테이너 플랫폼 간에 선택하기 전에 엔터프라이즈 고객은 다음 질문에 대답해야 합니다.

  • 컨테이너에서 현장 배치가 필요한가요? 또는 이를 퍼블릭 클라우드에 배치할 수 있나요?
  • IT 부서에 Kubernetes 환경을 설계, 배치 및 관리할 수 있는 필수 기술이 있나요? 스킬 훈련이나 유지를 위해 무엇이 필요한가요?
  • 컨테이너를 배치해야 하는 퍼블릭 클라우드 플랫폼은 무엇인가요? Google, AWS 또는 Azure를 예로 들 수 있습니다.
  • 멀티테넌트 및 공유 Kubernetes 제어 플레인의 사용에 어떤 의미가 있나요?

엔터프라이즈가 아직 컨테이너를 실험 중인 경우에는 관리형 컨테이너 서비스가 최선의 선택일 수 있습니다. 관리형 컨테이너 서비스는 클러스터 관리자, 리소스 프로비저닝 또는 배치된 최소 플랫폼이 필요하지 않은 바람직한 시작점입니다. 관리형 컨테이너 서비스의 커다란 이점은 초기 컨테이너 배치 테스트 이후 개발 및 운영 프로세스의 조정에 적합하다는 점입니다.

엔터프라이즈가 이미 Kubernetes 또는 AWS 또는 온사이트 플랫폼에서 컨테이너를 어느 정도 배치한 경우에는 자체 CaaS 솔루션을 선택할 수 있습니다. 자체 CaaS를 가져오면 프로덕션급 시스템에 필요한 필수 프레임워크와 서비스가 있는 보다 기능이 많은 플랫폼을 엔터프라이즈에 제공할 수 있습니다.

Kubernetes의 부상

Betamax 대 VHS 전쟁과는 달리 컨테이너 오케스트레이션 주도권을 위한 전쟁2017년 4/4분기에 예측되었으며 2018년 2분기에 결론이 났습니다. 이제는 단순히 Kubernetes라고 하는 Google Kubernetes Engine이 승자가 되었습니다. 명백한 승자를 이용하여 제공자 및 채택자들은 자신들의 노력을 배가하여 Kubernetes의 배치를 생성하고 발전시키는 데 집중했습니다.

관리형 Kubernetes 서비스 및 하이브리드 컨테이너 스택의 릴리스는 Kubernetes의 채택을 용이하게 했습니다. GKE가 관리형 컨테이너 서비스의 개념을 선도하는 데 도움을 주기 때문에, Kubernetes는 항상 경쟁자인 AWS 및 Azure의 컨테이너 서비스보다 더 많은 요구사항을 유지했습니다. Amazon EKS(Amazon Elastic Container Service for Kubernetes) 및 AKS(Azure Kubernetes Service)의 2018년 중반 릴리스는 GKE의 지배력을 공고히 했습니다.

동영상 보기

Kubernetes 및 컨테이너 오케스트레이션

Kubernetes(K8s)는 애플리케이션 배치, 관리 및 스케일링을 자동화하는 컨테이너 조정 시스템입니다. 원래 Google이 설계하고 2014년에 오픈 소스화된 Kubernetes는 CNCF에 의해 유지보수되고 있습니다. Kubernetes 웹 사이트는 Kubernetes를 "선언적 구성과 자동화를 가능하게 하는 컨테이너화된 워크로드 및 서비스를 관리하기 위한 휴대용의 확장 가능한 오픈 소스 플랫폼"이라고 설명합니다.

Kubernetes가 작동하는 세 개의 기본 플랫폼에는 다음이 포함됩니다.

  • 컨테이너
  • 마이크로서비스
  • 휴대용 클라우드

컨테이너 중심 관리 환경인 Kubernetes는 사용자 워크로드에 대한 컴퓨팅, 네트워킹 및 스토리지 인프라를 조정합니다. Kubernetes에는 PaaS와 동일한 사용 편의성이 인프라 제공자 간의 이식성 및 IaaS의 유연성과 함께 포함되어 있습니다.  

Kubernetes, IBM 및 Red Hat 오픈 여정

20년 동안 이어온 온 협업으로 IBM과 Red Hat은 함께 탐색 여정을 진행해 왔습니다. Linux의 초창기 지지자인 IBM은 Red Hat과 함께 협력하여 엔터프라이즈급 Linux를 개발 및 지원하는 데 도움을 주었습니다. 보다 최근에는 이 협업을 통해 Kubernetes 및 하이브리드 클라우드 솔루션이 다수의 고객에게 제공되었습니다. 또한 Kubernetes는 결합된 IBM 및 Red Hat 하이브리드 클라우드 전략의 토대 중 하나이기도 합니다.

이러한 혁신은 IBM의 USD 190억에 해당하는 하이브리드 클라우드 비즈니스의 핵심 기술이 되었습니다. 예정된 2019년 말에 인수가 완료되면, Red Hat은 IBM 하이브리드 클라우드 팀의 최신 멤버이자 개별 유닛이 될 것입니다.  

Kubernetes, IBM 및 Hertz

Hertz Corporation(간단히 Hertz라고도 함)은 2018년에 100주년을 맞았습니다. 레거시 기술 문제를 해결하기 위해 이 회사는 비즈니스 아키텍처와 기술을 효율화하는 데 있어서 도움이 필요했습니다. Hertz는 IBM Cloud Garage™와 팀을 이뤄 엔터프라이즈가 마이크로서비스 기반 애플리케이션을 구축하여 이를 IBM Cloud™ Private 및 IBM Cloud Container Service에 배치할 수 있도록 지원한 Kubernetes 아키텍처를 개발했습니다.

IBM과 협력함으로써 Hertz는 유연한 컨테이너 및 마이크로서비스 아키텍처를 사용하여 디지털 채널, 예약, 속도 등에서 자체 코어 시스템을 현대화하였습니다. 전세계적으로 확장이 가능하므로 Hertz는 애플리케이션의 고가용성과 엔터프라이즈 규모를 보장하며, 애플리케이션이 일단 생성되면 하루에 15억 히트 수와 3천만 업데이트를 받을 것으로 예상됩니다.

Kubernetes 및 오픈 소스 소프트웨어

오픈 소스 소프트웨어는 그 영향력을 꾸준히 확대하고 있으며, 정보 기술 세계에서 오픈 소스 소프트웨어의 중요성을 더욱 강화하고 있습니다. 오픈 소스 소프트웨어 환경의 IBM Services™ 백서 지원 솔루션은 "96%의 상용 애플리케이션에는 일종의 오픈 소스 컴포넌트가 있음"을 기술합니다(PDF, 3.9MB).1

오픈 소스 소프트웨어 세계에서 Arturo Suarez는 엄청난 영향력을 지니고 있습니다. Suarez는 클라우드 컴퓨팅인 OpenStack에 대한 무상 오픈 소스 소프트웨어 플랫폼의 첫 번째 상용 배포를 구축했습니다. 2019년 IT Biz Advisor 인터뷰에서 Suarez는 자신의 Kubernetes 경험을 이렇게 설명합니다. "Kubernetes는 컨테이너 오케스트레이션 경쟁에서 승승장구하고 있습니다." 그리고 "Kubernetes는 3개월마다 릴리즈됨으로써 OpenStack보다 휠씬 빠르게 진화하고 있으며, 보다 뛰어난 거버넌스 모델과 채택 커브를 보유합니다."2  

IBM Cloud Kubernetes 서비스

2018년 5월 중순에 IBM의 Kubernetes 전략 투자에 따라 IBM Cloud Container Service는 2017년 5월 이후 사용 가능한 서비스인 IBM Cloud Kubernetes Service로서 리브랜딩했습니다.

신속한 애플리케이션 제공을 위한 관리형 컨테이너 서비스인 IBM Cloud Kubernetes Service는 IBM Watson®, 블록체인 및 기타 고급 서비스와 통합될 수 있습니다. IBM Cloud Kubernetes Service의 일부 기능에는 다음이 포함됩니다.

  • 지능형 스케줄링
  • 자가 치료
  • 수평적 확장
  • 서비스 검색
  • 로드 밸런싱
  • 자동화된 롤아웃 및 롤백
  • 시크릿 및 구성 관리

사용자 친화적인 클러스터 관리와 관련된 고급 기능과 자체 클러스터 설계 기능을 갖춘 이 IBM Cloud Kubernetes Service는 또한 컨테이너 보안 및 격리 정책을 제공하고 배치 일관성을 위한 통합 운영 툴을 제공합니다.

IBM Cloud Kubernetes 서비스는 현재 10,000개 이상의 관리형 유료 프로덕션 클러스터를 보유하고 있으며 Think Research, Eurobit Technologies 및 The Weather Company(IBM Company임) 등의 고객이 이를 사용합니다. 기업들은 IBM Cloud Kubernetes Service를 사용하여 다음과 같은 작업을 수행합니다.

  • 클러스터를 구축합니다.
  • Kubernetes에 확장 가능한 웹 애플리케이션을 배치합니다.
  • 로그를 분석하고 Kubernetes 앱의 상태를 모니터합니다.
  • Kubernetes에 대한 지속적 배치를 제공합니다.

컨테이너 서비스, 클라우드 서비스 및 Kubernetes가 비즈니스를 지원하는 방법에 대한 자세한 정보를 알아보려면 무료로 IBM 전문가와의 일대일 상담을 예약하세요. 또한 IBM Cloud Kubernetes Service에 등록하여 IBM Cloud 환경에서 무료로 빌드 및 개발할 수도 있습니다. IBM은 사용자가 자신 있게 자신의 기업을 발전시키도록 언제든지 지원합니다.

컨테이너 및 Kubernetes 자세히 보기

출처

  1. IBM Services. “Support solutions for your open source software environment,”IBM, 2019년. https://www.ibm.com/downloads/cas/BWJWOJRD (PDF, 3,9 MB)
  2. Camilla Sharpe. “Q&A: How open source technology is shaking up the IT landscape,”IBM, 2019년 5월 16일. https://itbizadvisor.com/2019/05/qa-how-open-source-technology-is-shaking-up-the-it-landscape