본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

구글이 '오픈소스로 공개할' 기술을 결정하는 방법

OSS 게시글 작성 시각 2018-08-08 11:21:11 게시글 조회수 5501

2018년 08월 07일      

ⓒ CIO Korea, Scott Carey | Computerworld UK

 

구글은 오픈소스 문화를 매우 장려하는 기업으로 알려져 있다. 실제로 텐서플로우나 쿠버네티스 등 커뮤니티와 여러 프로젝트에 상당한 양의 코드를 기여하며 많은 영향을 미치고 있다.

최근 샌프란시스코에서 열린 구글 클라우드 넥스트(Google Cloud Next) 행사에서 GCP(Google Cloud Platform) 오픈소스 전략 담당자 새라 노보트니와 GCP 엔지니어링 부대표 멜로디 멕퍼셀이 구글의 오픈소스 전략과 문화에 대한 자세한 내용을 풀어냈다. 노보트니는 “구글은 오랫동안 오픈소스 커뮤니티에 참여해 왔다. 12년 넘게 오픈소스 프로그램을 운영하고 있고, 기업과 프로젝트, 그리고 프로젝트의 문화를 보호하는 방식으로 다른 대기업과도 협력했다”라고 말했다.

쿠버네티스와 텐서플로우
구글의 오픈소스라고 하면 바로 떠오르는 프로젝트가 2개 있다. 텐서플로우(TensorFlow)와 쿠버네티스(Kubernetes)다. 노보트니가 말했듯 구글은 지난 수년 동안 소규모 라이브러리부터 STK(Systems Tool Kit)까지 2,400개가 넘는 프로젝트를 오픈소스화했다. 그러나 구글을 명실공히 오픈소스 기업으로 만든 것은 누가 뭐래도 업계 전반에 영향을 미치는 이 2개 프로젝트다.

간략하게 말해 쿠버네티스는 컨테이너 오케스트레이션 플랫폼이다. 데브옵스 팀이 애플리케이션 코드를 배포, 관리하는 방식을 바꾸어 놓았다. 텐서플로우는 개발자에게 머신러닝 모델 개발과 적용의 장벽을 크게 낮춰 줬다. 노보트니에 따르면, 구글은 쿠버네티스와 텐서플로우에 대해 '매우 다른 전략적 목표'를 갖고 있다. 쿠버네티스가 완전히 커뮤니티 주도형 플랫폼이라면, 텐서플로우는 그 주도권을 여전히 구글이 갖고 있다.

이번 행사의 Q&A 시간에는 구글이 어떤 기술을 오픈소스화하고, 어떤 기술을 상용화할 것인지 결정하는 기준에 대한 문의가 나왔다. 이에 대해 노보트니는 “구글 내부에서는 그 문제에 대해 상당히 유기적인 태도를 취한다”라고 답했고, 멕퍼셀 역시 “정말 적절한 표현이다”라며 맞장구쳤다.

노보트니는 “현재 그러한 의사 결정과 관련한 절차와 구조를 만드는 중이다. 대신 기존까지의 관행을 설명하면, 개발자가 와서 ‘여기 이렇게 괜찮은 게 있어요’라고 말해도 제품 팀이나 리더십 팀은 그것이 커뮤니티 전반에 엄청난 영향을 미칠 아이템인지, 아니면 심도 있게 자금 지원을 받아야 하는지 판단하지 않았다. 그 결과 엔지니어가 해당 아이템을 오픈소스화 하기 위해 밀어 붙이는 경우가 많았다”라고 말했다.

구글의 오픈소스 전략
구글이 오픈소스에 기여하는 방식은 다양하다. 노보트니는 “구글은 깃허브 오픈소스 프로젝트에 2000만 줄 이상의 코드를 기여했고, 2017년에는 깃허브의 전체 풀 리퀘스트(pull request) 중 1%가 구글러에 의한 것이었다"라고 말했다. 이런 대규모 기여는 여러 클라우드 공급자 간에 손쉽게 전환할 수 있도록 지원하는 구글 클라우드의 기본 정책과도 일맥상통한다. 구글 클라우드는 시장의 선두주자인 아마존 웹 서비스(AWS)나 2인자인 마이크로소프트 애저를 따라 잡기 위해 이런 전략을 도입하고 있다.

노보트니는 “고객이 우리 플랫폼에서 작업하는 데 필요한 툴을 공급하고, 더 장기적이고 넓은 관점에서 고객의 요청을 고려해 여러 가지 클라우드에서 이런 툴에 쉽게 접근하고 이용할 수 있도록 지원하고 있다. 이는 방대한 업무지만 일종의 투자라고 생각한다”라고 말했다.

