2021.02.03

"쿠버네티스, 왜 이리 배우기 어려운가?" 공동 창업자가 내놓은 답변 보니

Scott Carey | InfoWorld
쿠버네티스 공동 창업자는 컨테이너 오케스트레이션 소프트웨어가 리눅스 커널처럼 보편화되고 구성도 용이해져, 도입을 넘어선 그 다음 단계로 넘어가기를 바라고 있다. 

쿠버네티스의 공동 창업자인 조 베다는 컨테이너 오케스트레이션 툴이 학습하기 까다롭다고 인정하면서, 쿠버네티스가 도입을 넘어 다음 단계로 나아가려면, 커뮤니티가 쿠버네티스 기술을 리눅스 커널처럼 보편화하는 데 초점을 맞춰야 한다고 전했다.

 
ⓒKubernetes
베다는 브라이트토크에서 진행된 ‘무엇이든 물어보세요’ 세션에서 "이제 쿠버네티스는 다양한 생태계의 근간이자 애플리케이션 배포 및 관리를 위한 방식으로 여겨지고 있다"라고 말했다. 쿠버네티스 초창기에는 생각하지 못했던 바다. 베다는 “이렇게 될 것이라고는 예상하지 못했다”라고 말했다.  

쿠버네티스가 엔터프라이즈 개발자들이 사용하는 핵심 기술이 된 만큼 베다는 두 가지 목표를 갖고 있다. 하나는 쿠버네티스를 안정적이면서 유용한 플랫폼으로 만들어, 리눅스 커널처럼 운영체제의 기본 구성요소로 자리잡을 수 있도록 하는 것이다. 

다른 하나는 쿠버네티스에 흥미롭고 새로운 기능을 구축하는 것이다. 베다는 "사람들이 (쿠버네티스에) 놀라운 기능들을 구축하고 있다. 이를 바탕으로 흥미로운 작업을 해볼 수 있을 것이다. 쿠버네티스를 활용한 여러 프로젝트들이 이미 있다"라고 말했다.    

베다는 2014년에 쿠버네티스를 위한 첫 번째 커밋을 작성했다. 그는 구글에서 10년간 근무한 후 현재 VM웨어의 수석 엔지니어로 일하고 있다. 베다가 사람들과 대화를 나누는 가운데 쿠버네티스에 대해 받은 핵심 질문 두 가지에 대한 답을 아래와 같이 정리했다. 

왜 이스티오는 쿠버네티스와 별도로 존재하는가?
베다가 아주 흥미로워 했던 질문 중 하나는 다음과 같다. 오픈소스 서비스 메시인 이스티오(Istio)는 보통 쿠버네티스와 한쌍을 이루고, 구글 엔지니어들이 주로 개발했는데 왜 쿠버네티스와 좀 더 깊이있게 통합되지 못했느냐는 것이었다. 

구글은 클라우드 네이티브 컴퓨팅 재단에 이스티오를 기부하려 하지도, 이스티오의 발전에 기여하려고 하지도 않았다. 구글은 쿠버네티스를 오픈소스화한 이후 이 재단에 넘긴 바 있다. 그러나 구글은 이스티오에 대한 소유권만큼은 훨씬 강력하게 유지하기를 원한다고 베다는 말했다. 

이스티오와 쿠버네티스가 제각각 존재하는 또다른 이유는, 이스티오 외에도 링커드나 마이크로소프트의 오픈 서비스 메쉬 등 서비스 메시를 구현하는 다른 방법이 있기 때문이다. 경우에 따라 서비스 메시를 쿠버네티스와 함께 배포할 필요가 없을 수도 있다. 

쿠버네티스는 왜 배우기 어려운가?
쿠버네티스의 높은 학습 난이도과 관련해 제기되는 불만 중 하나는 YAML 구성 파일 때문이다. 베다는 "YAML은 최적의 방법을 찾기 전까지 임시방편으로 사용됐다. 하지만 최적의 방법이란 존재하지 않았다"라며, “최적의 프로그래밍 언어가 존재하지 않는 것과 같다. 어떤 언어를 사용할지 여부는 개발자가 구현하고 싶은 것과 상황에 따라 결정된다”라고 전했다. 

