2019년
페럼타워, 삼화타워, T타워 (을지로입구)

지난 2019년 7월 18-19일 양일간 ‘Open Infrastructure & Cloud Native Days Korea 2019’ 행사가 개최되었습니다. 이번 행사는 국내 공개SW 커뮤니티(OpenStack, Kubernetes, Ceph, OCP)가 주최하였고, 정보통신산업진흥원(NIPA)과 OpenStack Foundation, 그리고 공개SW 커뮤니티 (OpenStack, Kubernetes, Ceph, OCP)가 공동 주관하며 커뮤니티 연합 성격의 컨퍼런스로 진행됐습니다.

 

행사는 오프닝 세션 포함, 이틀간 총 60개 세션으로 구성되었습니다. 기술과 지식을 공유하는 커뮤니티 행사답게 공개SW 진영의 저명한 발표자들이 모여 다양한 주제의 세션을 제공하는 것이 인상적이었습니다. 오전에는 기조 연설, 오후에는 기술 세션이 주를 이뤘는데요. 기조 연설은 클라우드 환경의 과거와 현재에 대한 통찰 그리고 미래에 대한 전망을 바탕으로 다뤄졌으며, 이러한 환경을 만드는데 큰 역할을 하고 있는 공개SW와 IT생태계에 대한 설명이 함께 있었습니다. 특히, 카카오의 공용준 클라우드 파트장의 ‘Cloud, Current Currents and Directions with open powers’ 세션이 인기를 끌었습니다. 

[기조강연] ‘Cloud, Current Currents and Directions with open powers’
(카카오 공용준 클라우드 파트장)

 

현재 클라우드의 쟁점 이슈(AI 클라우드 서비스화, 이기종 클라우드(heterogeneous cloud, 이하 이기종 클라우드), 공개SW 진영과 클라우드 벤더 간의 라이선스 이슈)들에 대해 소개하고, 향후 클라우드가 진화함에 있어 공개SW와 오픈 인프라가 어떻게 도움을 줄 수 있을지 전망하는 시간이었는데요.

 

발표를 맡은 공용준 파트장은 먼저, 클라우드와 기업 실무자의 비즈니스, 그리고 해야 하는 일의 결합이 복잡해지는 것을 지적했습니다. 클라우드 환경이 발전하는 과정을 아래와 같이 4단계로 구분 지었습니다. 

 

o 1단계 (Basic) : 각자가 자신의 환경에서 자신이 쓰기 위해 클라우드를 구성하는 단계
o 2단계 (Standard) : ‘Basic’ 단계에서 구성한 자산을 내부에서 API로 활용하기 시작하고, 이를 표준화 및 자동화 구성하는 단계
o 3단계 (Service) : ‘Standard’ 단계에서 구성한 클라우드 자산을 외부에 공개하는 단계 
 - IaaS(Infrastructure as a Service), PaaS(Platform as a Service) 형태의 외부 서비스가 주로 시행됨 
o 4단계 (Strategy) : 각 사업자가 자신이 가진 자산을 인프라 형태로 공개하는 것을 넘어 SaaS(Software as a Service) 형태로 더 전략적으로 사용자의 환경에 파고드는 단계

 

클라우드 시장에는 서비스를 개발하는 개발자와 서비스를 사용하는 사용자가 있습니다. 오늘날은 개발자가 만든 클라우드 서비스를 사용자가 활용해, 또 다른 서비스를 생산하는 경우가 빈번해지고 있는데요. 이 때문에 최근에는 클라우드와 클라우드 네이티브의 경계가 모호해지는 양상을 보인다고 파트장은 말했습니다. 

 

또한, 오늘날을 IT 자산을 곧 비즈니스로 인식하고 IaaS와 PaaS 기반의 서비스를 활용하는 시기라고 말하며, SaaS가 클라우드를 이끄는 키워드가 되어 간다는 점을 설명했습니다. 대표적인 예로 아마존웹서비스(AWS)와 후발주자들을 들었습니다. AWS가 IT 자산을 외부에 공개하고, 외부 기업이 다시 그 IT 자산을 쓰는 것에서 알 수 있듯, 단순한 기술의 보유가 아닌, 기술을 활용한 발전에 초점을 두면 SaaS 기반 서비스 활용에 집중하게 된다는 것입니다. 


