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