그런 까닭에 YAML을 훨씬 선언적이면서도 초보자 입장에서 어려움을 덜 느끼도록 만들려는 노력들이 이뤄지고 있다. 예컨대, 헴 차트처럼 단일 통합 환경에서 패키징과 배포를 결합한다거나, 쿠버네티스용 CDK처럼 어려운 부분들 중 일부를 추상화하려는 시도가 이뤄지고 있다. 

또한 베다는 베어메탈에서 쿠버네티스를 운영하기가 여전히 까다롭다고 인정했다. 그는 "베어메탈에서 쿠버네티스를 관리하는 것은 어렵다. 가장 쉬운 방법은 테라폼, 앤서블 또는 클러스터 API처럼 코딩이 가능한 인프라를 사용하는 것이다"라고 말했다. 

이를 통해 코드형 인프라로 전환하면 개발자는 여러 클러스터를 관리하면서 빌드를 더욱 자동화하고 유연성은 더욱 키울 수 있다. 베다는 "자동화와 민첩성을 확보해 보다 안정적인 환경을 구축할 수 있다. 수작업으로 제어해야 하는 단일 클러스터 대신, 푸시와 롤백을 훨씬 빠르게 자율적으로 처리하는 일련의 클러스터를 구축할 수 있다"라고 말했다. 

이어서 그는 쿠버네티스의 유연성에서 기인하는 복잡성을 줄여 사용하기 쉽게 만들어야 한다는 일반적인 시각에 대해 반박했다. 베다는 “오픈소스에는 게이트키퍼가 없고, 무엇을 할 수 없는지 혹은 어떻게 사용해야 하는지 얘기해주는 사람도 없다. 그것이 쿠버네티스의 매력이며, 오픈소스 정신이다. 유연성은 오픈소스의 강점 중 하나다"라고 말했다. ciokr@idg.co.kr



2021.02.03

"쿠버네티스, 왜 이리 배우기 어려운가?" 공동 창업자가 내놓은 답변 보니

Scott Carey | InfoWorld
쿠버네티스 공동 창업자는 컨테이너 오케스트레이션 소프트웨어가 리눅스 커널처럼 보편화되고 구성도 용이해져, 도입을 넘어선 그 다음 단계로 넘어가기를 바라고 있다. 

쿠버네티스의 공동 창업자인 조 베다는 컨테이너 오케스트레이션 툴이 학습하기 까다롭다고 인정하면서, 쿠버네티스가 도입을 넘어 다음 단계로 나아가려면, 커뮤니티가 쿠버네티스 기술을 리눅스 커널처럼 보편화하는 데 초점을 맞춰야 한다고 전했다.

 
ⓒKubernetes
베다는 브라이트토크에서 진행된 ‘무엇이든 물어보세요’ 세션에서 "이제 쿠버네티스는 다양한 생태계의 근간이자 애플리케이션 배포 및 관리를 위한 방식으로 여겨지고 있다"라고 말했다. 쿠버네티스 초창기에는 생각하지 못했던 바다. 베다는 “이렇게 될 것이라고는 예상하지 못했다”라고 말했다.  

쿠버네티스가 엔터프라이즈 개발자들이 사용하는 핵심 기술이 된 만큼 베다는 두 가지 목표를 갖고 있다. 하나는 쿠버네티스를 안정적이면서 유용한 플랫폼으로 만들어, 리눅스 커널처럼 운영체제의 기본 구성요소로 자리잡을 수 있도록 하는 것이다. 

다른 하나는 쿠버네티스에 흥미롭고 새로운 기능을 구축하는 것이다. 베다는 "사람들이 (쿠버네티스에) 놀라운 기능들을 구축하고 있다. 이를 바탕으로 흥미로운 작업을 해볼 수 있을 것이다. 쿠버네티스를 활용한 여러 프로젝트들이 이미 있다"라고 말했다.    

