Search
📣

OpenInfra & Cloud Native Days Korea 2022에서 Cloudforet를 외치다

안녕하세요. 멀티클라우드 관리 플랫폼, SpaceONE입니다.
2022년 11월 1일 개최된 OpenInfra & Cloud Native Days Korea 2022 행사에서
SpaceONE의 오픈소스 프로젝트인 Cloudforet가 소개되었습니다.
IT 시스템 전반에 걸쳐진 어려움을 해결하는 데 목적을 두고 개발된 멀티 클라우드 관리 플랫폼 Cloudforet에 대한 주제로 진행되었습니다. 오픈소스 생태계에서는 IT 시스템과의 연계성과 확장성은 필수적으로 고려되어야 하는 부분입니다. 이는 모든 오픈소스 개발자들에게 주어진 과제라 할 수 있습니다.

 OpenInfra & Cloud Native Days Korea 2022 소개

OpenInfra & Cloud Native Day Korea 2022은 OpenStack, Kubernetes, OCP, Ceph 커뮤니티가 합동으로 개최하는 국내 오픈소스 인프라스트럭처 커뮤니티 행사입니다.
2014년 시작으로 2019년까지 이어진 행사는 코로나로 인해 온라인으로 진행되었지만, 3년 만에 기나긴 온라인 행사를 벗어나 대면 행사로 진행되었습니다. Open Infrastructure와 연관된 여러 분야의 기술들을 한자리에서 접하고, 서로 논의하며 공유할 수 있는 기회를 접할 수 있는 행사입니다.

 행사장 분위기

이번 행사는 서울특별시 코엑스 그랜드 볼룸에서 개최되었습니다. 3년 만에 오프라인으로 진행되는 행사라 방문자가 적지는 않을까 우려했는데요. 걱정과는 달리 클라우드에 관심 있는 많은 분들이 참석해 주신 것 같았습니다.
행사장에서는 스폰서로 참여한 여러 기업들의 홍보 부스도 확인할 수 있었습니다. 세션 중간마다 쉬는 시간이 마련되어 있었는데, 그때마다 지루하지 않게 부스 방문하며 기업별 클라우드에 대한 이야기를 들을 수 있었습니다. 여러 부스에 참여하여 다양한 연구자분들의 의견을 들으며 직접 커뮤니케이션할 수 있는 네트워킹도 가능해서 클라우드에 관심 있는 분들에게는 좋은 기회였습니다.

 멀티클라우드 플랫폼을 Kubernetes 위에서 다루는 흥미로운 방법

현재 메가존클라우드에서 SpaceONE의 백엔드 개발을 리딩하며
Clouforet이 메인테이너로 활동하고 있는 송지형 개발자님이 연사로 발표를 진행해 주셨습니다.
처음엔 막연히 전 세계 많은 엔지니어들에게 기억될 만한 클라우드 플랫폼을 만들고 싶다는 계획으로 시작된 프로젝트가 현재는 리눅스파운데이션의 정식 프로젝트로 합류하여 본격적인 시작을 진행하고 있습니다.
오픈소스 생태계에서 필요한 외부 시스템과 유기적으로 연동하기 위한 구조로 플러그인 아키텍처를 개발해 Cloudforet에 도입하고자 했습니다. 그에 대한 전제로 인프라는 전부 쿠버네티스 베이스로 동작되는 것을 결정하였습니다. Cloudforet의 플러그인은 모든 명령을 코어로부터 받아서 처리하며 코어와 플러그인 또한 gRPC를 활용해 통신하는 구조로 구성되었습니다.
플러그인을 통해 수집된 클라우드 리소스들은 모두 인벤토리에 저장되게 됩니다. 이때, 클라우드 리소스는 어떤 클라우드 서비스인지에 따라 데이터의 구조가 천차만별입니다. 여기서 다음과 같은 의문점을 제시할 수 있습니다.
“완전히 다른 데이터 구조를 가진 클라우드 정보를 Cloudforet의 UI 콘솔에서는 어떻게 처리하였을까요? “
각각의 클라우드 서비스마다 가지는 데이터가 너무나 다르기 때문에 모든 데이터 내용을 해석해서 프론트에서 하나하나 구현하기란 쉽지 않습니다. 이에 대한 해답으로 저희는 Dynamic Layout이라는 구조를 도입하였습니다. 데이터 Presentation 에 대한 정의를 플러그인에서 처리 가능하도록 하도록 구조화 시키고 이것을 각 클라우드 리소스의 Metadata에서 가지고 다니도록 한 것이죠. 그리고 프론트에서는 해당 Metadata를 읽어와 해석하여, 기계적으로 콘솔에 표현하도록 하였습니다.

일종의 프론트를 멀티클라우드를 소화하기 위한 프레임워크화 시킨 것입니다.

그리고 프론트에서는 해당 metadata를 읽어와 해석하여, 기계적으로 콘솔에 표현하도록 하였습니다. 이것으로 플러그인 개발에 대해서는 프론트 개발 싸이클과 완전히 독립시킬 수 있게 되었습니다.

 마치며

Cloudforet는 다양한 산업 군에서 겪었던 클라우드 경험들을 바탕으로 이슈들을 효과적으로 해결하는 데 그 목적을 두고 개발된 오픈소스 프로젝트입니다. 멀티클라우드 플랫폼으로서 AWS, Azure, Google과 같은 퍼블릭 클라우드의 자원의 에셋, 리소스 비용, 모니터링, 이벤트를 통합하여 관리할 수 있는 것이 주된 특징입니다.
오픈소스 프로젝트인 만큼 Cloudforet는 많은 분들이 관심과 참여로 함께하였으면 좋겠습니다!
 오픈소스 프로젝트 Cloudforet 공식 홈페이지 (클릭)
 개발자 문서 바로가기(클릭)