한편, 몽고DB, 레디스, 엘라스틱, 오라클 JDK 등 기존 공개SW에 채택된 라이선스와 이 공개SW를 이용하려는 클라우드 사업자의 비즈니스 모델이 충돌하고 있다는 지적이 이어졌습니다. 성공한 비즈니스를 지속성 있게 유지하는 게 가장 큰 문제가 되는데, 클라우드 환경에선 성공 이전 단계에 도입한 공개SW에 대한 라이선스 이슈가 발생한다는 것입니다. 공개SW를 활용하는 사람들과 커뮤니티 내부에 많은 논쟁이 발생하며, 라이선스 충돌 문제가 점점 심각해지고 있다고 파트장은 말했습니다. 

 

마지막으로, 공용준 파트장은 향후 클라우드는 이기종 클라우드 형태가 될 것으로 전망했습니다. 이기종 클라우드는 멀티 클라우드와 하이브리드 클라우드가 결합된 형태, 즉, 여러 퍼블릭 클라우드와 기업의 자체 프라이빗 클라우드를 혼용하는 시나리오를 의미합니다. 일반적으로 프라이빗 클라우드는 보안과 가성비가 좋고 조직의 기존 기술자산에 친숙한 장점이 있으나 기능과 확장성은 아쉬운 반면, 퍼블릭 클라우드는 기능과 확장성이 넉넉한 반면 가성비와 기술 친숙성은 떨어지기 마련인데요. 이기종 클라우드는 양쪽의 이점을 온전히 취할 수 있다는 점에서 유리합니다. 공용준 파트장은 이러한 보완적 클라우드 형태를 통해 각 기업이 비즈니스 효율을 증대시킬 수 있을 것이라 예상했습니다.

 

행사에는 기조연설 외에도 다양한 기술 세션이 제공되었습니다. 각 세션 별 서로 다른 주제와 세션 구성 방식을 통해 참관객들의 관심을 유도했는데요. 그 중에서도 다수의 청중이 참관했거나, 특별한 주제를 다뤘던 세션을 소개합니다. 

 

 

[기술세션 1] ‘Multi-Cluster Service Mesh’
(SK C&C 송민영, 나정호 엔지니어)

 

나정호 엔지니어는 멀티 클라우드 위 쿠버네티스 클러스터 환경에서 서비스 매쉬를 구성하는 방법으로 Istio를 제시했으며, 관리 편의를 위한 GitOps 개념에 대해 소개했습니다. 실제 서비스를 운영하다 보면 여러 가지 운영 이슈가 발생하기 마련입니다. 예를 들면, 모든 설정이 yaml 로 작성되기 때문에, 서비스가 커질수록 yaml 설정 파일도 많아져 관리가 점차 어려워지는 경우가 있습니다. 또한, 하나의 쿠버네티스 클러스터에 프라이빗 클라우드와 퍼블릭 클라우드 노드가 혼재하다 보니, 서비스 수가 많아질 시 각각의 서비스를 어떤 노드로 배포할 것인가에 대한 결정 이슈도 발생할 수 있습니다. 

 

나정호 엔지니어는 GitOps 로 이러한 문제를 해결하는 방법을 제시했습니다. 이를테면, yaml 설정파일은 git으로 형상 관리함과 동시에, 배포 도구로는 argo cd 를 채택하는 것입니다. 여기에서 주목해야 할 부분은 argo cd가 제공하는 sync&diff 기능입니다. argo cd는 git push 이벤트를 받아 이벤트가 발생한 리포지토리의 yaml 설정과 각 서비스가 현재 적용된 yaml 설정을 diff 하여 변경사항이 있을 경우, 해당 yaml을 쿠버네티스 배포에 적용함으로써 동기화를 맞춰주는 개념입니다.

 

한편, 송민영 엔지니어는 Istio를 활용하여 상용 환경에서의 디버깅 수행에 대한 아이디어를 발표했습니다. Istio의 트래픽 미러링 기능을 이용해, 상용 환경에서 문제가 발생하는 요청을 스테이징 환경으로 복사 전달하여 상용 서비스에 영향을 주지 않고 디버깅할 수 있을 것이라는 의견인데요. 검증되지 않은 아이디어의 제시이지만, 기술 공유의 본질에 대해 다시 한번 생각해볼 수 있는 시간이었습니다.

