본문 바로가기
IT/Future Car

2022 메르세데스 벤츠 쿠버네티스 클러스터 그것이 알고 싶다

by 낙엽 2022. 6. 27.
반응형

메르세데스 벤츠 쿠버네티스 클러스터

 

독일 자동차 회사 메르세데스 벤츠(Mercedes-Benz)의 기술팀은 지난 7년 동안 수백 개의 개별 개발팀을 지원하기 위해 자체 개발한 쿠버네티스 클러스터 900개를 구축했다.

 

이로써 메르세데스 벤츠는 확장 가능하고 관리가 용이하다는 최신 인프라 플랫폼을 갖추게 됐다.

 

 

메르세데스 벤츠는 2014년 구글이 컨테이너 오케스트레이션 시스템인 쿠버네티스를 오픈소스화한 후 2015년부터 애플리케이션 배포 목적으로 쿠버네티스를 활용하기 시작했다.

 

이후 메르세데스 벤츠의 IT 전문 자회사인 메르세데스 벤츠 테크 이노베이션(Mercedes-Benz Tech Innovation)은 내부 전문 역량을 개발해 사업부와 연동되어 각자 고유한 기술 수요가 있는 수백 개의 애플리케이션팀을 지원하고 있다.

 

메르세데스 벤츠 테크 이노베이션 데브옵스 엔지니어 젠스 에랏은 최근 개최된 쿠버콘(KubeCon) 유럽 행사에서단일 공유 쿠버네티스 클러스터는 우리의 수요에 맞지 않고 우리의 요구사항에 맞는 업체 배포판도 없다는 사실을 알고 있었다.

 

대신 우리는 전문 기술을 갖춘 엔지니어가 있었다라며, “동일한 데브옵스팀이 구축하고 개발한 100% 오픈소스 소프트웨어 플랫폼을 구축했고, 라이선스 문제도 기술 지원도 없었다라고 밝혔다.

 

현재 메르세데스 벤츠는 네 곳의 글로벌 데이터센터에서 900개의 온프레미스 쿠버네티스를 운영 중이다. 2021년 말부터 버전 1.23을 실행 중인 오픈스택(OpenStack)을 사용한다.

 

이런 쿠버네티스 자산은 클라우드 서비스 업체와 비교하면 아주 큰 규모는 아니다. 하지만 클라우드 네이티브 컴퓨팅 재단(CNCF) 2019년 조사에 따르면, 50개 이상의 클러스터를 사용하는 조직의 비율은 10%에 불과하다.

 

또한, 메르세데스 벤츠의 쿠버네티스 자산 규모는 쿠번콘 유럽에서 함께 기조연설을 했고 이 기사 작성 시점 현재 210개의 클러스터를 운영 중인 CERN의 쿠버네티스 환경보다 거의 다섯 더 크다.

 

메르세데스 벤츠를 쿠버네티스 클러스터를 얼마나 많이 운영할 수 있을까? 메르세데스 벤츠 테크 이노베이션 수석 전문가 피터 뮐러는우리는 감당 가능한 방식으로 작업하는 데 많은 노력을 기울였다.

 

모든 것이 자동화되어 있어서 클러스터를 500개 또는 1000개 관리해도 주변 시스템이 잘 돌아간다. 만약 클러스터를 500개 더 추가해야 하면 엔지니어는 한 명만 더 추가하면 된다”라고 설명했다.

 

메르세데스 벤츠 쿠버네티스 클러스터

 

관리의 핵심은 클러스터 API(Cluster API)이다. 이 쿠버네티스 프로젝트는 선언적인 클러스터 생성, 구성 및 관리를 지원하는데, 메르세데스 벤츠는 최근에 테라폼(Terraform)과 일부 맞춤형 도구 대신 이 프로젝트를 선택했다.

 

물론 IT 분야의 모든 기술이 그렇듯 완벽한 솔루션은 아니다. 뮐러는클러스터의 개수는 문제가 아니다. 문제는 일부 주변 시스템이고 가끔은 오픈스택도 문제다. 그러나 쿠버네티스의 실행과 확장에는 아무런 문제가 없다”라고 밝혔다.

 

변화하는 조직 문화

 

메르세데스 벤츠 내의 수많은 애플리케이션팀은 각각 저마다의 쿠버네티스 클러스터를 요청할 선택권이 있다. 요청은 메르세데스 벤츠 테크 이노베이션의 뮐러 팀이 구축과 관리를 담당하는 자체 개발 도구를 사용해 자동화된 프로세스를 통해 이루어진다.

 

그 결과, 규모가 작은 스테이징 및 개발 클러스터는 물론, 프로덕션 클러스터도 몇 시간, 빠르면 몇 분 내에 사전 프로비저닝할 수 있다.

 

 

메르세데스 벤츠 테크 이노베이션 팀장 외르크 쉴러는조직적인 관점에서 보면, 5~6년 전에 데브옵스는 신참이었다. 다들구축하는 사람이 실행한다는 말을 했다.

 

공유 플랫폼 제공자로서 그 말은 메르세데스 벤츠 내 각 애플리케이션 팀은 저마다의 쿠버네티스 클러스터를 갖는다는 의미다라고 말했다. 쉴러는우리의 목표는 생태계를 제공하고 자율권이 있는 애플리케이션팀을 갖는 것이다.

 

그 생태계는 셀프 서비스와 API 주도의 원칙으로 뒷받침된다라고 덧붙였다.

 

이 자산은 하나가 아니라 다섯 개의 별도 플랫폼팀이 관리한다. 그 중 두 개를 합친 팀에 소속된 12명 정도의 엔지니어는 핵심적인 서비스형 쿠버네티스(Kubernetes-as-a-service) 플랫폼에 주력하고 있다.

 

이 밖에 서비스형 데이터베이스, 서비스형 로깅 및 모니터링, 그리고 런타임, 레지스트리, 이미지 스캐닝 등을 포함한 컨테이너 보안을 담당하는 플랫폼팀이 있다.

 

메르세데스 벤츠 쿠버네티스 클러스터

 

그러나 이들 팀을 확충하는 일은 회사 입장에서 여전히 어렵다. 쉴러는양질의 쿠버네티스 전문 인력을 찾는 것은 어려운 일이다라며, “쿠버네티스 플랫폼에 관한 교육과 훈련 등을 제공하는 것이 매우 도움이 된다.

 

부트캠프, 훈련 포털, 샌드박스 환경 등으로 개발팀이 상부상조할 수 있는 커뮤니티 접근 방식이 필요하다”라고 강조했다.

 

클라우드로 가는 황금 경로

 

대규모 쿠버네티스 환경을 관리하기 위해 자체 역량을 키운 메르세데스 벤츠 테크 이노베이션은 이제 퍼블릭 클라우드로 옮길 워크로드를 늘리기 위해 준비 중이다.

 

퍼블릭 클라우드에서는 마이크로소프트 애저 쿠버네티스 서비스(Azure Kubernetes Service(AKS))와 아마존 일래스틱 쿠버네티스 서비스(Elastic Kubernetes Service(EKS))와 같은 관리 서비스를 사용해 플랫폼팀과 데브옵스팀의 부담을 덜 수 있다.

 

뮐러는우리는 아직 EKS 시도 여부를 평가하는 단계에 있지만, 지금은 직접 하는 것을 선호한다. 직접 하면 온프레미스와 오프프레미스에서 동일한 아키텍처를 갖기 때문이라고 설명했다.

 

쿠버네티스 관리 버전이 메르세데스 벤츠 테크 이노베이션 플랫폼팀의 부담을 더는 데 도움이 되는 반면, 애플리케이션팀이 컨테이너와 쿠버네티스로 이동하려면 여전히 도움이 필요하다.

 

메르세데스 벤츠 쿠버네티스 클러스터

 

여기에서 진척 속도를 높일 길은 황금 경로다. 황금 경로란 근본적으로 헬름(Helm) 차트인데, ID 및 접근 관리와 같은 특정 기능용 템플릿으로 사용할 수 있다. 따라서 다양한 팀에 걸쳐 반복되는 업무를 줄일 수 있다.

 

뮐러는우리는 황금 경로를 제공해야 하고 부하를 줄이기 위해 뭔가를 서비스형으로 제공해야 하며, 애플리케이션팀이 가장 잘하는 비즈니스 가치를 제공하도록 해야 한다”라고 강조했다.

 

물론 성숙도 수준은 애플리케이션팀마다 다르기 때문에 뮐러는 애플리케이션팀에 안전한 학습 환경을 제공하는 것이 본인의 역할이라고 보고 있다. 뮐러는 애플리케이션팀이 충분히 성숙하면 클라우드로 이동할 수 있다고 말했다.

 

메르세데스 벤츠 테크 이노베이션은 내부 기법을 이용해 황금 경로 중 일부를 관리한다. 나머지는커뮤니티 상태에 있는데, 반응이 좋으면 완전한 소유권 및 관리를 고려할 수 있는 상태다.

 

이상적으로는 이런 황금 경로는 결국스포티파이 백스테이지(Spotify Backstage) 방식의 카탈로그로 명문화될 것이다. 뮐러는 현재모든 서비스를 통합하기 위한 중앙 개발자 포털에 대한 개념 증명을 준비 중이지만 아직 그 단계에 이르지 못했다”라고 덧붙였다.

 

“쿠버네티스 관리, 어렵지 않다”

 

메르세데스 벤츠 테크 이노베이션 제품 책임자 사빈 월츠는 쿠버콘 유럽 행사에서 “쿠버네티스는 여전히 어렵다. 데브옵스 및 개발팀이 알아서 하게 내버려 둬서는 안 된다”라고 강조했다.

 

메르세데스 벤츠 쿠버네티스 클러스터

 

그러나 뮐러는 이제 학습 곡선이 플랫폼 팀이 아닌 애플리케이션 팀을 기다리고 있다고 굳게 믿고 있다. 뮐러는 “쿠버네티스 관리는 깊이 연구하지 않는 한 어렵다.

 

그러나 우리는 관리하고자 하는 것을 깊이 연구하기 때문에 우리에게 쿠버네티스 관리는 어렵지 않다라고 말했다. 애플리케이션 프로젝트 목적의 쿠버네티스는 여전히 어렵다. 데브옵스팀으로써 쿠버네티스를 소비하는 것도 가끔 어렵다라고 덧붙였다.

 

뮐러는 애플리케이션팀이 굳이 심도 있는 전문 지식을 쌓지 않고도 기반 인프라를 이해하도록 돕는 것이 플랫폼팀이 잘할 수 있는 부분이라고 생각한다. 뮐러는일부 팀은 여전히 가상머신 상에 있으면서 쿠버네티스 클러스터로 이동 중이다.

 

이들 팀은 모놀리식 구조를 해체하고 트랜잭션 처리 방식을 이해하고 비동기 통신에 대해 고민하고 쿠버네티스 작동 방식을 이해해야 한다면서그것은 어렵다. 따라서 그냥 내버려 두지 말고 도와줘야 한다”라고 강조했다.

 

반응형

댓글