엔터프라이즈를 위한 7가지 최고의 오픈 소스 클라우드 플랫폼

개인 클라우드 환경 구축으로 비용 절감 극대화하기!

서버 공간, 개발 환경, 보안, 소프트웨어 스택, 업데이트 관리, 하드웨어 유지보수 등 고려해야 할 요소가 많아 전체 플랫폼 유지 관리 비용이 과도하게 느껴질 수 있습니다. 애플리케이션 개발 및 배포 기업은 플랫폼 운영에 상당한 자원을 할당해야 하며, 이는 소프트웨어 개발에 투자할 수 있는 자원의 잠재적 낭비로 이어집니다.

이러한 문제점을 해결하기 위해 클라우드 플랫폼 솔루션이 등장했습니다. 클라우드 컴퓨팅 모델을 기반으로, 이러한 솔루션은 호스팅된 개발 환경, 데이터베이스 도구, 완벽한 애플리케이션 관리 기능 등 개발자가 필요로 하는 모든 것을 제공합니다. 클라우드 플랫폼 내에서 개발자는 소프트웨어 애플리케이션을 개발, 배포, 실행하는 데 필요한 모든 자원에 접근할 수 있습니다. 기업에게 클라우드 플랫폼은 단기간 내에 새로운 애플리케이션을 확장 가능한 기반 위에서 제공할 수 있도록 지원합니다. 또한, 사용량에 따른 지불 방식을 통해 온프레미스 플랫폼에 대한 장기적인 투자 부담을 줄일 수 있습니다.

오픈 소스를 선택해야 하는 이유는?

기존 온프레미스 플랫폼 대비 클라우드의 장점을 살펴보았으니, 이제 오픈 소스 클라우드 플랫폼이 독점 클라우드 플랫폼보다 더 나은 선택인 이유를 살펴볼 차례입니다. 가장 분명한 이유는 바로 비용입니다. 독점 솔루션의 라이선스는 일반적으로 더 높은 비용을 수반합니다. 또 다른 중요한 이점은 다양한 프레임워크, 클라우드, 서비스 중에서 선택할 수 있는 유연성과 자유입니다.

반면, 독점 플랫폼은 특정 도구와 서비스에 종속될 수 있습니다. 그 대가로 서비스 수준 계약(SLA) 보장, 테스트 및 통합 문제 해소 등 일부 이점을 제공하지만, 이러한 이점은 개방성이 제공하는 이점을 넘어서지 못하는 경우가 많습니다.

아래에서 현재 시장을 선도하는 기업을 위한 오픈 소스 클라우드 플랫폼을 살펴보겠습니다.

클라우드 파운드리

원래 VMware(현재는 Pivotal Software 소유)에서 개발한 클라우드 파운드리는 독립 실행형 오픈 소스 소프트웨어 애플리케이션으로 제공된다는 점에서 클라우드 공급자에 종속되지 않는다는 장점을 갖습니다. VMware vSphere, HP Helion, Azure, AWS와 같은 다양한 클라우드 인프라에 배포하거나, OpenStack 서버에서 직접 호스팅할 수도 있습니다.

Cloud Foundry는 빌드팩을 활용하여 런타임 및 프레임워크 지원을 간소화합니다. 애플리케이션 배포 시 Cloud Foundry Application Runtime은 가장 적합한 빌드팩을 자동으로 선택합니다. 그런 다음 빌드팩이 애플리케이션 컴파일 및 실행 준비 과정을 처리합니다.

Cloud Foundry는 확장 가능한 아키텍처와 DevOps 친화적인 워크플로를 통해 신속한 애플리케이션 개발 및 배포를 지원합니다. Python, Ruby, PHP, Java, Go 등 다양한 언어를 지원합니다. Cloud Foundry를 최대한 활용하려면 프로젝트가 Twelve-Factor 애플리케이션 표준, 즉 최적의 서비스형 소프트웨어(SaaS) 앱 개발을 위해 설계된 방법론을 따르는 것이 좋습니다.

유데미에서 제공하는 Cloud Foundry를 활용한 클라우드 개발 강좌를 참고해볼 수 있습니다.

WSO2

SOA(서비스 지향 아키텍처) 환경에서 내부 및 외부 API를 대량으로 처리해야 하는 경우, WSO2의 API Manager가 유용합니다. 이 솔루션은 전체 API 수명 주기를 관리할 수 있으며, 버전 관리, API 문서화, SSL 오프로딩 등 고객 요구 사항을 충족합니다.

