[HADOOP] ssh : 호스트 이름을 확인할 수 없습니다. 알 수없는 이름 또는 서비스
HADOOPssh : 호스트 이름을 확인할 수 없습니다. 알 수없는 이름 또는 서비스
Amazon 인스턴스, 2 노드 클러스터에서 hadoop을 설정하려고합니다. 각 인스턴스에는 공개 dns가 있으며 참조를 사용합니다. 따라서 두 시스템의 / etc / hosts 파일에서 다음과 같은 줄을 추가합니다.
{public dns of 1st instance} node1
{public dns of 2st instance} node2
또한 단순히 다음을 수행하여 각 인스턴스에서 다른 인스턴스로 ssh 할 수 있습니다.
ssh {public dns of the other instance}
내가 가지고있는 첫 번째 인스턴스 파일의 hadoop / conf / slaves에서 :
localhost
node2
스크립트 bin / start-dfs.sh를 시작할 때 마스터에서 namenode, datanode 및 secondary namenode를 시작할 수 있지만 다음과 같이 표시됩니다.
node2: ssh: Could not resolve hostname node2: Name or service not known
시도하면 똑같이 인쇄됩니다.
ssh node2
문제는 node2를 두 번째 인스턴스의 공개 dns와 연결하도록 지시하는 방법입니다. 추가하기에 충분하지 않습니까?
{public dns of 2st instance} node2
/ etc / hosts 파일에 줄을? 인스턴스를 재부팅해야합니까?
해결법
-
==============================
1./ etc / hosts는 IP 주소와 관련된 실제 DNS가없는 경우 로컬 DNS처럼 작동합니다.
/ etc / hosts는 IP 주소와 관련된 실제 DNS가없는 경우 로컬 DNS처럼 작동합니다.
슬레이브 및 마스터 파일에서 {public dns of 1st instance}를 직접 사용할 수 있다면 실제로 {public dns of 1st instance} node1 매핑이 필요합니까?
또한 퍼블릭 IP 주소를 사용하는 대신 Amazon 인스턴스의 프라이빗 IP 주소를 사용하는 것이 좋습니다. 각 인스턴스의 터미널에서 ifconfig를 수행하고 프라이빗 IP 주소가 있는지 확인할 수 있습니다. 아마도 기본적으로 10.x.x.x / 172.x.x.x / 192.x.x.x로 시작합니까? 그런 다음 각 Amazon 인스턴스의 / etc / hosts에 대신 매핑 할 수 있습니다.
따라서 각 컴퓨터의 / etc / hosts는 다음과 같아야합니다.
기계 -1 :
{IP_address_1st_instance} node1 {IP_address_2st_instance} node2
기계 -2 :
{IP_address_1st_instance} node1 {IP_address_2st_instance} node2
그리고 이것은 아마존 인스턴스 (머신)가 어떻게 든 매핑 할 계획이라면 서로를 해결할 수 있도록하기위한 것입니다.
from https://stackoverflow.com/questions/18134231/ssh-could-not-resolve-hostname-name-or-service-not-known by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 하둡 작업 추적기 문제 (0) | 2019.09.08 |
---|---|
[HADOOP] start-dfs.sh를 실행할 수 없습니다 (0) | 2019.09.08 |
[HADOOP] Hadoop MapReduce의 감속기에서 매퍼 카운터에 액세스 (0) | 2019.09.08 |
[HADOOP] jooq는 기존의 방언을 확장합니다. Hive 방언을 아파치하기 위해 MySQL 방언 채택 (0) | 2019.09.08 |
[HADOOP] Spark (Scala) 드라이버에서 로컬 파일 시스템으로 쓰기 및 읽기 (0) | 2019.09.08 |