Windows 에서 VM 에 접근 하 는 HBase
http://blackwing.iteye.com/admin/blogs/1502476 )
시작 하기 전에 hadop 을 시작 하고 hbase 디 렉 터 리 를 만들어 야 합 니 다.
hadoop fs -mkdir hbase
이렇게 하면 hadop 에서 hbase 가 데 이 터 를 저장 하 는 곳 을 열 수 있 습 니 다.
명령 을 통과 할 수 있 습 니 다.
hadoop fs -ls /
방금 만 든 디 렉 터 리 를 보 았 습 니 다.
hbase 의 주요 프로필:
1. hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://namenode.blackwing.com:8020/hbase/</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>namenode.blackwing.com</value>
</property>
</configuration>
그 중의 fs. default. name 은 hadop 의 namenode 가 있 는 uri 를 가리킨다.물론 뒤의 / hbase 는 hdfs 의 어느 경로 에서 데 이 터 를 저장 하고 싶 습 니까?fs. default. name 은 hadop 의 fs. default. name 설정 과 같 아야 합 니 다.즉, 이 부분 은 똑 같 아야 한 다 는 것 이다.
hdfs://namenode.blackwing.com:8020/
zookeeper 의 클 러 스 터 목록: hbase. zookeeper. quorum, 대외 적 으로 해 야 하기 때문에 localhost 를 채 울 수 없습니다.
2. hbase 와 hadop 을 모두 설정 한 후 프로그램 에서 방문 주소 설정 을 해 야 합 니 다.
public InsertData(String tableName)
{
rowList = new ArrayList<Row>();
this.conf = HBaseConfiguration.create();
this.conf.set("hbase.zookeeper.quorum","192.168.128.140");
System.out.println("hbase.master = "+conf.get("hbase.master"));
System.out.println("hbase.zookeeper.quorum = "+conf.get("hbase.zookeeper.quorum"));
try {
this.table=new HTable(this.conf,tableName.getBytes());
} catch (IOException e) {
e.printStackTrace();
logger.info("errors occur while creating table : "+tableName);
}
}
그 중에서 192.168.128140 은 hbase 에서 zookeeper 의 운행 주소 입 니 다. zookeeper 는. META. 와 ROOT 에 따라 hbase 가 있 는 곳 등 정 보 를 얻 기 때문에 hbase. zookeeper. quorum 프로그램 만 설정 하면 작업 할 수 있 습 니 다.
물론 hbase - site. xml 을 프로젝트 의 src 디 렉 터 리 에 복사 할 수도 있 습 니 다. HBaseConfiguration. create () 에 있 을 때 프로그램 은 src 의 hbase - site. xml 를 자동 으로 읽 습 니 다.
3. 뜬 금 없 는 작은 문제 집합
1) 윈도 우즈 는 가상 컴퓨터 를 연결 할 수 있 지만 가상 컴퓨터 hbase 에 접근 할 수 없 거나 hbase 의 웹 인 터 페 이 스 를 열 수 없다.
원인: Liux 의 방화벽 때문에 폭력 적 인 해결 방법 은 chkconfig iptables off 입 니 다.접근 할 수 있 는 규칙 을 추가 하기 위해 서 는 / etc / sysconfig / iptables 를 수정 하 는 것 이 좋 습 니 다.
2) jps 에서 tasktracker 좋 은 datanode 프로 세 스 가 있어 야 하 는데 datanode 만 있 는 프로 세 스 가 하나 빠 진 것 을 발 견 했 습 니 다.
hadop 에서 slaves 에서 호스트 이름 을 올 바 르 게 표시 하 는 지, 한 줄 한 줄 확인 하 십시오.
내 가 이 문 제 를 만난 것 은 hadop 의 fs. default. name 이 hbase 의 hbase. rootdir 와 같이 설정 되 었 기 때 문 입 니 다. 즉,:
hdfs://namenode.blackwing.com:8020/hbase/
정확히 말 하면 hadop 의 설정 은 다음 과 같 아야 합 니 다.
hdfs://namenode.blackwing.com:8020/
3) windows 에서 eclipse 배경 출력 은 namenode 에 연결 되 지 않 음 을 표시 합 니 다.
이유: windows 에 host 가 쓰 여 있 지 않 기 때문이다.해결 방법 은:
C:\WINDOWS\system32\drivers\etc\hosts
vm 에 있 는 3 대의 기기 의 ip 및 이름 을 추가 합 니 다.
192.168.128.140 namenode.blackwing.com
192.168.128.136 jobtracker.blackwing.com
192.168.128.141 datanode.blackwing.com
PS: hbase 의 데이터 가 hadop 에 저장 되 었 는 지 확인 하기 위해 다음 을 통 해:
hadoop fs -ls /hbase
hbase 를 통 해 만 든 시 계 를 보면 hadop 의 hbase 디 렉 터 리 에서 해당 하 는 폴 더 를 생 성 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
m1 이클립스에 oracle cloud (오라클 클라우드)연결하기m1에는 oracle이 설치되지 않는다.... 큰맘먹고 지른 m1인데 oracle이 설치되지 않는다니... 하지만 이뻐서 용서가 된다. 이거 때문에 웹 개발 국비수업을 듣는 도중에 몇번 좌절하고 스트레스를 크게 받았...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.