WSO2는 개발자가 API를 검색, 테스트, 평가할 수 있는 저장소 개념을 제공합니다. 배포 과정은 간단하며, API 흐름을 제어할 수 있는 다양한 옵션을 제공합니다. 또한, 엔드포인트 오류 발생 시 자동 복구 기능을 제공합니다. 이러한 모든 기능은 시장 출시 시간 단축, 비용 관리 간소화, 전반적인 비즈니스 프로세스 민첩성 향상을 목표로 합니다.

WSO2 API Manager의 주요 장점 중 하나는 API 기반 IAM(ID 및 액세스 관리) 솔루션인 WSO2 Identity Server와 쉽게 통합된다는 것입니다. 이를 통해 클라우드 환경에서 인증을 위한 통합 플랫폼을 제공합니다.

클라우디파이

클라우디파이는 애플리케이션 및 서비스를 모델링하는 동시에 수명 주기를 자동화하도록 설계된 오케스트레이션 프레임워크입니다. 모든 클라우드 환경 또는 데이터 센터에 배포하고 지속적인 유지 관리를 수행할 수 있는 기능을 제공합니다. 또한, 배포된 애플리케이션의 모든 측면을 모니터링하고 장애 상태를 감지하여 수동 또는 자동으로 문제를 해결할 수 있는 도구를 제공합니다.

클라우디파이의 가장 주목할 만한 기능 중 하나는 TOSCA 기반 청사진 모델링입니다. 이 기능을 통해 개발자는 YAML을 사용하여 애플리케이션 토폴로지 청사진을 만들 수 있습니다. YAML은 TOSCA 사양에 따라 정의를 작성하는 데 사용되는 사람이 읽을 수 있는 데이터 직렬화 언어이며, 개발자에게 애플리케이션, 시스템, 클라우드 인프라 구성 요소 간의 상호 연결을 설명하는 표준화된 방식을 제공합니다.

클라우디파이 클라우드 오케스트레이션은 IT 거버넌스 및 보안을 위한 강력한 기반을 제공하여 사용자가 다양한 역할 및 권한 수준으로 액세스 제한을 적용할 수 있도록 합니다. Kubernetes 컨테이너, 클라우드 서비스(AWS, Azure, vSphere, OpenStack), 구성 관리 도구(Puppet, Ansible, Chef)와 같은 외부 서비스와 통신하기 위해 클라우디파이는 공식 플러그인 세트를 사용하며, 대부분의 다른 서비스는 기존 플러그인을 통해 지원됩니다.

오픈시프트

오픈시프트는 Kubernetes 기반 플랫폼으로, 유연하고 빠른 설치 프로그램과 광범위한 API 지원을 제공하여 개발자가 필요에 따라 플랫폼을 확장할 수 있도록 합니다. 보안을 염두에 두고 설계되었으며, 컨테이너는 루트가 아닌 사용자로서 실행되어야 합니다. 그렇지 않을 경우, OpenShift는 컨테이너 실행을 위해 명시적인 재정의를 필요로 합니다.

Kubernetes를 효과적으로 사용하려면 상당한 수의 서버가 필요하며, 이를 마스터하기 위한 학습 곡선도 존재합니다. 따라서 이 플랫폼은 단기간 내에 대규모 배포로 확장할 계획이 없는 소규모 배포 환경에는 적합하지 않을 수 있습니다.

OpenShift 사용자는 빠르고 쉬운 설치 및 구성 절차와 모듈 및 기어 유지 관리가 용이하다는 점을 강조합니다. 자체 Git 저장소를 제공한다는 점도 장점입니다. 그러나 로그를 읽고 해석하는 데 어려움을 느낄 수 있다는 점도 지적됩니다. 특히 프로젝트 업로드 중 오류가 발생하면 문제의 원인을 파악하기 어려울 수 있습니다.

OpenShift 학습은 비교적 쉬운 편입니다.

쓰루

세계에서 두 번째로 큰 상업 TV 네트워크인 Rede Globo에서 개발한 쓰루는 Docker 기반 PaaS(Platform as a Service) 솔루션으로, 프로덕션 환경에서 애플리케이션을 오케스트레이션하고 실행할 수 있습니다. Globo.com에서 개발되었으며, 수백만 명의 사용자를 지원하는 오픈 소스 멀티 제공자 플랫폼입니다.

쓰루 사용자는 단순성, 고가용성, 보안, 안정성을 유지하면서 출시 시간을 크게 단축할 수 있다고 확신합니다. Docker를 지원하는 한 퍼블릭 또는 프라이빗을 막론하고 다양한 클라우드 인프라에서 실행할 수 있습니다. 또한, 거의 모든 프로그래밍 언어를 지원하여 개발자가 선호하는 언어를 자유롭게 선택할 수 있습니다.

