Quorum Journal Manager를 통한 NameNode 고 가용성



NameNode High Availability는 하둡 2.0의 가장 중요한 기능 중 하나입니다. NameNode High Availability with Quorum Journal Manager는 활성 및 대기 NameNode간에 편집 로그를 공유하는 데 사용됩니다.

이것은 Hadoop 2.0의 가장 중요한 기능 중 하나입니다. 네임 노드 고 가용성 기능을 논의하기 전에 Quorum이 무엇인지 아는 것이 중요합니다. Quorum은 특정 클러스터가 안정적이라고 말하는 클러스터링에서 사용되는 일반적인 용어입니다. Quorum은 시스템 목록을 제공하고 클러스터의 상태를 확인하는 데 도움이됩니다. 쿼럼에는 예상 쿼럼과 계산 된 쿼럼의 두 가지 유형이 있습니다.





Quorum Journal Manager (QJM)를 통한 NameNode 고 가용성

Hadoop 2.0 이전에 NameNode는 HDFS 클러스터에서 단일 실패 지점 (SPOF)이었습니다. 각 클러스터에는 단일 NameNode가 있으며 해당 시스템을 사용할 수없는 경우 NameNode가 다시 시작되거나 별도의 시스템에서 시작될 때까지 전체 클러스터를 사용할 수 없습니다. 클래식 HA 클러스터에서는 두 개의 개별 시스템이 NameNode로 구성됩니다. 어느 시점에서든 NameNode 중 하나는 Active 상태이고 다른 하나는 Standby 상태가됩니다. Active NameNode는 클러스터의 모든 클라이언트 작업을 담당하는 반면 Standby는 단순히 슬레이브 역할을하여 빠른 장애 조치를 제공하기에 충분한 상태를 유지합니다.

대기 노드가 활성 노드와 조정 된 상태를 유지하기 위해 두 노드는 'JN (JournalNodes)'이라는 별도의 데몬 그룹과 통신합니다. 액티브 노드에서 네임 스페이스 수정을 수행하면 저널 노드에 변경 사항 기록이 기록됩니다. 대기 노드는 JN에서 수정 된 정보를 읽을 수 있으며 정기적으로 변경 사항을 모니터링합니다. 대기 노드는 변경 사항을 확인한 다음 자체 네임 스페이스에 적용합니다. 장애 조치의 경우 Standby는 상태를 '활성 상태'로 변경하기 전에 JounalNode에서 모든 변경 사항을 읽었는지 확인합니다. 이렇게하면 장애 조치가 발생하기 전에 네임 스페이스 상태가 완전히 동기화됩니다.



빠른 장애 조치를 제공하려면 대기 노드가 클러스터의 블록 위치에 대한 업데이트 된 최신 정보를 가져야합니다. 이를 위해 DataNode는 두 NameNode의 위치로 구성되고 블록 위치 정보와 하트 비트를 둘 다에 보냅니다.

한 번에 하나의 네임 노드 만 활성화되어야합니다. 그렇지 않으면 네임 스페이스 상태가 둘 사이에서 벗어나 데이터 손실 또는 잘못된 결과가 발생할 수 있습니다. 이를 방지하기 위해 JournalNode는 한 번에 작가에게 하나의 NameNode 만 허용합니다. 장애 복구 중에 활성화 될 NameNode가 JournalNode에 쓰는 책임을 맡게됩니다.

질문이 있으십니까? 댓글 섹션에 언급 해 주시면 다시 연락 드리겠습니다.



informatica의 연결 및 연결되지 않은 변환

관련 게시물:

Hadoop 2.0 클러스터 아키텍처 연합 개요