2019.07.24

칼럼 | '복잡성의 지옥' 쿠버네티스도 하둡처럼 사라질까

Matt Asay | InfoWorld
현재 오픈 소스 사용자의 총애를 받는 것은 단연 쿠버네티스지만 앞서 나왔던 하둡의 인기도 그에 못지않았다. 그러나 사용하기가 무척 어려웠기 때문에 결국 성장의 동력을 잃었다. 쿠버네티스는 여전히 발전 중이지만 캐피털 원의 버나드 골든의 지적처럼 “운영하기가 장난이 아니다”. 쿠버네티스 “경험은 골칫거리(일 수 있다)”는 의 매우 점잖은 표현이다.



쿠버네티스는 하둡의 전철을 밟게 될까? 아마도 그렇지는 않을 것이다. 하둡은 시간이 갈수록 더 복잡해진 반면 쿠버네티스는 계속 쉬워지고 있기 때문이다. 물론 말 그대로 '쉬워'질 일은 없겠지만 쿠버네티스의 복잡성은 하둡의 복잡성과는 결정적으로 다르다. 따라서 쿠버네티스가 향후 오랜 기간 동안 여전히 업계 표준으로 자리 잡을 가능성은 충분하다.

하둡: 계속해서 받기만 한 복잡한 선물
먼저 하둡에 대해서 명확히 하자. 아파치 하둡이 “맵리듀스”로 전환될 당시는 복잡했지만 시간이 지나면서 진화를 거듭했다. 더 강력한 옵션이 생겨났고 신기능이 급증했다. 그러나 이를 함께 사용하기는 쉽지 않았다. 이에 대해 톰 바버는 “하둡은 실제로 어떤 일을 하는가? 맵리듀스는 스파크로 대체됐고 이것 역시 다른 것으로 계속 대체되고 있다. 물론 많은 작업을 할 수 있지만 여전히 투박하다”라고 말했다.

왜 투박할까? 그 해답은 VM웨어의 제러드 로소프가 내놨다. 그는 “하둡이 복잡한 것은 일반적인 하둡 설정이 구성이, 생애주기와 관리 모델이 각기 다른 수십 개의 복잡한 독립적 시스템으로 되어 있기 때문이다”라고 말했다. 그 결과 플룸(Flume), 추콰(Chukwa), 하이브(Hive), 피그(Pig), 주키퍼(ZooKeeper) 등 멋진 이름의 이들을 함께 사용하는 것은 끔찍한 일이 됐다. 호스트 애널리틱스 CEO 데이브 켈로그의 주장대로 하둡은 “복잡한 솔루션 스택”이며 그 모든 복잡함은 온전히 사용자가 감당해야 한다.

쿠버네티스와 하둡의 가장 큰 차이는 하둡을 확장하기 위해 사용하는 모델이다. 이에 대해 로소프는 “하둡은 사람들이 이를 어떻게 확장할지에 대해 생각하지 않았다. 그 결과 서로 호환되지 않는 확장 프로그램의 생태계가 만들어졌다. 반면 쿠버네티스가 제대로 해낸 것이 바로 확장 방식이다. 운영자들(CRI/CSI/CNI)은 업체가 급격히 늘어나더라도 분별 있는 방식으로 늘어가게 해준다. 즉, 하둡과 그 비호환 확장 프로그램들과는 달리 수십 개의 운영자가 있는 쿠버네티스는 여전히 쿠버네티스다”라고 말했다.

쿠버네티스, '믿을 수 있는' 복잡성
물론 쿠버네티스가 간단하다는 말은 아니다. 쿠버네티스를 만든 사람 중 한 명인 헵티오(Heptio)(VM웨어)의 조 베다조차 “쿠버네티스는 복잡한 시스템인 것이 맞다”라고 인정했다. 그는 이러한 복잡성이 어느 정도 필요하다고 주장했다. “하는 일이 많고 새로운 추상화를 가져오기” 때문이다. 그렇다면 모든 사람이 그 추상화(그리고 화려한 부가 기능)를 항상 필요로 할까? 그렇지 않다. 베다는 “쿠버네티스 사용자 중에는 더 간단한 것으로도 충분한 사람이 많다고 확신한다”라고 말했다.

그러나 쿠버네티스를 필요로 하는 사람에게는 쿠버네티스가 사람들이 이미 익숙한 다른 시스템보다 꼭 더 복잡한 것은 아니라고 베다는 강조한다. 단지 “새롭고” 복잡한가 아니면 “오래되고 편한데” 복잡한가의 문제일 수 있다.

