Hadoop是用做處理大數據用的,核心是HDFS、Map/Reduce。雖然目前工做中不須要使用這個,可是,技多不壓身,通過虛擬機不少遍的嘗試,終於將Hadoop2.5.2的環境順利搭建起來了。
java
首先準備一個CentOS,將主機名改成master,而且在/etc/hosts裏面加入master對應的本機ip地址。node
Linux基本配置linux
vi /etc/sysconfig/network #編輯文件裏面的HOSTNAME=master vi /etc/hosts #添加 本機IP地址 master
而後關閉iptables並設置開機不啓動。web
service iptables stop chkconfig iptables off
重啓系統,接下來是配置ssh無密碼登錄。配置這個的理由是在啓動hadoop能夠不用輸入密碼。shell
SSH無密碼登錄apache
vi /etc/ssh/sshd_config #如下4行的註釋須要打開 HostKey /etc/ssh/ssh_host_rsa_key RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys #保存,並重啓sshd service sshd restart #生成免登錄祕鑰 ssh-keygen -t rsa #一路回車就行。以後會在當前登錄用戶主目錄中的.ssh文件夾裏生成2個文件。 #進入.ssh目錄。 cat id_rsa.pub >> authorized_keys #如今能夠用ssh無密碼登錄系統了。 ssh localhost
JDK安裝配置(略)
瀏覽器
使用的版本是jdk-7u79-linux-x64。網絡
安裝並配置Hadoop2.5.2app
將下載好的tar.gz包上傳至環境。ssh
tar -zxvf hadoop-2.5.2.tar.gz -C /usr vi /etc/profile #將如下內容放在最後面。 export JAVA_HOME=/usr/java/jdk1.7.0_79 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export HADOOP_HOME=/usr/hadoop-2.5.2 export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_YARN_HOME=$HADOOP_HOME export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS=-Djava.library.path=$HADOOP_HOME/lib #保存,並執行source /etc/profile #配置Hadoop #建立hadoop的name與data目錄 mkdir -p /usr/hdfs/name mkdir -p /usr/hdfs/data mkdir -p /usr/hdfs/tmp cd /usr/hadoop-2.5.2/etc/hadoop 設置如下文件的JAVA_HOME hadoop-env.sh hadoop-yarn.sh vi core-site.xml #在configuration節點裏面加入如下配置,注意ip改成本機ip <property> <name>hadoop.tmp.dir</name> <value>/usr/hdfs/tmp</value> <description>A base for other temporary directories.</description> </property> <!--file system properties--> <property> <name>fs.defaultFS</name> <value>hdfs://192.168.1.112:9000</value> </property> vi hdfs-site.xml #一樣在configuration節點裏面加入如下配置 <property> <name>dfs.namenode.name.dir</name> <value>/usr/hdfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/usr/hdfs/data</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> #從模板複製一份mapred-site.xml cp mapred-site.xml.template mapred-site.xml vi mapred-site.xml #一樣在configuration節點裏面加入如下配置 <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> vi yarn-site.xml #一樣在configuration節點裏面加入如下配置,注意將ip地址換成本機的。 <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <description>The address of the applications manager interface in the RM.</description> <name>yarn.resourcemanager.address</name> <value>192.168.1.112:18040</value> </property> <property> <description>The address of the scheduler interface.</description> <name>yarn.resourcemanager.scheduler.address</name> <value>192.168.1.112:18030</value> </property> <property> <description>The address of the RM web application.</description> <name>yarn.resourcemanager.webapp.address</name> <value>192.168.1.112:18088</value> </property> <property> <description>The address of the resource tracker interface.</description> <name>yarn.resourcemanager.resource-tracker.address</name> <value>192.168.1.112:8025</value> </property>
至此,已經將Hadoop初步的環境配置好了,在啓動以前還須要格式化namenode。
輸入命令「hadoop namenode -format」;
啓動命令:
start-dfs.sh
start-yarn.sh
中止命令:
stop-dfs.sh
stop-yarn.sh
啓動完畢,打開瀏覽器輸入 http://192.168.1.112:50070 與 http://192.168.1.112:18088 驗證安裝。
測試Hadoop
經過運行hadoop自帶的wordcount來驗證安裝是否正確。
進入hadoop安裝的目錄,輸入如下命令。
mkdir example cd example
編輯file1.txt與file2.txt
vi file1.txt
hello zhm
hello hadoop
hello cz
vi file2.txt
hadoop is ok
hadoop is newbee
hadoop 2.5.2
cd .. hadoop fs -mkdir /data hadoop fs -put -f example/file1.txt example/file2.txt /data #運行wordcount例子 hadoop jar ./share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.5.2-sources.jar org.apache.hadoop.examples.WordCount /data /output #查看運行結果 hadoop fs -cat /output/part-r-00000 #結果以下: 2.5.2 1 cz 1 hadoop 4 hello 3 is 2 newbee 1 ok 1 zhm 1
到這裏,環境就已經配置好了,下面就是搞使用Maven開發Hadoop項目了。
在安裝的過程當中,遇到問題是必然的。好好在網絡上搜索搜索通常均可以找到你想要的答案的。