[기술세션 2] ‘Community OpenStack & Ceph 기반 서비스 구축 사례 및 운영 장애 해결 방안’ 
(오픈소스컨설팅 김호진 이사, 이영주 차장)

 

“Community OpenStack & Ceph” 세션에서는 오픈스택에 대한 개발 이력과 사용성에 대한 심도 있는 이야기를 다루었습니다. 오픈소스컨설팅의 김호진 이사에 의하면, 오픈스택은 각 분야마다 기술력 있는 벤더가 참여하여 잘 만들어진 공개SW 프로젝트입니다. 2015년 Liberty 버전을 출시한 당시 이미 충분한 안정성을 확보하고 있었다고 하는데요. 이후 오픈스택 시장이 커지자 각 벤더들이 커뮤니티 버전을 본인들의 하드웨어에 맞게 커스텀해서 제품을 내놓았지만, 어느 벤더도 오픈스택 시장을 주도하지는 못하고 있다고 합니다. 그 이유는 바로 오픈스택의 기술 범위가 워낙 넓어서 한 벤더가 모두 커버할 수가 없었기 때문인데요. 그러한 이유로 오픈스택 시장은 현재까지도 커뮤니티가 주도하고, 벤더는 커뮤니티의 라이프사이클을 따라가는 그림이 그려지고 있다고 합니다. 이 외, 김호진 이사는 다양한 사례를 통해 커뮤니티 오픈스택의 사용성에 대해 강조했습니다. 고수의 아우라가 물씬 느껴지는 깊이 있는 세션이었습니다.

 

이어서 이영주 차장은 Ceph 스토리지를 운영하며 겪은 장애 경험담의 발표가 있었습니다. Ceph 클러스터를 운영하던 중 디스크가 부족해지자 Ceph 설정에 의해 해당 노드에 read/write가 멈추는 장애가 발생했는데요. 조치를 취하기 위해 디스크가 부족한 노드에서 특정 데이터를 삭제했더니 전체 Ceph 클러스터가 먹통이 되어 버렸다는 것입니다. 이영주 차장은 이를 한 땀 한 땀 수동으로 복구 및 업그레이드하며 해결했으며, 그 과정에서 발견한 장애를 유발하는 Ceph가 가지는 기본 설정과 절대로 삭제하면 안 되는 데이터 분류와 같은 다양한 노하우를 전달해 주었습니다. 실무자가 실제 서비스 운영 중에 장애를 예방할 만한 충분한 힌트가 되는 고급 정보들로, 실제 상황과 함께 자세한 설명이 곁들여져 많은 실무자들의 호응을 얻었습니다.

[기술세션 3] ‘엔씨소프트에서 Kubernetes 운영하기’ 
(엔씨소프트 오태경, 강정식 엔지니어)

 

실제 기업이 쿠버네티스 등 공개SW 프로젝트를 도입하고 운영하는 사례에 대한 발표도 있었습니다. 엔씨소프트 오태경 엔지니어는 엔씨소프트가 쿠버네티스를 도입하게 된 배경과 도입 과정에 대해 상세하게 안내해 주었습니다. 엔씨소프트는 서비스 운영팀에서 쿠버네티스 환경에 대한 사용자 요구가 있다고 판단, 2015년 1.0 버전을 도입했다고 하는데요. 이 과정에서 한국 최초로 CNCF 멤버로 등록하게 되었으며, 이후 2016년에 최초로 라이브 서비스를 쿠버네티스 환경에 올렸습니다. 서비스를 점차 확장하면서 2017년에는 쿠버네티스 클러스터 규모를 좀 더 확장하게 되었는데요. 여기까지는 프라이빗 클라우드 환경에서만 구성되어 있었다고 합니다. 그러던 중, IDC 정전으로 전체 클러스터가 깨지는 현상을 경험하며, 2018년 하이브리드 클라우드(IDC를 기본으로 하고 퍼블릭 노드를 혼합하여 사용)를 구성하기로 결정하였습니다. 현재는 AI 서비스를 위한 GPU 노드까지 구성된 상태로, 쿠버네티스를 사내 서비스 형태로 제공하는 KaaS를 제공중이며, 향후 서버리스 컴퓨팅까지 쿠버네티스에서 서비스하기 위해 준비중이라고 합니다.

 