"엔지니어는 배워야 하는 복잡성 대비 구축해야 하는 복잡성을 무시하는 경향이 있다. 젠킨스(Jenkins), 바쉬(Bash), 퍼펫(Puppet)/셰프(Chef)/솔트(Salt)/앤서블(Ansible), AWS, 테라폼(Terraform) 등으로 복잡한 배치 시스템을 만들면 ‘본인’이 편안한 고유의 복잡성 브랜드가 생긴다. 유기적으로 자라났기 때문에 복잡하게 느껴지지 않는다.

그러나 이처럼 유기적으로 키운 시스템에 도움을 줄 새로운 사람을 데려오는 것은 어렵다. 도구 중 일부를 아는 사람들일지는 몰라도 그들을 한자리에 모은 방식은 유일무이하다. 필자가 생각하기에 여기에서 바로 쿠버네티스가 가치를 더한다. 쿠버네티스는 일반적인 문제를 해결하는 추상화를 제공한다. 그러한 문제에 대해 사람들이 이해하고 해결 기술을 갖춰나갈수록 더 많은 상황에서 생산성이 높아진다. 힘들게 배워야 한다! 그래도 그러한 기술은 이제 가치가 있으며 여러 환경과 프로젝트, 일 사이를 이동해 가며 사용할 수 있다"


이제 이해가 가는가? X라는 회사에서 구축한(그리고 그 회사에만 볼 수 있는) 특정 배치 시스템에 존재하는 복잡성과는 달리, 쿠버네티스로 습득하는 종류의 복잡성은 옮겨가는 회사마다 계속 따라올 수 있다. 따라서 다른 시스템들에 비해 훨씬 덜 복잡해진다. 지식을 가지고 갈 수 있기 때문이다. 즉, “한 번 배우면 어디에나 적용할 수 있다.”
 
한 번 배우면 어디에나 적용 가능
그러한 학습은 하둡보다 훨씬 쉽다. 쿠버네티스는 하둡과 달리 익숙해지기 더 쉬운 시스템이다. 쿠버네티스가 실행 가능한 장소에도 그 이유가 있다. 개러스 러시그로브가 지적한 것처럼, “쿠버네티스는 다른 유사한 사례에 비해 로컬 실행이 훨씬 쉽다(도커 데스크톱, 카인드(Kind), 마이크로쿠버네티스(MicroK8s)). 진입 장벽을 낮추면 익숙해지기 쉬워진다. 복잡하다고 여겨졌던 것이 해결된다.”라고 말했다.

또한 도움이 되는 것은, 클라우드 네이티브 컴퓨팅 재단 임원 크리스 아니츠크가 강조한 것처럼, “분산 시스템은 본질적으로 복잡하지만, 쿠버네티스의 장점은 전세계 모든 주요 클라우드 제공업체와 여러 업체가 쿠버네티스의 관리 인증 버전(포크 없음)을 제공한다는 점이다. 이는 적정 규모 관리의 복잡성이 있는 대부분의 사용자에 도움이 된다"라고 말했다. 그렇다고 해도, 타말 사하가 지적한 것처럼 적절한 질문은 “쿠버네티스가 해결하려고 하는 문제를 감안할 때 과연 복잡한가”하는 것이다. 아니츠크의 답변은 “아니다”이다.

“쿠버네티스가 하둡처럼 될 것인가?”라는 질문에 대한 답도 마찬가지다. 쿠버네티스는 그 단계를 지난 지 이미 오래됐다. 물론, 누군가 단정한 것처럼, 쿠버네티스는 복잡한 오케스트레이션 도구이며 모든 용도에 이상적이지는 않다. 이 분야의 많은 도구가 그렇듯이, 배우고 사용하고 이해하려면 시간이 걸린다. ‘몇 시간으로는 충분하지 않을 것이다’. 복잡한 문제를 해결하는 복잡한 도구이기 때문이다. 그러나 베다의 주장처럼 “의도적인 복잡함이 있는가 하면 통제할 수 없는 우발적인 복잡함이 있다.” 하둡은 후자인 반면 쿠버네티스는 전자에 해당한다. 쿠버네티스는 컨테이너 오케스트레이션의 업계 표준으로 승승장구할 것이다. ciokr@idg.co.kr



