1. Hadoop over YARN

특징

1) YARN은 Hadoop의 핵심 컴포넌트로 하둡 시스템과 자연스럽게 통합되어 있어 노드 간의 자원 관리나 다양한 잡 스케줄링을 통해 작업을 효율적으로 처리

 

2) Good data locality

     => MapReduce 작업이 YARN에서 실행되면 리소스 관리자는 데이터 블록이 저장된 노드에서 작업 예약을 시도합니다. YARN은 데이터 로컬리티 측면에서 가장 우수하고 네트워크 오버헤드를 최소화 할 수 있습니다. 

 

3) YARN은 전통적으로 하둡 에코시스템 내에서 동작하도록 설계

     => 고정된 리소스 관리로 자원을 유동적으로 할당 하기 제한

 

4) 오토스케일링의 어려움 

     => Kubernetes는 자동으로 애플리케이션을 확장하거나 축소 할 수 있는 오토스케일링 기능을 제공하지만 YARN의 경우 수동으로 자원을 조절해야하는 경우가 많음

 

2. Hadoop over multi-node Kubernetes cluster

특징

 

1) 유용한 리소스 관리와 스케일링

     => Kubernetes는 CPU 사용률이나 메모리 사용률 등의 지표를 기반으로 자동으로 Pod 를 스케일 업하거나 다운 할 수 있어 Hadoop 작업의 부하에 따라 클러스터 리소스를 동적으로 조절 할 수 있음

 

2) 향상된 배포 및 관리

     => Kubernetes YAML 파일을 사용하여 Hadoop 클러스터를 쉽게 배포하고 관리

 

2) 높은 가용성과 복구 능력

 

=> 자동 복구: Kubernetes는 파드가 비정상적으로 종료되면 자동으로 새로운 파드를 생성하여 클러스터의 가용성을 유지합니다. 이를 통해 하둡 작업이 중단되지 않도록 보장할 수 있습니다.

 

실제 실험 예시 )

 

Hello World Pod 초기 상태
임의로 Pod 하나를 삭제 했을 시
삭제 한 후 전체 Pod 상태

 

실제로 임의로 Pod를 삭제 할 시 Kubernetes는 Replicaset에 지정된 원하는 상태를 유지하기 위해 자동으로 자동으로 수정 조치를 취함. 삭제된 Pod를 자동으로 교체함으로 써 Kubernetes는 지정된 수준의 내결함성이 유지되도록 보장함.

 

   =>노드 셀프-힐링: Kubernetes는 노드의 상태를 모니터링하고, 비정상적인 노드를 자동으로 교체하거나 복구합니다. 이를 통해 클러스터의 안정성과 가용성을 높일 수 있습니다.

 

Mapreduce job 도중 Error 발생 시
data node 1에서 에러가 발생한 상태

 

이 경우는 Terasort 20GB 프로그램을 실행하다가 갑자기 데이터 노드 Pod가 종료된 상태

Kubernetes는 오류를 감지하고 데이터 노드 Pod와 다른 노드의 일정을 변경

 

'Hadoop' 카테고리의 다른 글

[Hadoop] What is Hive?  (0) 2024.10.05
[Hadoop] What is Pig?  (4) 2024.09.30
[Hadoop] Hadoop vs Spark  (3) 2024.06.08
[Hadoop] What is HDFS ?  (0) 2024.06.01
[Hadoop] How to install Hadoop in GCP?  (0) 2023.07.17

+ Recent posts