운영 중 습득한 노하우도 공개되었습니다. 예를 들어, 업그레이드가 필요한 시점이 오면 한 번에 최신 버전으로 올리기보다는 마이너 버전을 하나씩 올려야 한다는 점, 쿠버네티스의 모든 설정 정보를 저장하는 etcd도 깨질 우려가 있으니 사전에 대응책을 마련해 두어야 한다는 점 등 다양한 경험담을 공유했는데요. 생생한 경험담에서 비롯되는 인사이트 때문인지, 해당 세션은 이번 세미나에서 손에 꼽힐 만큼 많은 질문과 관심을 받았습니다.

 

엔씨소프트의 세션은 기업에서 새로운 기술을 도입할 때, 그 목적이 엔지니어의 자아실현이 아닌, 사용자의 요구가 바탕이 될 때, 명분이 훨씬 합리적이며 도입과정도 순탄하다는 점을 일깨워 주었습니다. 새로운 기술을 도입을 앞둔 기업과 실무자에게 많은 생각의 거리를 던져주었을 것으로 보입니다. 

[기술세션 4] ‘Dive into Kubernetes internal’ 
(오라클 강인호 부장)

 

기업의 케이스 발표가 아닌, 공개SW 커뮤니티 멤버로서 진행된 발표도 있었습니다. 오라클 강인호 부장의 세션이 대표적이었는데요. 강인호 부장은 발표에 앞서 오라클을 대표해서 온 것이 아니라 쿠버네티스 커뮤니티의 한 명으로 참석한 것임을 강조했습니다. 세션 역시 신기술이나 엔터프라이즈급 구성에 대한 것이 아니라 쿠버네티스 내부를 들여다보는 컨셉을 취하며 데모 위주로 이루어졌습니다. 

 

쿠버네티스의 모든 설정 정보는 etcd에 저장되고, 각 컴포넌트 간 통신은 무조건 API 서버를 통해서 이루어집니다. API 서버를 통해 동작하는 방식은 이벤트 체인 방식이며, 스트림을 열어놓고 이벤트가 발행하면 각각의 이벤트 체인에 따라 필요한 구독자가 이벤트를 처리하는 형태로 이루어져 있습니다. 이를 위해 controller loop를 구성해 전달받은 이벤트와 각 센서가 스캔한 상태가 다를 경우, 원하는 상태와 싱크를 맞추는 과정을 반복하는 과정이 바로 쿠버네티스의 운영이라고 하는데요. 실무자의 입장에서 궁금했던 곳을 시원하게 긁어주는 세션이었으며, 커뮤니티 행사에서만 느낄 수 있는 커뮤니티 본연의 임무에 충실한 발표였다는 평을 받았습니다.

Open Infrastructure & Cloud Native Days Korea 2019는 을지로에 위치한 페럼타워, 삼화타워, T타워 총 3곳의 행사장에서 진행되었습니다. 그중, T타워에는 참관객을 위한 전시부스도 설치되었는데요. 개수가 많지는 않았지만, 깔끔하고 널찍하게 마련된 부스는 많은 참관객의 관심을 받았습니다. 

전시 부스에 참여한 기업들의 준비성과 감각도 돋보였습니다. 아직 외부에 공개되지 않은 서비스를 선보이며 참관객의 흥미와 기대감을 유발하는 기업이 있는가 하면, 캐릭터 경품, 소정의 게임 등을 준비해 재미를 더하는 기업도 있었습니다. 휴식시간에 잠깐 둘러보는 것으로는 부족할 만큼 알찬 부스였습니다.

 

Open Infrastructure & Cloud Native Days Korea는 국내 공개SW 커뮤니티 및 관련 기관이 힘을 합쳐 작년부터 진행해 온 대규모 커뮤니티 행사입니다. 올해도 많은 관심 속에 무사 성료 되었는데요. 마치 물 만난 물고기처럼 다양한 세션과 부스를 경험하고 기뻐하는 참관객들을 보며, 이처럼 하나의 분야가 아닌, 서로 연관된 여러 분야의 기술들을 한자리에서 보고 서로 논의하고 공유할 수 있는 커뮤니티 행사에 대한 니즈가 얼마나 많았었는가를 실감할 수 있었습니다. 이러한 대규모 커뮤니티 행사들이 앞으로 더 다양해지고, 오래 지속되기를 바라봅니다. 

 

-공개SW역량프라자-

맨 위로
맨 위로