1. 程式人生 > >05.偽分布式、分布式搭建

05.偽分布式、分布式搭建

分布式計算 遠程 查看進程 centos 字符 sco har ssh-key manage

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 centos@s101 ssh-copy-id centos@s102 ssh-copy-id centos@s103 ssh-copy-id centos@s104 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 centos@s104:/soft/hadoop/ scp -r /soft/hadoop/etc centos@s103:/soft/hadoop/ scp -r /soft/hadoop/etc centos@s102:/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

05.偽分布式、分布式搭建