가장 좋은 예가 지난해 6월 넷플릭스에서 1.0 버전이 나온 배포 자동화 솔루션 스피네이커(Spinnaker)다. 구글은 GCP에서 스피네이커를 지원하기 위해 팀을 구성했다. 멕퍼셀은 "당시 우리는 멀티 클라우드에서 사용할 수 있도록 지원했는데, 지금 생각해도 옳은 결정이었다. 스피네이커에 대한 기여는 지금도 계속 늘고 있다. 그 전까지는 AWS 적용에 초점을 맞췄지만 이제는 범위가 더 넓어졌다"라고 말했다.

이어 "구글은 이 분야에서 아직도 '배우는 중'이지만 스피네이커는 구글이 프로젝트 별로 어떻게 유연하게 대처할 수 있는지 보여준 좋은 예다. 이 프로젝트는 처음부터 구글이 단독으로 맡을 수 없는 프로젝트였고, 그래서 우리는 AWS를 지원하는 넷플릭스와 함께 했다. 결국 멀티 클라우드 프로젝트가 됐고 커뮤니티에 많은 도움이 됐다. 결국 개발자에게도 도움이 됐다”라고 말했다.

 

구글의 영향력 확대에 대한 우려
이러한 구글의 오픈소스 접근 방식은 당연히 개발자에게 인기가 많다. 이런 인기는 필요한 인력을 채용할 때 큰 도움이 된다. 노보트니는 “기업 문화를 바꾸고 더 긍정적으로 커뮤니티 참여하고, 개발자에게 필요한 툴을 제공하는 데 초점을 맞추면 사용자 경험이 저절로 좋아진다. 이러한 기업 문화는 채용 과정에서 더 많은 인재를 불러 모으는 역할을 한다"라고 말했다.

이어 “기술적 솔루션을 고려하거나 전 세계 개발자의 아이디어를 실현할 때 더 열린 방식으로 상호작용하는 구글의 방식이 우리 엔지니어에게 미치는 긍정적인 영향을 직접 체험했고, 나 자신도 크게 고무됐다"라고 덧붙였다. 멕퍼셀도 “이것은 더 많은 협업으로 이어지고, 개발자의 관점 변화로 이어지는 경우를 많이 봤다"라고 말했다.

한편 구글이 오픈소스 커뮤니티를 지배하게 될 수도 있다는 우려에 대해 멕퍼셀은 상당히 낙관적인 태도를 취했다. 그는 “개인적으로, 우리의 행보가 더 많은 경쟁사나 동종 업계 기업의 방향 전환을 촉진하기를 기대하고 있다. 우리가 그들을 오픈소스로 끌어들이는 계기가 되길 바란다. 실제로 마이크로소프트와 아마존 모두 쿠버네티스에 상당한 기여를 하고 있고, 우리는 더 넓은 클라우드 생태계를 만들기 위해 노력하고 있다"라고 말했다.

노보트니는 한발 더 나아가 기업이 오픈소스에 참여가 기업과 커뮤니티 모두에 윈윈이라고 주장했다. 그는 “일부에서는 구글이 이득을 보는 만큼 커뮤니티가 위험에 처하고 손해를 볼 것이라고 말했다. 근거 없는 편 가르기다. 오히려 대기업이 무상으로 오픈소스에 기여한다는 것 자체가 오픈소스 기여자를 효과를 낸다. 부양해야 할 가족이 있으면 돈을 받지 않고 자발적으로 이런 프로젝트에 참여하기가 쉽지 않을 것이다. 따라서 기업의 오픈소스 기여는 오픈소스 커뮤니티와 기업 모두에게 이득이 되는 일이다"라고 말했다.

최신 오픈소스 프로젝트 '이스티오'
구글은 최근 샌프란시스코에서 열린 넥스트 컨퍼런스에서 새 오픈소스 프로젝트인 이스티오의 1.0 버전을 공개했다. 이스티오는 트래픽 플로우 관리와 액세스 정책 이행, 그리고 마이크로서비스 간 텔레메트리(telemetry) 데이터 수집 등의 작업을 환경에 관계 없이 구동하는 공유 매니지먼트 콘솔로 통합하는 서비스 메쉬(service mesh)다.

구글 클라우드의 테크니컬 인프라스트럭처 SVP 얼스 호즐은 구글 클라우드 넥스트 행사를 통해 "이스티오는 구글이 개발한 오픈소스 프로젝트로, 쿠버네티스를 더 높은 단계의 서비스로 확장한다. 코드의 변경 없이도 다양한 위치에 있는 서비스를 전체적으로 발견, 연결 및 모니터링 할 수 있다”라고 말했다. 구글은 지난해부터 IBM, 리프트(Lyft), 피보탈(Pivotal), 시스코(Cisco), 레드햇(Red Hat) 등과 함께 이스티오를 개발해 왔다. ciokr@idg.co.kr 
 

※ 본 내용은 한국IDG(주)(http://www.itworld.co.kr)의 저작권 동의에 의해 공유되고 있습니다.
Copyright ⓒITWORLD. 무단전재 및 재배포 금지

 

[원문출처 : http://www.ciokorea.com/news/39174]

맨 위로
맨 위로