메인메뉴로 이동 본문으로 이동

컨텐츠 내용

  1. 고객센터
  2. OSS뉴스

OSS뉴스

OSS뉴스 조회 페이지
단 2명이 오픈스택 VM 8천개 맡아보니… OLC관리자 / 2016.06.28

메신저 앱 서비스 회사 카카오가 자사 오픈스택 기반 클라우드 컴퓨팅 인프라의 가상머신(VM) 8천개 이상을 단 2명의 전담인력으로 관리하고 있다고 밝혔다. 대규모 컴퓨팅 자원을 대규모 극소수 인력으로 운영하기 위해 활용 중인 기술과 데브옵스(Devops) 전략도 제시했다.

카카오 클라우드컴퓨팅셀 아키텍트 공용준 수석은 지난 22일 서울 을지로 T타워 수펙스홀 제40회 개발자포럼에 참석해, 자신이 담당하고 있는 카카오의 오픈스택 기반 클라우드 인프라 현황과 자동화 중심의 운영 방법을 발표했다.

이날 공 수석의 발표 자료에 따르면 카카오 클라우드 환경은 3개 리전으로 구성된 오픈스택 킬로(kilo) 버전 인프라로 964개 테넌트가 운영되고, 매일 136개의 VM이 생성 및 제거된다고 쓰여 있었다. 여기서 돌아가는 전체 VM 규모가 7천개로 표기돼 있었지만, 그는 이미 8천개를 넘었다고 언급했다. 카카오에서 8천여개 VM을 관리하는 전담 인력은 몇 명일까? 달랑 2명이다. 

카카오 공용준 수석이 2016년 6월 22일 SK텔레콤 개발자포럼에서 발표한 자료 일부. 카카오 오픈스택 기반 클라우드 인프라에서 발생하는 자원 활용 양상을 단편적으로 제시하고 있다.

카카오 공용준 수석이 2016년 6월 22일 SK텔레콤 개발자포럼에서 발표한 자료 일부. 카카오 오픈스택 기반 클라우드 인프라에서 발생하는 자원 활용 양상을 단편적으로 제시하고 있다.

지난 2월 공개된 카카오의 오픈스택 활용사례[☞참조링크: KakaoTalk speaks volumes about the future of cloud services]에 따르면 공 수석이 언급한 전담인력 2명이 하는 일은 VM 업그레이드 관리, 버그 패치, 신기능 구성 등이다. 그 일부에서 카카오의 수익과 직결되는 '프로덕션서비스'가 구동된다. 물론 프로덕션서비스 환경에는 이 2명만이 아니라, 서비스 운영 품질 보장 업무를 수행하는 인프라 담당팀도 개입한다. 즉 자동 장애 통보, 엔지니어링 서포트, 네트워크 엔지니어링 업무 담당자는 따로 있다.

그렇다고 단 2명이 VM 수천개를 무난하게 관리하길 기대할 수 있다는 얘기는 아니다. 오류나 장애 발생 가능성에 대해 실무자가 수시로 느끼는 부담이 상당할 것이라 짐작된다. 공 수석의 발표 중 프로덕션 서비스를 위한 오픈스택 빌드, 테스트, 배포 자동화툴 'K필드(Kfield)'를 활용하는 업무 흐름을 언급한 부분에서 이를 짐작할 수 있다. 그 일부를 옮겨 본다.

"오픈스택은 오픈소스 소프트웨어라 (상용 소프트웨어 대비) 버그도 있고, 자잘한 패치나 업그레이드를 위한 공수가 많이 필요하다. 커스터마이즈 코드를 적용하기 위해 깃(git)을 사용하고 풀 리퀘스트(pull request)가 날아오면 젠킨스에서 키친 클러스터를 만든 뒤 테스트를 돌려 본 다음, 결과가 (안정적으로) 나오면 병합(merge)을 하는 과정을 거친다. …(중략)… 아주 많은 VM을 관리하고 있기에 스트레스가 굉장히 높은 편이다. (어떤 서비스든) 하나 다운되면, 회사에서 뭐라곤 안 해도 개인적으로는 부담이 된다. 휴먼인터랙션이 (장애 발생을 빌미로) 많아지면 대화가 잘 되는 사람들은 부드럽게 할 수 있지만, 그렇지 않으면 뭔가 하다가 잘 안 된다고 싸우기도 한다."

