CentOS 安裝 Hadoop 手記


Download & Install
 
download zip file (not rpm)
 
tar vxf hado......gz
mv hado..... /usr/hadoop
 

創建用戶 hadoop
 
$ useradd  -d /home/hadoop -s /bin/bash hadoop
$ passwd hadoop
hadoop
 
可以把hadoop用戶加入到 sudoer 中(使用 visudo命令),方便管理。
 
更改 /usr/hadoop 屬主為 hadoop
chown -R hadoop:hadoop hadoop
cd /usr/hadoop
mkdir tmp
 

配置hadoop
 
hadoop配置目錄 /usr/hadoop/conf
vim ./hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_21
[debian] 的 openjdk 主目錄 /usr/lib/jvm/java-7-openjdk-armhf/
 
Hadoop配置文件在conf目錄下,之前的版本的配置文件主要是Hadoop-default.xml和Hadoop-site.xml。由於Hadoop發展迅速,代碼量急劇增加,代碼開發分為了core,hdfs和map/reduce三部分,配置文件也被分成了三個 core-site.xml、hdfs-site.xml、mapred-site.xml。core-site.xml和hdfs-site.xml是站在HDFS角度上配置文件;core-site.xml和mapred-site.xml是站在MapReduce角度上配置文件。
 
core-site.xml,請先備份。 【ip地址改成localhost也可】
vim core-site.xml
<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/hadoop/tmp</value>
        <description>.</description>
    </property>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://192.168.1.249:9000</value>
    </property>
</configuration>
 
 
hdfs-site.xml
replication 是數據副本數量,默認為3,salve少於3台就會報錯
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
<configuration>
 
mapred-site.xml
修改Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口。
<configuration>
    <property>
        <name>mapred.job.tracker</name>
        <value>http://192.168.1.249:9001</value>
    </property>
</configuration>
 
masters
127.0.0.1 #master的ip, 如果是全分布模式,SecondaryNameNode在某台機器上,則該配置設定為SecondaryNameNode
 
slaves (主機上的文件),加入slave的hostname或者ip 如果是全分布模式,去掉 master (即namenode)
hostname
127.0.0.1
 
 

在 slave 機器數配置 slave
 
scp復制 mster 的 /usr/hadoop 到各個 slave 即可
 

環境變量
 
vim /etc/profile
export HADOOP_HOME=/usr/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
 
vim ./hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_10/
[note] debian 的 openjdk 主目錄 /usr/lib/jvm/java-7-openjdk-armhf/
 
slaves 文件無需配置;
 

配置 ssh 無密碼通信
 
yum instal openssh-server openssh openssh-client
 
各個服務器的 /home/hadoop/.ssh/authorized_keys
本機的公鑰(id_rsa.pub)也要添加到本機的author ized_keys中
 
注意:
1 設置 auth orized_keys 權限為 600 ,屬主有rw權限, 其他的必須沒有w權限
2 設置 vim /etc/ssh/sshd_config
RSAAuthentication yes # 啟用 RSA 認證
PubkeyAuthentication yes # 啟用公鑰私鑰配對認證方式
AuthorizedKeysFile .ssh/authorized_keys # 公鑰文件路徑(和上面生成的文件同)
重啟ssh:service ssh restart // service ssh restart
測試本機登錄:
ssh localhost
ssh 192.168.1.xxx
 
$ ssh-keygen
$ ls ~/.ssh
id_rsa  id_rsa.pub
對應公鑰/私鑰
復制公鑰到 authorized_keys
 

啟動 Hadoop
 
 
格式化HDFS文件系統(master  & slaves)
h adoop namenode -format
 
 
啟動
在啟動前關閉集群中所有機器的防火牆,不然會出現datanode開后又自動關閉
service iptables stop
啟動:./bin/start-all.sh
 
首先啟動namenode 接着啟動datanode1,datanode2,…,然后啟動secondarynamenode。再啟動jobtracker,然后啟動tasktracker1,tasktracker2,…。
啟動 hadoop成功后,在 Master 中的 tmp 文件夾中生成了 dfs 文件夾,在Slave 中的 tmp 文件夾中均生成了 dfs 文件夾和 mapred 文件夾。
 
 
驗證hadoop
jps
 
 
hadoop dfsadmin -report
 
 
網頁查看集群信息
http://192.168.1.249:50030 
http://192.168.1.249:50070  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM