快照? ---還原點
克隆注意點
1.修改主機(jī)名? ? vi? /etc/sysconfig/network
2.修改mac地址? ? vi /etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR=00:0C:29:CD:79:8C? ---刪掉
UUID=57d4....? ? ? ? ? ? ? ? ? ? ? ? ? ? --刪掉
vi /etc/udev/rules.d/70-persistent-net.rules
--? 刪除錯誤的mac地址所在的行
3.重啟網(wǎng)絡(luò)服務(wù)
# service network restart
Hadoop? -----大數(shù)據(jù)基礎(chǔ)平臺
Lucene? 開源的高性能全文檢索工具包
Nutch? ? 開源的Web搜索引擎
--Doug Couting
谷歌公司(三大論文):
MapReduce? -- 計算框架模型(分而治之)? ? ? ? ? ? ----->MapReduce
GFS? ? ? ? ? ? ? ? --存儲數(shù)據(jù)? ? -->HDFS(hadoop distributed file system)
BigTable ? ? ? --存儲數(shù)據(jù)
---->MapReduce,HDFS加入apache 基金會? ,合并后也就是今天的Hadoop
大數(shù)據(jù)定義:海量數(shù)據(jù)里面挖掘/發(fā)現(xiàn)/采集/分析有價值的信息.
Hadoop? 四個重要組成部分
common? ---基礎(chǔ)模塊
HDFS? ? ? ? --存儲數(shù)據(jù) (讀-寫)? 一次寫入,多次讀取
--namenode? 存儲元數(shù)據(jù)(數(shù)據(jù)存儲的位置)
--datanode? ? 數(shù)據(jù)
Yarn? ? ? ? ? -- 資源管理(CPU/內(nèi)存/虛擬代碼)(2.x版本新增)
--ResourceManager
--NodeManger
MapReduce? --計算模型(分而治之)? ? key/value
-- 分? map
--合? ? reduce
Hadoop 生態(tài)系統(tǒng)
單機(jī)模式
偽分布式模式? --用于開發(fā)測試
分布式模式
偽分布式模式搭建:
環(huán)境準(zhǔn)備-----
1.系統(tǒng)的主機(jī)名(root用戶)
#vi? /etc/sysconfig/network
hadoop-senior.summer.com(不要用下劃線)
2.創(chuàng)建普通用hadoop(后期都使用這個用戶)
修改密碼# echo 123456 | passwd --stdin hadoop
3.把ip地址設(shè)置成靜態(tài)ip
#setup? --console(虛擬機(jī)圖形化界面)
或者
vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=none
IPADDR=192.168.153.128
NETMASK=255.255.255.0
GATEWAY=192.168.153.2
DNS1=202.96.209.5
DNS2=8.8.8.8
4.關(guān)閉防火墻和selinux
service iptables stop
chkconfig iptables off
vi /etc/sysconfig/selinux
SELINUX=disabled (進(jìn)去默認(rèn)是enforing)
5 修改host
vi /etc/sysconfig/selinux
[root@localhost ~]# vi /etc/hosts
6.重啟服務(wù)器
目錄準(zhǔn)備
[root@hadoop-senior ~]# mkdir /opt/modules(root用戶才能執(zhí)行)
[root@hadoop-senior ~]# mkdir /opt/softwares(root用戶才能執(zhí)行)
更改權(quán)限
[root@hadoop-senior ~]# chown -R hadoop:hadoop /opt/(hadoop用戶能執(zhí)行)
軟件包準(zhǔn)備
上傳 到softwares
安裝jdk 到modules
用root用戶修改vi /etc/profile 配置java_
#JAVA HOME
JAVA_HOME=/opt/modules/jdk1.7.0_67
PATH=$PATH:$JAVA_HOME/bin
hadoop用戶下 執(zhí)行? $ source /etc/profile
用root用戶刪除之前本身自帶的java 包
# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64 tzdata-java-2012j- ? ? ? 1.el6.noarch java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64
用hadoop用戶安裝hadoop
$ tar zxvf hadoop-2.5.0.tar.gz? -C /opt/modules/
使用notepad++工具修改配置
配置HDFS 相關(guān):
/opt/modules/hadoop-2.5.0/etc/hadoop
hadoop-env.sh :
-- export JAVA_HOME=/opt/modules/jdk1.7.0_67
yarn-env.sh:
--export JAVA_HOME=/opt/modules/jdk1.7.0_67
mapred-env.sh:
--export JAVA_HOME=/opt/modules/jdk1.7.0_67
core-site.xml:
fs.defaultFS
hdfs://hadoop-senior.summer.com:8020
hdfs-site.xml:
dfs.replication
1
啟動hdfs --->>(第一次啟動hdfs服務(wù)要格式化)format? ---->start
bin/hdfs namenode -format
先啟動namenode
$ sbin/hadoop-daemon.sh start namenode
在啟動datanode
$ sbin/hadoop-daemon.sh start datanode
查看 jps (查看java進(jìn)程命令 )
3379 Jps
3306 DataNode
3231 NameNode
測試上傳文件
$ bin/hdfs -help (查看幫助)
步驟:
----bin/hdfs dfs -mkdir /input? 在集群下創(chuàng)建input目錄
bin/hdfs dfs -put /etc/yum.conf? /input? 上傳/etc/yum.conf 到input目錄下
bin/hdfs dfs -ls /input? 列出input目錄
bin/hdfs dfs -cat /input/yum.conf? 查看input目錄下的yun.conf
tips :可以通過瀏覽器查看
配置Yarn相關(guān):
配置
yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
mapred-site.xml
mapreduce.framework.name
yarn
$ sbin/yarn-daemon.sh? start resourcemanager
$ sbin/yarn-daemon.sh? start nodemanager
[hadoop@hadoop-senior hadoop-2.5.0]$ jps
3855 NodeManager
3912 Jps
3788 ResourceManager
3306 DataNode
3231 NameNode
通過瀏覽器瀏覽? 192.168.153.128:8088
簡單的mapreduce 測試
創(chuàng)建一個 文件 vi sort.txt
上傳到hdfs目錄input下bin/hdfs dfs -put sort.txt? /input
執(zhí)行jar包中的命令bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar? wordcount /input/sort.txt /output
總結(jié)
配置的所有文件:
hadoop-env.sh? ? core-site.xml? hdfs-site.xml
yarn-env.sh? ? mapred-env.sh
yarn-site.xml? mapred-site.xml
日志:
.log:通過log4j,記錄大部分應(yīng)用程序的日志信息
.out:記錄標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯誤日志
Hadoop 常用shell命令:
$ bin/hdfs dfs
-put? /ect/passwd? ? ? /? 上傳文件passwd 到 /根目錄
-ls
-cat? ? -text 查看文件內(nèi)容
-mkdir [-p]? 創(chuàng)建目錄
-mv? 移動文件
-cp? 復(fù)制
-du? 統(tǒng)計
-chmod 修改權(quán)限
Hadoop 比較重要的配置選項:
namenode:元數(shù)據(jù)?
datanode: 數(shù)據(jù)存儲目錄?
系統(tǒng)默認(rèn):
文件名:core-default.xml /hdfs-default.xml /yarn-default.xml
位置存在/hadoop-2.5/share/hadoop/對應(yīng)的模塊的jar包中
自定義的:
位置:$HADOOP_HOME/etc/hadoop
文件名:core-site.xml /hdfs-site.xml/yarn-site.xml/
自定義namenode 節(jié)點? datanode 節(jié)點
hdfs-sitem.xml? --聲明namenode 節(jié)點所在的服務(wù)器
dfs.namenode.http-address
hdfs://hadoop-senior.summer.com:50070
core-sitem.xml-- 定義datanode 數(shù)據(jù)存放的目錄
hadoop.temp.dir
/opt/modules/hadoop-2.5.0/data
yarn-sitem.xml? ? -- 聲明哪臺服務(wù)器存resoucemanager
yarn.resourcemanager.hostname
hadoop-senior.summer.com
修改配置文件后停止服務(wù),重新格式化namenode,,在重啟
283? sbin/hadoop-daemon.sh stop namenode
284? sbin/hadoop-daemon.sh stop datanode
285? sbin/yarn-daemon.sh stop resourcemanager
286? sbin/yarn-daemon.sh stop nodemanager
287? jps
288? bin/hdfs dfs namenode -format
291? sbin/hadoop-daemon.sh? start namenode
292? sbin/hadoop-daemon.sh? start datanode
293? sbin/yarn-daemon.sh start resourcemanager
294? sbin/yarn-daemon.sh start nodemanager
日志聚合
---? 日志上傳到HDFS
yarn-site.xml
yarn.log-aggregation-enable
true
yarn.log-aggregation.retain-seconds
8640
mapred-site.xml
mapreduce.jobhistory.webapp.address
hadoop-senior.summer.com:19888
啟動服務(wù) (查看job history服務(wù))
$ sbin/mr-jobhistory-daemon.sh? start historyserver
最后一共啟動的服務(wù)
[hadoop@hadoop-senior hadoop-2.5.0]$ jps
5032 DataNode
6656 Jps
5571 ResourceManager
4949 NameNode
5820 NodeManager
5957 JobHistoryServer