1. 程式人生 > >05.偽分散式、克隆、完全分散式搭建

05.偽分散式、克隆、完全分散式搭建

  Hadoop:   資料儲存模組   資料計算模組   doug cutting //hadoop之父 //分散式檔案系統GFS,可用於處理海量網頁的儲存 //分散式計算框架MAP REDUCE,可用於處理海量網頁的索引計算問題     hadoop: GFS ====> NDFS(Nutch distributed filesystem)===> HDFS Mapreduce ====> Mapreduce       hadoop安裝: ========================================= 本地模式:使用的儲存系統,是Linux系統 1、將安裝包通過winscp傳送到centos家目錄   2、解壓安裝包到/soft下 tar -xzvf hadoop-2.7.3.tar.gz -C /soft   3、進入到/soft下,建立符號連結 cd /soft ln -s hadoop-2.7.3/ hadoop   4、配置環境變數 //sudo nano /etc/profile # hadoop環境變數 export HADOOP_HOME=/soft/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin   5、使環境變數生效 source /etc/profile   6、驗證hadoop hadoop version   7、測試hadoop hdfs dfs -ls //列出 hdfs dfs -mkdir //建立資料夾 hdfs dfs -cat //檢視檔案內容 hdfs dfs -touchz //建立檔案 hdfs dfs -rm //刪除檔案       偽分散式:使用Hadoop檔案系統,只用一個主機   1、配置檔案,使hadoop三種模式共存 1)進入hadoop配置資料夾 cd /soft/hadoop/etc/   2)重新命名hadoop資料夾為local(本地模式) mv hadoop local   3)拷貝local資料夾為pseudo和full cp -r local pseudo cp -r local full   4)建立hadoop符號連結指向pseudo ln -s pseudo hadoop   2、修改配置檔案 1)進入hadoop配置資料夾 cd /soft/hadoop/etc/hadoop   2)配置檔案core-site.xml --------------------------------------------- <?xml version="1.0"?> <!-- value標籤需要寫本機ip --> <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://192.168.17.100/</value> </property> </configuration>   3)配置檔案hdfs-site.xml --------------------------------------------- <?xml version="1.0"?> <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>   4)配置檔案mapred-site.xml --------------------------------------------- <?xml version="1.0"?> <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>   5)配置檔案yarn-site.xml --------------------------------------------- <?xml version="1.0"?> <configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>192.168.17.100</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>   6)修改hadoop-env.sh,修改第25行 --------------------------------------------- export JAVA_HOME=/soft/jdk     7)格式化檔案系統 --------------------------------------------- hdfs namenode -format     8)啟動hadoop ----------------------------------------------- start-all.sh //其中要輸入多次密碼     9)通過jps檢視程序 //java process ------------------------------------------------- 4018 DataNode 4195 SecondaryNameNode 4659 NodeManager 4376 ResourceManager 3885 NameNode 4815 Jps     體驗hadoop: ====================================================   進入hadoop的web介面: 192.168.23.100:50070   列出hdfs的檔案系統 hdfs dfs -ls /   在hdfs中建立檔案 hdfs dfs -touchz /1.txt   上傳檔案到hdfs hdfs dfs -put jdk.tar.gz /   從hdfs下載檔案 hdfs dfs -get /1.txt   體驗Mapreduce 1)建立檔案hadoop.txt並新增資料   2)將hadoop.txt上傳到hdfs hdfs dfs -put hadoop.txt /   3)使用hadoop自帶的demo進行單詞統計 hadoop jar /soft/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar  wordcount /1.txt /out   4)通過web介面檢視hadoop執行狀態 http://192.168.23.100:8088         ssh: secure shell =========================================== 1、遠端登入 2、在遠端主機上執行命令     配置ssh免密登入   1、生成公私金鑰對 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa   -t //指定演算法rsa -P //指定一個字串進行加密 -f //指定生成檔案的位置     2、將公鑰拷貝到其他節點 ssh-copy-id [email protected]   3、測試ssh ssh 192.168.17.100   4、停止hadoop stop-all.sh       完全分散式: =============================================   1、克隆主機 //連結克隆

 

 

 

 

  2、開啟s101-s104 3、修改主機名 //sudo nano /etc/hostname 101 => s101 102 => s102 103 => s103 104 => s104   4、修改靜態ip //sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33 100 => 101 100 => 102 100 => 103 100 => 104   5、重啟客戶機 reboot     6、修改hosts檔案,修改主機名和ip的對映 // sudo nano /etc/hosts   192.168.17.101 s101 192.168.17.102 s102 192.168.17.103 s103 192.168.17.104 s104 192.168.17.105 s105 7、配置s101到其他主機的免密登陸 s101 => s101      => s102      => s103      => s104   1)在s101生成公私金鑰對 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa   2)分別將公鑰拷貝到其他節點 ssh-copy-id
[email protected]
ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected]   8、修改hadoop配置檔案 0)修改hadoop符號連結,指向full ln -sfT /soft/hadoop/etc/full /soft/hadoop/etc/hadoop   1)core-site.xml <?xml version="1.0"?> <!-- value標籤需要寫本機ip --> <configuration>         <property>                 <name>fs.defaultFS</name>                 <value>hdfs://s101</value>         </property> <property>                 <name>hadoop.tmp.dir</name>                 <value>/home/centos/hadoop</value>         </property> </configuration>     2)hdfs-site.xml <?xml version="1.0"?> <configuration>         <property>                 <name>dfs.replication</name>                 <value>3</value>         </property> </configuration>       3)mapred-site.xml <?xml version="1.0"?> <configuration>         <property>                 <name>mapreduce.framework.name</name>                 <value>yarn</value>         </property> </configuration>     4)yarn-site.xml <?xml version="1.0"?> <configuration>         <property>                 <name>yarn.resourcemanager.hostname</name>                 <value>s101</value>         </property>         <property>                 <name>yarn.nodemanager.aux-services</name>                 <value>mapreduce_shuffle</value>         </property> </configuration>     5)hadoop-env.sh   第25行修改 export JAVA_HOME=/soft/jdk     6)修改slaves檔案,將localhost改為 s102 s103 s104   7)同步配置檔案 1.將其他節點的/soft/hadoop/etc刪掉 ssh s102 rm -rf /soft/hadoop/etc ssh s104 rm -rf /soft/hadoop/etc ssh s103 rm -rf /soft/hadoop/etc   2.將本機的/soft/hadoop/etc分發到其他節點 scp -r /soft/hadoop/etc
[email protected]
:/soft/hadoop/ scp -r /soft/hadoop/etc [email protected]:/soft/hadoop/ scp -r /soft/hadoop/etc [email protected]:/soft/hadoop/   8)格式化hadoop檔案系統 hdfs namenode -format   9)啟動hadoop start-all.sh   體驗hadoop完全分散式: ============================================ 1)開啟web介面 192.168.23.101:50070   2)將hadoop.txt上傳到hdfs hdfs dfs -put hadoop.txt /   3)使用hadoop自帶的demo進行單詞統計 hadoop jar /soft/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar  wordcount /hadoop.txt /out   4)通過web介面檢視hadoop執行狀態 http://192.168.23.101:8088