[HADOOP] Hadoop : 클러스터에 여러 IP 주소 바인딩 NameNode
HADOOPHadoop : 클러스터에 여러 IP 주소 바인딩 NameNode
Softlayer에 4 노드 Hadoop 클러스터가 있습니다. 마스터 (NameNode)에는 외부 액세스를위한 공용 IP 주소와 클러스터 액세스를위한 개인 IP 주소가 있습니다. 슬레이브 노드 (datanode)에는 각 슬레이브 노드에 공용 IP 주소를 할당 할 필요없이 마스터에 연결하려는 사설 IP 주소가 있습니다.
필자는 NameNode의 공용 주소로 fs.defaultFS를 설정하면 NameNode가 개인 주소가 아닌 들어오는 연결에 대해 해당 주소를 수신한다는 점을 제외하면 외부 액세스를 허용한다는 것을 알게되었습니다. 그래서 NameNode의 사설 IP 주소로 연결하려고 할 때 데이터 노드 로그에 ConnectionRefused 예외가 생깁니다.
해결책은 공개 및 사설 IP 주소를 모두 NameNode로 설정하여 외부 액세스가 유지되고 내 슬레이브 노드도 연결할 수 있다고 생각했습니다.
그래서 둘 다 수신 대기하도록 NameNode에이 두 주소를 바인딩 할 수있는 방법이 있습니까?
편집 : Hadoop 버전 2.4.1.
해결법
-
==============================
1.질문자는 이것을 자신의 질문에 대답으로 편집했습니다.
질문자는 이것을 자신의 질문에 대답으로 편집했습니다.
-
==============================
2.멀티 홈 네트워크에 대한 HDFS 지원 및 멀티 홈 네트워크에 대한 Cloudera HDFS 지원에서 수행되었습니다. Hortonworks의 다중 홈밍을위한 매개 변수
멀티 홈 네트워크에 대한 HDFS 지원 및 멀티 홈 네트워크에 대한 Cloudera HDFS 지원에서 수행되었습니다. Hortonworks의 다중 홈밍을위한 매개 변수
<property> <name>dfs.namenode.rpc-bind-host</name> <value>0.0.0.0</value> <description> The actual address the RPC server will bind to. If this optional address is set, it overrides only the hostname portion of dfs.namenode.rpc-address. It can also be specified per name node or name service for HA/Federation. This is useful for making the name node listen on all interfaces by setting it to 0.0.0.0. </description> </property>
<property> <name>dfs.namenode.rpc-bind-host</name> <value>0.0.0.0</value> <description> The actual address the RPC server will bind to. If this optional address is set, it overrides only the hostname portion of dfs.namenode.rpc-address. It can also be specified per name node or name service for HA/Federation. This is useful for making the name node listen on all interfaces by setting it to 0.0.0.0. </description> </property> <property> <name>dfs.namenode.servicerpc-bind-host</name> <value>0.0.0.0</value> <description> The actual address the service RPC server will bind to. If this optional address is set, it overrides only the hostname portion of dfs.namenode.servicerpc-address. It can also be specified per name node or name service for HA/Federation. This is useful for making the name node listen on all interfaces by setting it to 0.0.0.0. </description> </property> <property> <name>dfs.namenode.http-bind-host</name> <value>0.0.0.0</value> <description> The actual adress the HTTP server will bind to. If this optional address is set, it overrides only the hostname portion of dfs.namenode.http-address. It can also be specified per name node or name service for HA/Federation. This is useful for making the name node HTTP server listen on all interfaces by setting it to 0.0.0.0. </description> </property> <property> <name>dfs.namenode.https-bind-host</name> <value>0.0.0.0</value> <description> The actual adress the HTTPS server will bind to. If this optional address is set, it overrides only the hostname portion of dfs.namenode.https-address. It can also be specified per name node or name service for HA/Federation. This is useful for making the name node HTTPS server listen on all interfaces by setting it to 0.0.0.0. </description> </property>
IBM BigInsights에 대해 동일한 솔루션을 구현할 수 있습니다.
IBM BigInsights : Hadoop 클라이언트 포트 8020을 모든 네트워크 인터페이스에 바인딩하는 방법
HDFS 구성의 Cloudera에서는
Cloudera의 HDFS 구성에는 와일드 카드 주소에 Bind NameNode라는 속성이 있으며이 상자를 선택하기 만하면 0.0.0.0의 서비스를 바인딩합니다.
On the Home > Status tab, click to the right of the service name and select Restart. Click Start on the next screen to confirm. When you see a Finished status, the service has restarted.
클러스터 시작, 중지, 새로 고침 및 다시 시작 서비스 시작, 중지 및 다시 시작
from https://stackoverflow.com/questions/25135183/hadoop-binding-multiple-ip-addresses-to-a-cluster-namenode by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] Hadoop 3.0에서 CopyMerge를 수행하는 방법은 무엇입니까? (0) | 2019.07.19 |
---|---|
[HADOOP] SQOOP SQLSERVER "적절한 연결 관리자가 설정되지 않았습니다"드라이버를로드하지 못했습니다. (0) | 2019.07.15 |
[HADOOP] HIVE 테이블에서 가장 최근의 파티션을 찾는 방법 (0) | 2019.07.15 |
[HADOOP] 파이썬과 하이브 간의 연결 (1) | 2019.07.15 |
[HADOOP] spark-submit을 사용하면 --total-executor-core 옵션의 동작은 무엇입니까? (0) | 2019.07.15 |