Hadoop HDFS RPM 패키지 설치 방안
문장의 출처: http://netkiller.github.io/storage/hdfs.html
5.2. Hadoop HDFS RPM 패키지 설치 방안
hadop 설치 가 너무 복잡 한 것 같 지 않 아 요?다음은 무장 애, 문턱 없 는 설치 방안 으로 자바 의 시스템 관 리 를 모 르 기 에 매우 적합 합 니 다.
HDFS: NameNode :관리 노드 DataNode :데이터 노드 SecondaryNamenode : 데이터 원본 정보 백업 정리 노드 MapReduce JobTracker :작업 관리 노드 Tasktracker :작업 실행 노드
5.2.1. 준비 작업
서버 4 대 준비, 운영 체제 Centos 6.4 최소 화 설치
NameNode 192.168.2.10 hostname namenodeDataNode 192.168.2.11 hostname:datanode1DataNode 192.168.2.12 hostname:datanode2JobTracker 192.168.2.10 (한 대 를 따로 설정 할 수도 있 고 NameNode 와 공용 할 수도 있 습 니 다. 여 기 는 HDFS 만 사 용 됩 니 다. 이 대 는 있 으 나 마 나 위의 4 대 를 준비 하면 됩 니 다) TaskTracker (DataNode 와 공용)
네트워크 를 설정 하여 서로 방문 할 수 있 도록 한 다음 방화벽 과 selinux 를 닫 습 니 다.
# yum update -y
# lokkit --disabled --selinux=disabled
Hadoop 중요 한 포트
1.Job Tracker 관리 인터페이스: 500302.HDFS 관리 인터페이스 : 500703. HDFS 통신 포트: 90004. MapReduce 통신 포트: 9001
프로 세 스 6.3. Hadoop. - 준비 작업.
모든 서버 에 자바 실행 환경 을 설치 합 니 다. CentOS 6.4 의 경우
# yum install java-1.7.0-openjdk
모든 서버 에 Hadoop 설치 방안 은 다음 두 가지 RPM 과 YUM 이 있 는데 그 중 하 나 를 선택 하 십시오 # rpm -ivh http://ftp.cuhk.edu.hk/pub/packages/apache.org/hadoop/common/hadoop-1.1.2/hadoop-1.1.2-1.x86_64.rpm
Retrieving http://ftp.cuhk.edu.hk/pub/packages/apache.org/hadoop/common/hadoop-1.1.2/hadoop-1.1.2-1.x86_64.rpm
Preparing... ########################################### [100%]
1:hadoop ########################################### [100%]
yum localinstall http://ftp.cuhk.edu.hk/pub/packages/apache.org/hadoop/common/hadoop-1.1.2/hadoop-1.1.2-1.x86_64.rpm
네트워크 가 느 리 면 Wget 또는 axel 을 사용 하여 다운로드 하여 설치 할 수 있 습 니 다 wget http://ftp.cuhk.edu.hk/pub/packages/apache.org/hadoop/common/hadoop-1.1.2/hadoop-1.1.2-1.x86_64.rpm
yum localinstall hadoop-1.1.2-1.x86_64.rpm
Hadoop 사용자 # cat /etc/passwd | grep Hadoop
mapred:x:202:123:Hadoop MapReduce:/tmp:/bin/bash
hdfs:x:201:123:Hadoop HDFS:/tmp:/bin/bash
설정 / etc / hosts 파일
cat >> /etc/hosts <<EOD
###############################
# Hadoop Host
###############################
#NameNode
192.168.2.10 namenode.example.com
#DataNode
192.168.2.11 datanode1.example.com
192.168.2.12 datanode2.example.com
EOD
키 생 성
# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
cc:6f:30:76:82:28:96:13:c8:e6:bc:d7:5b:2d:11:d7 root@images-upload
The key's randomart image is:
+--[ RSA 2048]----+
| |
|.. . |
|.o. . . E |
|+ o . +o |
| o= . ..S . |
| ..o. .o* |
| . . . o .o |
| . o .. |
| . |
+-----------------+
공개 키 인증 서 를 삽입 하여 DataNode 노드 의 모든 서버 에 공개 키 인증서
ssh-copy-id [email protected]
ssh-copy-id [email protected]
를 삽입 하려 면 yes 를 입력 한 후에 비밀 번 호 를 입력 하면 공개 키 인증서 의 간접 광 고 를 완성 할 수 있 습 니 다.프로 세 스 는 다음 과 같 습 니 다. # ssh-copy-id [email protected]
The authenticity of host 'datanode1.example.com (192.168.2.11)' can't be established.
RSA key fingerprint is f1:0b:b1:63:1a:f6:ac:a3:da:4f:14:b5:f0:cc:df:67.
Are you sure you want to continue connecting (yes/no)? yes yes
Warning: Permanently added 'datanode1.example.com' (RSA) to the list of known hosts.
[email protected]'s password:
Now try logging into the machine, with "ssh '[email protected]'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
# ssh-copy-id [email protected]
The authenticity of host 'datanode2.example.com (192.168.2.12)' can't be established.
RSA key fingerprint is f1:0b:b1:63:1a:f6:ac:a3:da:4f:14:b5:f0:cc:df:67.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'datanode2.example.com,192.168.2.12' (RSA) to the list of known hosts.
[email protected]'s password:
Now try logging into the machine, with "ssh '[email protected]'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
완료 후 로그 인 테스트 를 하고 비밀 번 호 를 제시 하지 않 으 면 바로 들 어가 면 정확 함 을 표시 합 니 다 # ssh [email protected]
# exit
5.2.2. NameNode 설정 이름 노드프로필
core-site.xml common
hdfs-site.xml HDFS
mapred-site.xml MapReduce
hadoop-env.sh hadooop
프로 세 스 6.4. Hadoop - NameNode
설정 파일 hadop - env. sh 는 / usr / java / default 를 / usr
# cp hadoop-env.sh hadoop-env.sh.original
# sed -i "s:/usr/java/default:/usr:" hadoop-env.sh
로 변경 합 니 다.설정 파일 core - site. xml
# cp core-site.xml core-site.xml.original
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://namenode.example.com:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/var/tmp/hadoop</value>
</property>
</configuration>
fs. default. name: NameNode URI.hdfs: / / 호스트 이름: 포트 / hadop. tmp. dir: Hadoop 의 기본 임시 경로, 파일 mapred - site. xml
# cp mapred-site.xml mapred-site.xml.original
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>namenode.example.com:9001</value>
</property>
<property>
<name>mapred.local.dir</name>
<value>/var/tmp/hadoop</value>
</property>
</configuration>
mapred. job. tracker: JobTracker 의 호스트 와 포트 를 설정 합 니 다. 설정 파일 hdfs - site. xml
# cp hdfs-site.xml hdfs-site.xml.original
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/var/hadoop/name1</value>
<description> </description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/var/hadoop/hdfs/data1</value>
<description> </description>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
dfs.name.dir: NameNode 。 ,nametable 。
2) dfs.data.dir DataNode , 。 , , 。
3)dfs.replication , 3, 。
masters 와 slaves 메 인 노드 백업 masters 와 slaves 설정 파일 cp masters masters.original
cp slaves slaves.original
cat > /etc/hadoop/masters <<EOD
namenode.example.com
EOD
cat > /etc/hadoop/slaves <<EOD
datanode1.example.com
datanode2.example.com
EOD
# cd /etc/hadoop/
# scp hadoop-env.sh core-site.xml mapred-site.xml hdfs-site.xml masters slaves [email protected]:/etc/hadoop/
# scp hadoop-env.sh core-site.xml mapred-site.xml hdfs-site.xml masters slaves [email protected]:/etc/hadoop/
설정프로필 복사
# scp hadoop-env.sh core-site.xml mapred-site.xml hdfs-site.xml masters slaves [email protected]:/etc/hadoop/
hadoop-env.sh 100% 2116 2.1KB/s 00:00
core-site.xml 100% 412 0.4KB/s 00:00
mapred-site.xml 100% 406 0.4KB/s 00:00
hdfs-site.xml 100% 595 0.6KB/s 00:00
masters 100% 21 0.0KB/s 00:00
slaves
콘 솔 출력 과 유사 하 게 복사 에 성 공 했 음 을 표시 합 니 다.# mkdir /var/hadoop/
# mkdir /var/hadoop/name{1,2}
# su - hdfs -c "mkdir -p /var/hadoop/hdfs/data{1,2}"
NameNode 의 프로필 을 DataNode 에 복사 합 니 다.Hadoop 시작 작업 디 렉 터 리 만 들 기
# hadoop namenode -format
13/04/23 14:35:33 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = namenode.example.com/192.168.2.10
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 1.1.2
STARTUP_MSG: build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.1 -r 1440782; compiled by 'hortonfo' on Thu Jan 31 02:06:43 UTC 2013
************************************************************/
Re-format filesystem in /var/hadoop/name1 ? (Y or N) Y
13/04/23 14:35:37 INFO util.GSet: VM type = 64-bit
13/04/23 14:35:37 INFO util.GSet: 2% max memory = 2.475 MB
13/04/23 14:35:37 INFO util.GSet: capacity = 2^18 = 262144 entries
13/04/23 14:35:37 INFO util.GSet: recommended=262144, actual=262144
13/04/23 14:35:37 INFO namenode.FSNamesystem: fsOwner=root
13/04/23 14:35:37 INFO namenode.FSNamesystem: supergroup=supergroup
13/04/23 14:35:37 INFO namenode.FSNamesystem: isPermissionEnabled=true
13/04/23 14:35:37 INFO namenode.FSNamesystem: dfs.block.invalidate.limit=100
13/04/23 14:35:37 INFO namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s)
13/04/23 14:35:38 INFO namenode.NameNode: Caching file names occuring more than 10 times
13/04/23 14:35:38 INFO common.Storage: Image file of size 110 saved in 0 seconds.
13/04/23 14:35:38 INFO namenode.FSEditLog: closing edit log: position=4, editlog=/var/hadoop/name1/current/edits
13/04/23 14:35:38 INFO namenode.FSEditLog: close success: truncate to 4, editlog=/var/hadoop/name1/current/edits
13/04/23 14:35:38 INFO common.Storage: Storage directory /var/hadoop/name1 has been successfully formatted.
13/04/23 14:35:38 INFO common.Storage: Image file of size 110 saved in 0 seconds.
13/04/23 14:35:38 INFO namenode.FSEditLog: closing edit log: position=4, editlog= /var/hadoop/name2/current/edits
13/04/23 14:35:38 INFO namenode.FSEditLog: close success: truncate to 4, editlog= /var/hadoop/name2/current/edits
13/04/23 14:35:38 INFO common.Storage: Storage directory /var/hadoop/name2 has been successfully formatted.
13/04/23 14:35:38 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at namenode.example.com/192.168.2.10
************************************************************/
# chown hdfs:hadoop -R /var/hadoop
# /etc/init.d/hadoop-namenode start
# /etc/init.d/hadoop-datanode start
http://192.168.2.10:50070/ 5.2.3. DataNode 설정 데이터 노드
프로 세 스 6.5. Hadoop - DataNode
hadop 데이터 저장 디 렉 터 리 만 들 기
mkdir /var/hadoop/
chown hdfs:hadoop -R /var/hadoop
su - hdfs -c "mkdir -p /var/hadoop/hdfs/data1"
Hadoop 시작
# /etc/init.d/hadoop-datanode start
5.2.4. Hadoop UI (WEB 인터페이스)상용 액세스 페이지
1. HDFS 인터페이스 http://hostname:50070 2. MapReduce 관리 인터페이스 http://hostname:50030
5.2.5. 테스트 Hadoop
분포 식 파일 시스템 에 install. log 파일 복사
hadoop fs -mkdir test
hadoop fs -put install.log test
파일 내용 보이 기
# hadoop dfs -cat test/install.log
디 렉 터 리 구조 보기
# hadoop dfs -ls
Found 1 items
drwxr-xr-x - root supergroup 0 2013-04-23 15:20 /user/root/test
[root@namenode ~]# hadoop dfs -ls test
Found 1 items
-rw-r--r-- 2 root supergroup 10278 2013-04-23 15:20 /user/root/test/install.log
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
java 연결hdfsha와 호출mapreducejar 예시Java API 연결 HDFS HA Java API 호출 MapReduce 프로그램...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.