YARN Service

YARN Service

YARN Service 프레임워크는 장기 실행(long running) 서비스를 YARN에서 기본적으로 호스팅하기 위한 일급 지원(first-class support)과 API를 제공합니다. 요컨대 YARN에서 컨테이너화된 서비스를 관리하기 위한 컨테이너 오케스트레이션 플랫폼 역할을 합니다. YARN의 docker 컨테이너와 전통적인 프로세스 기반 컨테이너를 모두 지원합니다.

출처: 문서

본문

개요 (Overview)

이 프레임워크의 책임에는 구성 해석(resolution)과 마운트, 서비스 중지/시작/삭제 같은 수명주기 관리, 서비스 컴포넌트 확장/축소(flex up/down), YARN에서의 서비스 롤링 업그레이드, 서비스의 건강성(healthiness)과 준비 상태(readiness) 모니터링 등이 포함됩니다.

yarn-service 프레임워크는 주로 다음 컴포넌트로 구성됩니다:

  • YARN에서 실행되어 컨테이너 오케스트레이터 역할을 하며 모든 서비스 수명주기 관리를 담당하는 코어 프레임워크(ApplicationMaster).
  • 사용자가 간단한 JSON 스펙을 통해 YARN과 상호작용하여 서비스를 배포/관리할 수 있게 하는 RESTful API 서버.
  • YARN 서비스 레지스트리에 기반한 DNS 서버로, 표준 DNS 조회로 YARN에서 서비스를 발견할 수 있게 합니다.

왜 YARN Service 프레임워크를 써야 하나요?

YARN Service 프레임워크는 기존 서비스를 YARN으로 쉽게 가져올 수 있게 해줍니다. 애플리케이션 관리의 복잡한 저수준 세부 사항을 숨기고 사용자가 새 코드를 작성하도록 강요하지 않습니다. 새 서비스 개발자는 YARN 내부에 대해 걱정할 필요 없이 자신의 서비스(들)의 컨테이너화에만 집중하면 됩니다.

또한 이 기능의 또 다른 큰 이점은 이제 전통적인 배치 처리(batch processing) 작업과 장기 실행 서비스를 단일 플랫폼에서 모두 사용할 수 있다는 것입니다! 이 워크로드를 결합하는 이점은 두 가지입니다:

  • 다뤄야 할 클러스터가 하나뿐이므로 클러스터 운영이 크게 단순해집니다.
  • 배치 작업과 서비스를 한 클러스터에서 공유하게 하면 리소스 활용률을 크게 높일 수 있습니다.

어떻게 시작하나요?

이 기능은 alpha 상태이므로 API와 명령줄은 변경될 수 있습니다. 시간이 지남에 따라 문서도 계속 갱신할 것입니다.

QuickStart는 YARN에 서비스를 배포하는 간단한 단계를 안내하는 빠른 튜토리얼을 보여줍니다.

어떻게 직접 다뤄볼 수 있나요?

  • Concepts: 프레임워크의 내부와 YARN에서 서비스 실행을 지원하는 YARN 코어의 일부 기능을 설명합니다.
  • Service REST API: YARN에서 서비스를 배포/관리하기 위한 API 문서.
  • Service Discovery: YARN에서의 서비스 디스커버리 메커니즘을 설명합니다.
  • Registry DNS: Registry DNS 내부를 깊이 다룹니다.
  • Examples: 몇 가지 예제 서비스 정의(Yarnfile)를 나열합니다.
  • Configurations: YARN에서 커스텀 서비스를 구성하는 방법을 설명합니다.
  • Service Upgrade: 실험적 기능인 YARN 서비스 업그레이드 방법을 설명합니다.

더 알아보기 (Learn more)