2019.07.24

칼럼 | '복잡성의 지옥' 쿠버네티스도 하둡처럼 사라질까

Matt Asay | InfoWorld
현재 오픈 소스 사용자의 총애를 받는 것은 단연 쿠버네티스지만 앞서 나왔던 하둡의 인기도 그에 못지않았다. 그러나 사용하기가 무척 어려웠기 때문에 결국 성장의 동력을 잃었다. 쿠버네티스는 여전히 발전 중이지만 캐피털 원의 버나드 골든의 지적처럼 “운영하기가 장난이 아니다”. 쿠버네티스 “경험은 골칫거리(일 수 있다)”는 의 매우 점잖은 표현이다.



쿠버네티스는 하둡의 전철을 밟게 될까? 아마도 그렇지는 않을 것이다. 하둡은 시간이 갈수록 더 복잡해진 반면 쿠버네티스는 계속 쉬워지고 있기 때문이다. 물론 말 그대로 '쉬워'질 일은 없겠지만 쿠버네티스의 복잡성은 하둡의 복잡성과는 결정적으로 다르다. 따라서 쿠버네티스가 향후 오랜 기간 동안 여전히 업계 표준으로 자리 잡을 가능성은 충분하다.

하둡: 계속해서 받기만 한 복잡한 선물
먼저 하둡에 대해서 명확히 하자. 아파치 하둡이 “맵리듀스”로 전환될 당시는 복잡했지만 시간이 지나면서 진화를 거듭했다. 더 강력한 옵션이 생겨났고 신기능이 급증했다. 그러나 이를 함께 사용하기는 쉽지 않았다. 이에 대해 톰 바버는 “하둡은 실제로 어떤 일을 하는가? 맵리듀스는 스파크로 대체됐고 이것 역시 다른 것으로 계속 대체되고 있다. 물론 많은 작업을 할 수 있지만 여전히 투박하다”라고 말했다.

왜 투박할까? 그 해답은 VM웨어의 제러드 로소프가 내놨다. 그는 “하둡이 복잡한 것은 일반적인 하둡 설정이 구성이, 생애주기와 관리 모델이 각기 다른 수십 개의 복잡한 독립적 시스템으로 되어 있기 때문이다”라고 말했다. 그 결과 플룸(Flume), 추콰(Chukwa), 하이브(Hive), 피그(Pig), 주키퍼(ZooKeeper) 등 멋진 이름의 이들을 함께 사용하는 것은 끔찍한 일이 됐다. 호스트 애널리틱스 CEO 데이브 켈로그의 주장대로 하둡은 “복잡한 솔루션 스택”이며 그 모든 복잡함은 온전히 사용자가 감당해야 한다.

쿠버네티스와 하둡의 가장 큰 차이는 하둡을 확장하기 위해 사용하는 모델이다. 이에 대해 로소프는 “하둡은 사람들이 이를 어떻게 확장할지에 대해 생각하지 않았다. 그 결과 서로 호환되지 않는 확장 프로그램의 생태계가 만들어졌다. 반면 쿠버네티스가 제대로 해낸 것이 바로 확장 방식이다. 운영자들(CRI/CSI/CNI)은 업체가 급격히 늘어나더라도 분별 있는 방식으로 늘어가게 해준다. 즉, 하둡과 그 비호환 확장 프로그램들과는 달리 수십 개의 운영자가 있는 쿠버네티스는 여전히 쿠버네티스다”라고 말했다.

쿠버네티스, '믿을 수 있는' 복잡성
물론 쿠버네티스가 간단하다는 말은 아니다. 쿠버네티스를 만든 사람 중 한 명인 헵티오(Heptio)(VM웨어)의 조 베다조차 “쿠버네티스는 복잡한 시스템인 것이 맞다”라고 인정했다. 그는 이러한 복잡성이 어느 정도 필요하다고 주장했다. “하는 일이 많고 새로운 추상화를 가져오기” 때문이다. 그렇다면 모든 사람이 그 추상화(그리고 화려한 부가 기능)를 항상 필요로 할까? 그렇지 않다. 베다는 “쿠버네티스 사용자 중에는 더 간단한 것으로도 충분한 사람이 많다고 확신한다”라고 말했다.

그러나 쿠버네티스를 필요로 하는 사람에게는 쿠버네티스가 사람들이 이미 익숙한 다른 시스템보다 꼭 더 복잡한 것은 아니라고 베다는 강조한다. 단지 “새롭고” 복잡한가 아니면 “오래되고 편한데” 복잡한가의 문제일 수 있다.