베다는 2014년에 쿠버네티스를 위한 첫 번째 커밋을 작성했다. 그는 구글에서 10년간 근무한 후 현재 VM웨어의 수석 엔지니어로 일하고 있다. 베다가 사람들과 대화를 나누는 가운데 쿠버네티스에 대해 받은 핵심 질문 두 가지에 대한 답을 아래와 같이 정리했다. 

왜 이스티오는 쿠버네티스와 별도로 존재하는가?
베다가 아주 흥미로워 했던 질문 중 하나는 다음과 같다. 오픈소스 서비스 메시인 이스티오(Istio)는 보통 쿠버네티스와 한쌍을 이루고, 구글 엔지니어들이 주로 개발했는데 왜 쿠버네티스와 좀 더 깊이있게 통합되지 못했느냐는 것이었다. 

구글은 클라우드 네이티브 컴퓨팅 재단에 이스티오를 기부하려 하지도, 이스티오의 발전에 기여하려고 하지도 않았다. 구글은 쿠버네티스를 오픈소스화한 이후 이 재단에 넘긴 바 있다. 그러나 구글은 이스티오에 대한 소유권만큼은 훨씬 강력하게 유지하기를 원한다고 베다는 말했다. 

이스티오와 쿠버네티스가 제각각 존재하는 또다른 이유는, 이스티오 외에도 링커드나 마이크로소프트의 오픈 서비스 메쉬 등 서비스 메시를 구현하는 다른 방법이 있기 때문이다. 경우에 따라 서비스 메시를 쿠버네티스와 함께 배포할 필요가 없을 수도 있다. 

쿠버네티스는 왜 배우기 어려운가?
쿠버네티스의 높은 학습 난이도과 관련해 제기되는 불만 중 하나는 YAML 구성 파일 때문이다. 베다는 "YAML은 최적의 방법을 찾기 전까지 임시방편으로 사용됐다. 하지만 최적의 방법이란 존재하지 않았다"라며, “최적의 프로그래밍 언어가 존재하지 않는 것과 같다. 어떤 언어를 사용할지 여부는 개발자가 구현하고 싶은 것과 상황에 따라 결정된다”라고 전했다. 

그런 까닭에 YAML을 훨씬 선언적이면서도 초보자 입장에서 어려움을 덜 느끼도록 만들려는 노력들이 이뤄지고 있다. 예컨대, 헴 차트처럼 단일 통합 환경에서 패키징과 배포를 결합한다거나, 쿠버네티스용 CDK처럼 어려운 부분들 중 일부를 추상화하려는 시도가 이뤄지고 있다. 

또한 베다는 베어메탈에서 쿠버네티스를 운영하기가 여전히 까다롭다고 인정했다. 그는 "베어메탈에서 쿠버네티스를 관리하는 것은 어렵다. 가장 쉬운 방법은 테라폼, 앤서블 또는 클러스터 API처럼 코딩이 가능한 인프라를 사용하는 것이다"라고 말했다. 

이를 통해 코드형 인프라로 전환하면 개발자는 여러 클러스터를 관리하면서 빌드를 더욱 자동화하고 유연성은 더욱 키울 수 있다. 베다는 "자동화와 민첩성을 확보해 보다 안정적인 환경을 구축할 수 있다. 수작업으로 제어해야 하는 단일 클러스터 대신, 푸시와 롤백을 훨씬 빠르게 자율적으로 처리하는 일련의 클러스터를 구축할 수 있다"라고 말했다. 

이어서 그는 쿠버네티스의 유연성에서 기인하는 복잡성을 줄여 사용하기 쉽게 만들어야 한다는 일반적인 시각에 대해 반박했다. 베다는 “오픈소스에는 게이트키퍼가 없고, 무엇을 할 수 없는지 혹은 어떻게 사용해야 하는지 얘기해주는 사람도 없다. 그것이 쿠버네티스의 매력이며, 오픈소스 정신이다. 유연성은 오픈소스의 강점 중 하나다"라고 말했다. ciokr@idg.co.kr

X