Spark 완벽 가이드 ch17. 스파크 배포 환경

Q·2023년 1월 30일
0

Spark 완벽 가이드

목록 보기
18/24
  • docs

  • 스파크가 지원하는 클러스터 매니저

    • 스탠드얼론
    • 하둡 YARN
    • 아파치 메소스
    • 쿠버네티스(책 집필 당시인 2017년 12월에는 없었음)
  • 위 클러스터 매니저는 스파크 애플리케이션을 같은 방식으로 실행함

    • 하지만 각 클러스터 매니저마다 추구하는 방향성이 다르므로 장단점을 이해하고 상황에 맞게 사용해야함

스파크 애플리케이션 실행을 위한 클러스터 환경

  • 환경은 크게 두 가지
    • 설치형 클러스터(on-premise cluster)
    • 공개 클라우드(public cloud)

설치형 클러스터 배포 환경

  • 자체 데이터 센터를 운영하는 조직에 적합
  • 장점
    • 여러 종류의 저장소 선택 가능
    • 사용 중인 하드웨어를 완전히 제어 가능
      • 이는 특정 워크로드의 성능을 최적화할 수 있게함
  • 단점
    • 관리해야할 것이 많음
      • HDFS나 분산 키-값 등 자체 저장소 시스템을 선택하고 운영해야함
      • 지리적 복제, 재해 복구 시스템 등도 함께 구축
    • 제한된 클러스터 크기
      • 어떤 작업은 자원이 부족해서 잡을 실행하기 어려울 것이고
      • 어떤 작업은 사용하지 않는 자원이 많아질 것임

클라우드 배포 환경

  • 일반적인 스파크 운영 플랫폼으로 자리 잡음
  • 장점
  • 자원을 탄력적으로 할당 가능
    • 사용한 만큼만 비용 지불
  • 쉬운 관리
  • 단점(책엔 없는데)
    • 보안 문제나 장애에 대한 직접 관리 및 대응 불가

데이터브릭스

  • 데이터브릭스는 클라우드에서 스파크 서비스를 제공하는 업체 중 하나
  • 데이터브릭스 클라우드 환경을 사용하면 복잡하게 하둡을 설치하지 않아도 스파크 워크로드를 실행할 수 있음
  • 또한 효율적으로 실행할 수 있도록 다양한 기능 제공
    • 클러스터 크기 자동 조절
    • 클러스터 자동 종료
    • 클라우드 스토리지에 최적화된 커넥터
    • etc.

클러스터 매니저

  • 클라우드 환경에서 제공하는 고급 관리 서비스를 사용하는 경우가 아니라면 스파크를 사용하기 위한 클러스터 매니저를 선택해야함

스탠드얼론

  • 아파치 스파크 워크로드용으로 특별히 제작된 경량화 플랫폼
  • 이해와 활용이 비교적 쉬움
  • 다른 클러스터 매니저보다 제한적인 기능
  • 스파크 애플리케이션만 실행 가능

하둡 YARN

  • 잡 스케줄링과 클러스터 자원 관리용 프레임워크
  • HDFS를 사용하는 애플리케이션을 실행할 때 가장 적합
  • 연산용 클러스터와 저장소 클러스터가 강하게 결합해 있음
    • 즉, 클러스터 확장 시 연상용 클러스터와 저장소 클러스터 동시에 확장해야함

아파치 메소스

  • 다양한 애플리케이션 유형 지원
  • 데이터센터 규모의 클러스터 매니저를 지향함
  • 위 두 클러스터 매니저보다 무거움
    • 대규모의 메소스 배포 환경이 있는 경우에만 사용하자
profile
Data Engineer

0개의 댓글