카카오 공용준 수석이 2016년 6월 22일 SK텔레콤 개발자포럼에서 발표한 자료 일부. 클라우드를 기술이 아닌 자원관리 방법의 하나로 정의하고 이를 실행하기 위해선 이 전제를 공유하는 문화가 바탕에 있어야 한다는 시각을 담고 있다.

카카오 공용준 수석이 2016년 6월 22일 SK텔레콤 개발자포럼에서 발표한 자료 일부. 클라우드를 기술이 아닌 자원관리 방법의 하나로 정의하고 이를 실행하기 위해선 이 전제를 공유하는 문화가 바탕에 있어야 한다는 시각을 담고 있다.

현재 VM 인프라는 카카오의 주요 서비스 기반이다. 향후 그 중요성은 계속 커질 전망이다. 공 수석은 "카카오 드라이버 (서비스) 프로모션은 모두 VM 기반으로 구동됐고, 향후 나올 몇몇 서비스들 역시 모두 VM 기반으로 돌아갈 것"이라며 "얼마전 완전 개편된 사용자인터페이스(UI)로 제공되기 시작한 다음 메일 서비스 역시 완전히 가상화된 인프라에서 VM만으로 제공되고 있다"고 설명했다.

카카오처럼 혼자서 수천개 VM을 관리할 수 있게 만든 핵심 요소는 뭐였을까. 공 수석에 따르면 그건 기술이 아니라 '문화'에 달렸다. 공 수석은 자신들의 조직문화가 '자동화(Automation)'고, 기술은 이 문화를 지원할 수 있는 수단이라고 설명했다. 앞서 그가 실무에 활용 중이라 언급한 깃, 젠킨스, K필드와 같은 툴도 이런 문화를 지원하기 위한 수단일 뿐이다.

공 수석은 같은 맥락에서 클라우드를 기술이 아니라 "프로그래밍할 수 있는 자원관리(Programmable Resource Management)"라는 방법론적 개념으로 정의하고 이를 실현하기 위해 클라우드 데이터센터가 갖춰야 하는 기능 3가지를 제시했다. 중앙집중형 구성관리데이터베이스(Centralized CMDB), 중앙집중형 측정 시스템(Centralized Measuring system), 중앙 배포 시스템(Central Deploying system)이다.

현재 카카오가 이런 기능에 초점을 맞춘 데이터센터 관리시스템을 개발, 활용 중이다.

카카오 공용준 수석이 2016년 6월 22일 SK텔레콤 개발자포럼에서 발표한 자료 일부. 8천개 이상의 VM을 단 2명이 관리할 수 있는 수준의 자동화 관리 전략을 실행하기 위해 클라우드 인프라에 3가지 핵심 기능을 갖추고자 했다는 내용이다.

카카오 공용준 수석이 2016년 6월 22일 SK텔레콤 개발자포럼에서 발표한 자료 일부. 8천개 이상의 VM을 단 2명이 관리할 수 있는 수준의 자동화 관리 전략을 실행하기 위해 클라우드 인프라에 3가지 핵심 기능을 갖추고자 했다는 내용이다.

중앙집중형 CMDB는 구성관리를 네트워크, 서버, 스토리지 등 개별 하드웨어나 시스템이 아니라 데이터센터 수준에서 수행할 수 있게 해 줄 수단이다. 공 수석은 앤서블(Ansible), 퍼펫(Puppet), 셰프(Chef)같은 도구를 쓰는 것만으로는 충분치 않다고 지적했다. ERP, 구성자동화, 자산관리 시스템 등과의 연동을 위한 중앙화된 방식이 필요하다는 설명이다. (생략) 기사더보기