"엔지니어는 배워야 하는 복잡성 대비 구축해야 하는 복잡성을 무시하는 경향이 있다. 젠킨스(Jenkins), 바쉬(Bash), 퍼펫(Puppet)/셰프(Chef)/솔트(Salt)/앤서블(Ansible), AWS, 테라폼(Terraform) 등으로 복잡한 배치 시스템을 만들면 ‘본인’이 편안한 고유의 복잡성 브랜드가 생긴다. 유기적으로 자라났기 때문에 복잡하게 느껴지지 않는다.

그러나 이처럼 유기적으로 키운 시스템에 도움을 줄 새로운 사람을 데려오는 것은 어렵다. 도구 중 일부를 아는 사람들일지는 몰라도 그들을 한자리에 모은 방식은 유일무이하다. 필자가 생각하기에 여기에서 바로 쿠버네티스가 가치를 더한다. 쿠버네티스는 일반적인 문제를 해결하는 추상화를 제공한다. 그러한 문제에 대해 사람들이 이해하고 해결 기술을 갖춰나갈수록 더 많은 상황에서 생산성이 높아진다. 힘들게 배워야 한다! 그래도 그러한 기술은 이제 가치가 있으며 여러 환경과 프로젝트, 일 사이를 이동해 가며 사용할 수 있다"


이제 이해가 가는가? X라는 회사에서 구축한(그리고 그 회사에만 볼 수 있는) 특정 배치 시스템에 존재하는 복잡성과는 달리, 쿠버네티스로 습득하는 종류의 복잡성은 옮겨가는 회사마다 계속 따라올 수 있다. 따라서 다른 시스템들에 비해 훨씬 덜 복잡해진다. 지식을 가지고 갈 수 있기 때문이다. 즉, “한 번 배우면 어디에나 적용할 수 있다.”
 
한 번 배우면 어디에나 적용 가능
그러한 학습은 하둡보다 훨씬 쉽다. 쿠버네티스는 하둡과 달리 익숙해지기 더 쉬운 시스템이다. 쿠버네티스가 실행 가능한 장소에도 그 이유가 있다. 개러스 러시그로브가 지적한 것처럼, “쿠버네티스는 다른 유사한 사례에 비해 로컬 실행이 훨씬 쉽다(도커 데스크톱, 카인드(Kind), 마이크로쿠버네티스(MicroK8s)). 진입 장벽을 낮추면 익숙해지기 쉬워진다. 복잡하다고 여겨졌던 것이 해결된다.”라고 말했다.

또한 도움이 되는 것은, 클라우드 네이티브 컴퓨팅 재단 임원 크리스 아니츠크가 강조한 것처럼, “분산 시스템은 본질적으로 복잡하지만, 쿠버네티스의 장점은 전세계 모든 주요 클라우드 제공업체와 여러 업체가 쿠버네티스의 관리 인증 버전(포크 없음)을 제공한다는 점이다. 이는 적정 규모 관리의 복잡성이 있는 대부분의 사용자에 도움이 된다"라고 말했다. 그렇다고 해도, 타말 사하가 지적한 것처럼 적절한 질문은 “쿠버네티스가 해결하려고 하는 문제를 감안할 때 과연 복잡한가”하는 것이다. 아니츠크의 답변은 “아니다”이다.

“쿠버네티스가 하둡처럼 될 것인가?”라는 질문에 대한 답도 마찬가지다. 쿠버네티스는 그 단계를 지난 지 이미 오래됐다. 물론, 누군가 단정한 것처럼, 쿠버네티스는 복잡한 오케스트레이션 도구이며 모든 용도에 이상적이지는 않다. 이 분야의 많은 도구가 그렇듯이, 배우고 사용하고 이해하려면 시간이 걸린다. ‘몇 시간으로는 충분하지 않을 것이다’. 복잡한 문제를 해결하는 복잡한 도구이기 때문이다. 그러나 베다의 주장처럼 “의도적인 복잡함이 있는가 하면 통제할 수 없는 우발적인 복잡함이 있다.” 하둡은 후자인 반면 쿠버네티스는 전자에 해당한다. 쿠버네티스는 컨테이너 오케스트레이션의 업계 표준으로 승승장구할 것이다. ciokr@idg.co.kr

X