쓰루를 사용하면 SQL 또는 NoSQL 데이터베이스, Memcached 또는 Redis와 같은 인메모리 대안 등 다양한 데이터 저장소를 사용할 수 있습니다. 선호하는 것을 선택하고 애플리케이션에 연결하기만 하면 됩니다. 애플리케이션을 관리하기 위해 명령줄 또는 웹 인터페이스 중에서 선택하고 Git을 통해 배포할 수 있습니다. 쓰루 인프라가 모든 핵심 세부 사항을 처리합니다.

스택카토

스택카토는 Cloud Foundry 및 Docker를 기반으로 하는 다국어 PaaS 솔루션으로, 클라우드 인프라 위에서 실행되며 애플리케이션 실행 플랫폼 역할을 합니다. 스택카토 사용자들은 클라우드 관리자와 개발자 모두의 생산성을 높이는 데 도움이 되는 민첩하고 강력한 애플리케이션 플랫폼을 제공한다고 말합니다. 클라우드 인프라의 VM에 직접 접근할 수 있는 유연성과 완전한 기능을 갖춘 PaaS에서 제공하는 자동화된 구성의 조합은 엔터프라이즈 클라우드 배포에 적합합니다. 지원되는 클라우드 인프라에는 HP Cloud Services, Citrix XenServer, AWS, OpenStack, VMware 등이 포함됩니다.

스택카토에서 각 애플리케이션에는 자체 Linux 컨테이너(LXC)가 할당되어 효율적이고 안전한 리소스 공유를 보장합니다. 서비스 범위는 다음과 같이 구성됩니다. 스택카토가 기본 클라우드와 통신하고 서비스 수명 주기를 관리하는 데 사용하는 Helion Control Plane; 애플리케이션에 사용할 수 있는 추가 기능 서비스의 저장소인 Helion Service Manager; 애플리케이션 호스팅 및 개발을 간소화하도록 설계된 유연한 런타임인 Helion Cloud Foundry; 비공개 또는 공개 Git 리포지토리와 통합된 지속적인 배포 서비스인 Helion Code Engine; 모든 Helion Cloud 기능을 관리하기 위한 웹 인터페이스인 Helion Stackato 콘솔.

알리바바

오픈 소스 클라우드 플랫폼 및 PaaS를 논할 때 자주 언급되지는 않지만, 알리바바 클라우드 컴퓨팅 사업은 중국 공용 클라우드 시장의 50% 이상을 이미 점유하고 있으며, 중국 이외의 시장에 서비스를 제공하기 위해 노력하며 빠른 속도로 성장하고 있습니다. 예를 들어, 168개국에서 미국 달러로 결제를 지원하며 해외 시장에 특화된 서비스를 설계하기 시작했습니다.

알리바바의 클라우드 플랫폼 서비스에는 Docker, Kubernetes, Container Registry, Auto Scaling, 오프라인 데이터 개발을 위한 보안 환경인 DataWorks용 컨테이너 서비스와 같은 다양한 무료 기능이 포함됩니다. 해당 서비스는 잘 문서화되어 있으며, 클라우드로 애플리케이션을 즉시 마이그레이션하는 데 필요한 모든 정보를 제공합니다. 알리바바는 간단한 단계를 거쳐 단 1달러도 투자하지 않고 즉시 구축을 시작할 수 있도록 지원합니다.

마무리하며…

다행히도 개발자에게 개방성은 클라우드 환경의 주요 특징입니다. 몇 년 전, 컨테이너 기술(Docker, Kubernetes, Mesos, Nomad, ECS 등) 경쟁은 시장을 분할하여 플랫폼 선택 시 상당한 위험을 초래했습니다. 하지만 현재는 선택할 수 있는 플랫폼이 더 많아졌으며, 오늘날의 오픈 소스 선택에서 차이점은 세부 사항에 있습니다. 즉, 서로 다른 비용 구조, 관리 도구, 보안 접근 방식 등이 있습니다. 즉, 오늘 오픈 소스 클라우드 플랫폼을 선택하고 만족하지 않으면 내일 다른 플랫폼으로 이동할 수 있으며 비용 부담이 크지 않을 것입니다.

여기서 제공된 정보를 통해 요구 사항에 맞는 플랫폼을 선택하고 서버 용량, 미들웨어, 프레임워크, 가상 머신, 데이터 저장소 등과 같은 복잡한 문제들을 잊을 수 있을 것입니다. 이 모든 것을 벗어나면 모든 리소스와 관심을 정말 중요한 단 한 가지, 즉 가능한 한 빨리 사용자에게 뛰어난 애플리케이션을 제공하고 사용하는 동안 사용자를 만족시키는 데 집중할 수 있습니다.

클라우드 플랫폼에서 무료 등급 또는 크레딧을 찾고 계십니까? 이 목록을 확인하십시오.