大数据之路- Hadoop环境搭建(Linux)
前期部署
1.JDK
2.上傳HADOOP安裝包
2.1官網(wǎng):http://hadoop.apache.org/
?
2.2下載hadoop-2.6.1的這個(gè)tar.gz文件,官網(wǎng):
?
https://archive.apache.org/dist/hadoop/common/hadoop-2.6.1/
下載成功后,把這個(gè)tar.gz包上傳到服務(wù)器上,命令:
通過SecureCRT軟件alt+p打開SFTP,然后把這個(gè)文件上傳
上傳成后,解壓
tar -xvzf hadoop-2.6.1.tar.gz然后把解壓后的文件移動(dòng)到/usr下,改名為hadoop
命令:?
mv hadoop-2.6.1 /usr/hadoop然后開始把hadoop的命令加到環(huán)境變量里面去
?
?
?
然后記得source一下
然后再修改配置文件,配置文件查看查看官網(wǎng):
http://hadoop.apache.org/docs/r2.6.5/hadoop-project-dist/hadoop-common/SingleCluster.html
?最簡化配置如下:(在/usr/hadoop/etc/hadoop)
主要配置文件 /usr/hadoop/etc/hadoop/ hadoop-env.sh 環(huán)境變量 運(yùn)行時(shí)配置 core-site.xml 核心公共配置 hdfs-site.xml mapred-site.xml yarn-site.xml slaves vim core-site.xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hdp-node-01:9000</value> </property> <property> <name>hadoop.tmp.dir</name> //指定進(jìn)程工作目錄,數(shù)據(jù)存放目錄 <value>/home/HADOOP/apps/hadoop-2.6.1/tmp</value> core-site.xml里面可以設(shè)置垃圾回收屬性?fs.trash,interval?,默認(rèn)在core-default問件里,默認(rèn)7天 vim hdfs-site.xml //設(shè)置保留副本的數(shù)量,即備份的數(shù)量,默認(rèn)是3。客戶端把文件交給fds之后,fds保留的副本數(shù)量 <property> <name>dfs.replication</name> <value>2</value> </property> vim mapre-site.xml mapreduce要放在一個(gè)資源調(diào)度平臺(tái)上面跑,所以需要指定資源調(diào)度平臺(tái)yarn,默認(rèn)是local,不是在集群上運(yùn)行 <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> vim yarn-site.xml //指定集群節(jié)點(diǎn)老大,不然提交程序運(yùn)行時(shí)不知道找誰 <configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>svr01</value> //主機(jī)名 </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> vim slaves //記錄本集群的datenode,用來自動(dòng)化統(tǒng)一管理datenode 192.168.1.88 srv01 192.168.1.89 srv02 192.168.1.90 srv03 配置ssh。(前提先配置好/etc/hosts文件) ssh-keygen -t rsa 四個(gè)回車 ssh-copy-id srv01 //首先是自己 ssh-copy-id srv02 ssh-copy-id srv03 格式化后分發(fā)hadoop文件?/usr/hadoop?和環(huán)境變量文件?/etc/profile?到所有的集群服務(wù)器。 scp /etc/profile srv02:/etc/ //記得到srv02去source它的profile文件 scp /etc/profile srv03:/etc/ //記得到srv02去source它的profile文件 scp -R /usr/hadoop srv02:/usr/hadoop scp -R /usr/hadoop srv03:/usr/hadoop?hadoop格式化是為了生成fsimage文件。
hadoop要先格式化才能開啟。他是一個(gè)架設(shè)在linux上的文件系統(tǒng),并不是格式化linux的文件系統(tǒng)。 hadoop啟動(dòng)命令/sbin/start-dfs.sh yarn啟動(dòng)命令/sbin/start-yarn.sh 或者:直接啟動(dòng)hdfs+yarn服務(wù):sbin/start-all.sh 檢查dfs的進(jìn)程,jps,下圖代表hdfs正常啟動(dòng)可以在瀏覽器上看到hadoop集群狀態(tài)
namenode的ip加上50070端口
http://192.168.1.88:50070/
?
配置HDFS垃圾回收
fs.trash.interval
描述:檢查點(diǎn)被刪除的分鐘數(shù)。如果為零,垃圾功能將被禁用。可以在服務(wù)器和客戶端上配置此選項(xiàng)。如果垃圾桶被禁用服務(wù)器端,則客戶端配置被檢查。如果在服務(wù)器端啟用垃圾箱,則使用服務(wù)器上配置的值,并忽略客戶端配置值。
例子:7天后自動(dòng)清理
<property><name>fs.trash.interval</name><value>7 * 24 * 60</value> </property>?
?NameNode啟動(dòng)過程詳解
namenode的數(shù)據(jù)存放在兩個(gè)地方,一個(gè)是內(nèi)存,一個(gè)是磁盤(edits,fsimage)
第一次啟動(dòng)HDFS
1.format : 格式化hdfs
2.make image : 生成image文件
3.start NameNode:read fsimage
4.start Datenode : datanode 向 NameNdoe 注冊(cè),匯報(bào) block report ,
5.create dir /user/xxx/temp? :寫入edits文件
6.put files /user/xxx/tmp(*=site,xml) :寫入edites文件
7.delete file /user/xxx/tmp/(core-site.xml):寫入edits文件
?
對(duì)dfs的操作都會(huì)記錄到edits里面
?第二次啟動(dòng)hdfs:
1.啟動(dòng)NameNode,讀取fsimage里面的鏡像文件,讀取edits文件,因?yàn)閑dits記錄著上一次hdfs的操作,寫入一個(gè)新的fsimage,創(chuàng)建一個(gè)新的edits記錄操作
2.start Datenode : datanode 向 NameNdoe 注冊(cè),匯報(bào) block report ,
3.create dir /user/xxx/temp? :寫入edits文件
4.put files /user/xxx/tmp(*=site,xml) :寫入edites文件
5.delete file /user/xxx/tmp/(core-site.xml):寫入edits文件
6.Secondly NameNode定期將edits文件和fsimage文件合并成一個(gè)新的fsimage文件替換掉NameNode上面的fsimage
?
另:手動(dòng)編譯hadoop記得要聯(lián)網(wǎng),因?yàn)樗怯胢aven管理的,很多依賴需要下載
?
轉(zhuǎn)載于:https://www.cnblogs.com/RzCong/p/7323864.html
總結(jié)
以上是生活随笔為你收集整理的大数据之路- Hadoop环境搭建(Linux)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 透过源码看Session
- 下一篇: Maven快速导出maven工程的依赖包