<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      VMware平臺的Ubuntu部署完全分布式Hadoop環境

      前言:

      此文章是本人初次部署Hadoop的過程記錄以及所遇到的問題解決,這篇文章只有實際操作部分,沒有理論部分。因本人水平有限,本文難免存在不足的地方,如果您有建議,歡迎留言或私信告知于我,非常感謝。
      部分參考網絡資料,如有侵權,聯系刪除。

      環境準備(需提前下載好):

      1.VMware workstation 17.5,作為虛擬化平臺
      (官網下載地址:vmware workstation17.5(需登錄))

      2.Ubuntu20.04 (18.04,22.04,24.04應該也可以)
      (清華源鏡像地址:Ubuntu20.04

      3.JDK8(其他版本不適配)
      (官網下載鏈接(需登錄):下載頁面(選x64 Compressed Archive)
      (清華源的openjdk下載鏈接: openjdk8

      4.Hadoop-3.3.6
      (官網下載鏈接:Hadoop-3.3.6

      1.安裝Ubuntu

      (1)點擊創建新的虛擬機
      (如果沒有這一頁,可以點擊上面的選項卡,再點擊轉到主頁)
      在這里插入圖片描述
      (2)點擊自定義,下一步
      在這里插入圖片描述
      (3)默認即可,點下一步
      在這里插入圖片描述
      (4)點稍后安裝操作系統,下一步
      在這里插入圖片描述
      (5)這里選Linux,版本Ubuntu 64位
      在這里插入圖片描述
      (6)點擊瀏覽選擇合適的存儲位置
      在這里插入圖片描述
      (7)處理器數量和內核數量選 1
      在這里插入圖片描述
      (8)內存4GB,可根據個人情況調整(如果物理機只有16G,可改為3GB(3072MB))。
      在這里插入圖片描述
      (9)均默認,點下一步
      在這里插入圖片描述
      在這里插入圖片描述
      在這里插入圖片描述
      在這里插入圖片描述
      (10)建議磁盤大小30G,避免后續使用時空間不足,可根據個人情況調整
      在這里插入圖片描述
      (11)默認,點下一步
      在這里插入圖片描述
      (12)點擊完成
      在這里插入圖片描述
      (13)點編輯虛擬機設置
      在這里插入圖片描述
      (14)點擊CD/DVD,點擊“使用ISO鏡像文件”,再點擊瀏覽,找到剛剛下載的Ubuntu20.04鏡像
      在這里插入圖片描述
      (15)點擊Install Ubuntu ,建議使用英文,避免中文報錯。
      在這里插入圖片描述
      (16)點continue,
      這里如果窗口太小,看不到按鈕,同時按Alt + F7,然后會出現一個手的標志,可以移動窗口,再點擊鼠標左鍵來固定
      在這里插入圖片描述
      (17)點Minimal installation,點continue
      在這里插入圖片描述
      (18)默認,點Install Now
      在這里插入圖片描述
      (19)點擊 continue
      在這里插入圖片描述
      (20)默認,點擊continue
      在這里插入圖片描述
      (21)
      Your name 填Hadoop
      Your conputer's name 填master
      設置好密碼后,點continue
      在這里插入圖片描述
      (22)等待安裝
      在這里插入圖片描述

      (23)安裝完成,點擊Restart Now
      在這里插入圖片描述

      (24)這里直接按回車即可
      在這里插入圖片描述
      (25)點擊Hadoop,輸入密碼
      注意:Ubuntu安裝之后,數字小鍵盤默認關閉,按鍵盤上NumLock打開。
      在這里插入圖片描述
      (26)進入之后的設置,全部點擊右上角的skip和next即可
      在這里插入圖片描述
      (27)會有版本更新彈窗,點擊Don't Upgrade,再點擊OK
      在這里插入圖片描述
      在這里插入圖片描述
      (28)右上角會有一個紅色圓圈,點擊,再點Show update,然后點擊Install Now,之后輸入密碼,更新即可。
      在這里插入圖片描述
      在這里插入圖片描述
      在這里插入圖片描述
      在這里插入圖片描述

      (29)如果窗口太小,按Ctrl+Alt+T打開終端,輸入下面兩行代碼,運行結束之后再重啟一下虛擬機。

      sudo apt update
      
      sudo apt install open-vm-tools-desktop -y
      

      注:輸入 sudo apt update后,如果第(28)的更新未完成的話,會報錯,等待更新完成再輸入即可
      在這里插入圖片描述

      (30)現在第一個虛擬機以及創建完畢。
      創建第二個和第三個虛擬機時,只有第(21)不一樣,
      第二個虛擬機的Your conputer's name 填slave01
      第三個虛擬機的Your conputer's name 填slave02

      2.配置hosts網絡映射(三個機器均需要)

      (1)輸入命令,安裝網絡工具
      注:Ubuntu中,Ctrl + Shift + C 是復制,Ctrl + Shift + V 是粘貼

      sudo apt install net-tools
      

      (2)輸入命令查看ip地址

      ifconfig
      

      圖中第三行的192.168.61.142為本機IP,每個人電腦不相同。
      在這里插入圖片描述
      (3)在slave01機器和slave02機器執行相同操作,并記下IP。
      我的slave01的IP:192.168.61.143
      在這里插入圖片描述
      我的slave02的IP:192.168.61.144
      在這里插入圖片描述

      (4)三個機器都下載vim,方便后續使用。

      sudo apt install vim -y
      

      (5)編輯修改hosts文件,使節點之間通信方便

      sudo vim /etc/hosts
      

      進入之后,如下圖所示
      在這里插入圖片描述
      按鍵盤“ i ”進入編輯模式(插入模式),然后用上下左右方向鍵移動光標到第三行,輸入剛剛查詢到的IP,然后加上機器名(@后面的)
      例:【hadoop@master:~$】,中,master是機器名。
      編輯好后如圖所示(ip地址不相同,根據自己Ubuntu的IP來修改)
      在這里插入圖片描述
      編輯好之后,按鍵盤左上角ESC退出編輯模式,再按Shift + “;”,左下角會出現一個冒號“:”,然后輸入“wq”保存并退出文件。

      (6)配置好hosts后,使用ping命令來測試是否配置成功,之后在另外兩個機器也配置。

      ping slave01
      ping slave02
      

      出現如圖類似之后,即hosts配置成功,按Ctrl + C 終止,
      在這里插入圖片描述

      3.Java JDK8 配置(三個機器均需要)

      (1)在自己電腦下載好JDK之后,粘貼到虛擬機的Downloads里,鼠標右鍵,點Paste即可粘貼。
      注:打開左邊第二個圖標,打開之后點Downloads,再粘貼
      (也可以復制鏈接到虛擬機的瀏覽器,直接在虛擬機下載,省的再復制粘貼)
      在這里插入圖片描述

      在這里插入圖片描述
      注:如果出現類似報錯,點擊Retry再點擊Skip。如果不行的話就等待一會再復制粘貼試試。如果還是不行,執行下面的命令之后重啟虛擬機。
      在這里插入圖片描述

      sudo apt update
      sudo apt ?autoremove open-vm-tools -y
      sudo apt install open-vm-tools-desktop -y
      

      (2)執行命令,解壓jdk
      注:這里jdk-8u441-linux-x64.tar.gz不一定相同,根據個人情況修改,可以輸入jdk之后,按Tab鍵自動補全。

      cd /usr/lib
      sudo mkdir jvm
      cd ~/Downloads        //即 cd /home/hadoop/Downloads
      sudo tar -zxvf jdk-8u441-linux-x64.tar.gz -C /usr/lib/jvm
      

      (3)查看具體安裝的jdk版本號,例如我的是jdk1.8.0_441

      cd /usr/lib/jvm
      ls
      

      在這里插入圖片描述
      (4)配置java環境變量

      sudo vim ~/.bashrc
      

      進入文件后,按上下方向鍵,翻到最后,插入下面語句
      注:第一句的jdk不一定相同,根據第三步查詢的來修改。

      export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_441
      export JRE_HOME=${JAVA_HOME}/jre
      export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
      export PATH=${JAVA_HOME}/bin:$PATH
      

      執行命令:source ~/.bashrc,然后關閉終端,再重新打開,輸入java -version,如下圖所示即配置成功
      在這里插入圖片描述
      (5)在slave01和slave02執行相同的1~4,完成配置

      4.SSH 配置(三個機器均需要)

      (1)安裝ssh

      sudo apt install openssh-server -y
      

      (2)測試登錄本地,驗證是否成功。

      ssh localhost
      

      輸入之后,會停頓一下,如下圖,然后輸入yes,之后會讓輸入本機密碼。
      在這里插入圖片描述
      成功登錄如圖
      在這里插入圖片描述
      然后輸入exit 會出現退出登錄信息
      在這里插入圖片描述
      (3)前兩步驟三個機器均需下載,下載完成之后在進行第四步。

      (4)在master節點生成公鑰

      cd ~/.ssh
      rm ./id_rsa*        //如果是第一次下載ssh,可以不執行這一句
      ssh-keygen -t rsa   //輸入之后有停頓,全部按回車即可
      

      在這里插入圖片描述
      (5)在本機節點上設置免密登錄并測試

      cat ./id_rsa.pub >> ./authorized_keys
      ssh localhost
      

      會發現,再次執行ssh連接不再需要密碼
      在這里插入圖片描述
      (6)將公鑰傳到slave01、slave02(只在master機器上操作)
      注:第二個命令中hadoop@slave01需要根據自己Ubuntu的用戶名和機器名進行修改,如果你的用戶名+機器名是zhangsan@slave01,那么命令中的hadoop@slave01就需要修改為zhangsan@slave01,同理/home/hadoop也一樣改為/home/zhangsan,如果與示例相同則不需要更改

      cd ~/.ssh
      scp ~/.ssh/id_rsa.pub hadoop@slave01:/home/hadoop    //將公鑰給slave01
      scp ~/.ssh/id_rsa.pub hadoop@slave02:/home/hadoop    //將公鑰給slave02
      

      注:第二個和第三個命令之后需要輸入密碼,這個密碼是登錄slave01和slave02機器的密碼

      (7)在slave節點中將公鑰保存(此步驟只在slave01和slave02上操作)

      cat ~/id_rsa.pub>>~/.ssh/authorized_keys
      rm ~/id_rsa.pub
      

      (8)驗證免密連接(只在master機器上執行)

      ssh slave01
      

      注:如果你的用戶名和master機器的用戶名不一樣,那這里需要輸入完整的用戶名+機器名
      例 : slave節點用戶名和機器名是zhangsan@slave01,那你這里需要輸入ssh zhangsan@slave01
      這一次不需要密碼就能連接上,并且會看到用戶名和機器名由hadoop@master變成hadoop@slave01。

      然后輸入exit退出連接,再測試slave02

      ssh slave02
      

      成功連接后,輸入exit退出連接

      5.Hadoop安裝配置

      5.1master機器執行部分

      (1)在自己電腦下載好Hadoop文件之后,粘貼到虛擬機的Downloads里,鼠標右鍵,點Paste即可粘貼。
      注:打開左邊第二個圖標,打開之后點Downloads,再粘貼
      (如果下載速度過慢,可以搜索“磁力下載軟件”,找個順眼的安裝,這里不再推薦,將下載鏈接粘貼到磁力工具中再下載,速度會快點)
      在這里插入圖片描述
      (2)解壓
      注:我下載的是Hadoop-3.3.6的版本,根據自己下載的版本修改~/Downloads/hadoop-3.3.6.tar.gz這一部分,

      sudo tar -zxvf ~/Downloads/hadoop-3.3.6.tar.gz -C /usr/local
      cd /usr/local
      sudo mv ./hadoop-3.3.6 ./hadoop    //如果你的不是3.3.6,根據實際修改
      sudo chown -R hadoop ./hadoop
      

      (3)配置環境變量

      sudo vim ~/.bashrc
      

      進入文件后,按上下方向鍵,翻到最后,插入下面語句

      export HADOOP_HOME=/usr/local/hadoop
      export HADOOP_MAPRED_HOME=$HADOOP_HOME
      export HADOOP_COMMON_HOME=$HADOOP_HOME
      export HADOOP_HDFS_HOME=$HADOOP_HOME
      export YARN_HOME=$HADOOP_HOME
      export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lin/native
      export PATH=${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH
      

      執行命令:source ~/.bashrc,然后關閉終端,再重新打開一個終端,輸入hadoop version,如下圖即配置成功
      在這里插入圖片描述

      (4)文件配置
      文件1

      cd /usr/local/hadoop/etc/hadoop
      vim core-site.xml 
      

      打開文件后,翻到最后一行,先將文件自帶的<configuration></configuration>刪除,(<configuration> 是XML文件的根元素,只能出現一次,必須唯一!)
      在這里插入圖片描述

      再將下面內容粘貼到文件中

      <configuration>
      	<property>
      		<name>fs.defaultFS</name>
      		<value>hdfs://master:9000</value>
      	</property>
      	<property>
      		<name>io.file.buffer.size</name>
      		<value>131072</value>
      	</property>
      	<property>
      		<name>hadoop.tmp.dir</name>
      		<value>file:/usr/local/hadoop/tmp</value>
      		<description>Abasefor other temporary directories.</description>
      	</property>
      	<property>
      		<name>hadoop.proxyuser.spark.hosts</name>
      		<value>*</value>
      	</property>
      	<property>
      		<name>hadoop.proxyuser.spark.groups</name>
      		<value>*</value>
      	</property>
      </configuration>
      

      文件2:

      vim hdfs-site.xml
      

      操作跟上面一樣,翻到文件最下面后,先將文件自帶的<configuration></configuration>刪除,再將內容粘貼到文件上

      <configuration>
      	<property>
      		<name>dfs.namenode.secondary.http-address</name>
      		<value>master:9001</value>
      	</property>
      	<property>
      		<name>dfs.namenode.name.dir</name>
      		<value>file:/usr/local/hadoop/dfs/name</value>
      	</property>
      	<property>
      		<name>dfs.datanode.data.dir</name>
      		<value>file:/usr/local/hadoop/dfs/data</value>
      	</property>
      	<property>
      		<name>dfs.replication</name>
      		<value>2</value>
      	</property>
      	<property>
      		<name>dfs.webhdfs.enabled</name>
      		<value>true</value>
      	</property>
      </configuration>
      

      文件3:

      vim yarn-site.xml
      

      操作同上,先將文件自帶的<configuration></configuration>刪除,再將下面代碼粘貼到文件里

      <configuration>
      	<property>
      		<name>yarn.nodemanager.aux-services</name>
      		<value>mapreduce_shuffle</value>
      	</property>
      	<property>
      		<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
      		<value>org.apache.hadoop.mapred.ShuffleHandler</value>
      	</property>
      	<property>
      		<name>yarn.resourcemanager.address</name>
      		<value>master:8032</value>
      	</property>
      	<property>
      		<name>yarn.resourcemanager.scheduler.address</name>
      		<value>master:8030</value>
      	</property>
      	<property>
      		<name>yarn.resourcemanager.resource-tracker.address</name>
      		<value>master:8035</value>
      	</property>
      	<property>
      		<name>yarn.resourcemanager.admin.address</name>
      		<value>master:8033</value>
      	</property>
      	<property>
      		<name>yarn.resourcemanager.webapp.address</name>
      		<value>master:8088</value>
      	</property>
      </configuration>
      

      文件4:

      vim mapred-site.xml
      //如果你打開之后是空白文件,先退出文件,再執行下面的命令;如果打開之后有內容,不用執行
      cp mapred-site.xml.template mapred-site.xml
      

      操作同上,先將文件自帶的<configuration></configuration>刪除,再將下面代碼粘貼到文件里

      <configuration>
      	<property>
      		<name>mapreduce.framework.name</name>
      		<value>yarn</value>
      	</property>
      	<property>
      		<name>mapreduce.jobhistory.address</name>
      		<value>master:10020</value>
      	</property>
      	<property>
      		<name>mapreduce.jobhistory.webapp.address</name>
      		<value>master:19888</value>
      	</property>
      </configuration>
      

      文件5:

      sudo vim hadoop-env.sh
      

      操作同上,這個不用刪<configuration></configuration>,直接將下面代碼粘貼到文件最后,可以按方向鍵上面的PgDn/PageDown按鍵加快翻動
      注:jdk版本根據自己下載的更改,此處與剛剛Java環境變量配置的路徑一樣。

      export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_441
      

      文件6:

      sudo vim workers
      

      在這里插入圖片描述
      打開之后默認是localhost,刪除,然后將下面內容粘貼到里面。

      hadoop@slave01
      hadoop@slave02
      

      注:此處是兩個slave節點的完整用戶名和機器名,如果你的用戶名或機器名與示例不同,需要修改。
      在這里插入圖片描述
      (5)壓縮文件

      cd /usr/local
      sudo rm -rf ./hadoop/tmp
      sudo rm -rf ./hadoop/logs
      tar -zcvf ~/hadoop.master.tar.gz ./hadoop
      

      (6)將壓縮好的文件發送到slave機器上

      scp ~/hadoop.master.tar.gz hadoop@slave01:/home/hadoop
      scp ~/hadoop.master.tar.gz hadoop@slave02:/home/hadoop
      

      注:此處hadoop@slave01是slave01虛擬機的完整用戶名和機器名,如果與示例不同,根據自己的用戶名和機器名修改,/home/hadoop的hadoop同理。

      5.2 slave機器執行部分(slave01和slave02均需要執行一遍)

      (1)在slave節點上解壓hadoop.master.tar.gz文件,并給予授權

      sudo rm -rf /usr/local/hadoop
      sudo tar -zxvf ~/hadoop.master.tar.gz -C /usr/local
      sudo chown -R hadoop /usr/local/hadoop
      

      注:-R 后面的hadoop是slave節點的用戶名,如果與示例不同,根據自己的情況修改。
      /usr/local/hadoop這部分是固定的,不需要修改。

      6. Hadoop啟動與停止

      (1)格式化NameNode(只在master上操作)

      hdfs namenode -format
      

      注:只執行一次就行,之后再使用Hadoop,不需要再格式化?。?!
      運行完結果類似下圖
      在這里插入圖片描述

      (2)啟動HDFS(只在master節點上操作)

      start-dfs.sh
      

      然后在master,slave01,slave02上分別輸入jps,結果如下圖

      master節點
      在這里插入圖片描述

      slave01節點
      在這里插入圖片描述

      slave02節點
      在這里插入圖片描述

      (3)啟動YARN(只在master節點上操作)

      start-yarn.sh
      

      然后在master,slave01,slave02上分別輸入jps,結果如下圖

      master節點
      在這里插入圖片描述

      slave01節點
      在這里插入圖片描述

      salve02節點
      在這里插入圖片描述

      (4)網頁訪問(在master機器上操作)
      在瀏覽器中打開http://master:8088/cluster/nodes,節點情況如下圖
      在這里插入圖片描述
      如果能正常打開網頁,但沒有節點,先stop停止進程,
      執行sudo vim /etc/hosts,在第二行加個#和空格,如圖,
      之后再次運行進程就好了
      在這里插入圖片描述
      (5)停止HDFS和YARN

      stop-yarn.sh
      stop-dfs.sh
      

      也可以直接執行stop-all.sh全部關閉。

      附錄:
      有小伙伴兩小時急速完成,期待有新的記錄產生
      有小伙伴1小時17分鐘急速完成,期待有新的記錄產生

      7.部分問題解決:

      1.多次執行格式化操作hdfs namenode -format之后,導致DataNode進程或namenode看不到了。

      解決:這里給出一個適用于重啟運行的方式:刪除所有節點的/usr/local/hadoop/dfs中的內容,一般是name和data兩個文件夾,因為這里記錄了上次運行的集群ID等信息可能會導致沖突(當然這里只是部署階段,如果運行了很久,重要的數據需要小心)。然后清一下logs數據,方便再運行查看錯誤問題。最后在master節點上執行hadoop namenode -format,就可以再啟動Hadoop了。

      舉個不恰當的例子,就好像第一次格式化之后,dfs的實際位置id刷新在麻辣燙,第二次格式化之后,dfs實際位置刷新到火鍋,但是文件仍然保存著第一次麻辣燙的位置,實際位置與文件保存的位置不一樣,命令運行的時候部分信息就亂跑了,導致datanode與namenode無法加載出來。

      注:在執行之前,先stop-all.sh,將進程都停止了

      (1)以下是直接操作的代碼:(master和slave上都要執行)

      cd /usr/local/hadoop
      rm -rf /usr/local/hadoop/dfs
      rm -rf /usr/local/hadoop/tmp
      rm -rf /usr/local/hadoop/logs
      

      (2)把第一步的代碼,在master和slave機器上都執行之后,再進行下一步
      (3)在master機器上執行下面代碼

      hdfs namenode -format  //格式化
      

      (4)啟動HDFS(只在master節點上操作)

      start-dfs.sh
      

      (5)啟動YARN(只在master節點上操作)

      start-yarn.sh
      

      (6)之后jps與查看網頁步驟同上

      2.IP自動更改

      部分人的虛擬機,在再次打開后,會發現ip與上一次的ip不一樣了,可以修改hosts(參考第二大步),或者參考網上設置靜態IP。

      posted @ 2025-04-15 15:55  Hunter_Code  閱讀(362)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 极品白嫩少妇无套内谢| 永定县| 精品国产一区二区三区国产区| 一色屋精品视频在线观看| 亚洲av一本二本三本| 宣恩县| 亚洲男人AV天堂午夜在| 丁香五月亚洲综合在线国内自拍| 欧美福利电影A在线播放| 亚在线观看免费视频入口| 中文字幕人成无码免费视频| 亚洲乱熟女一区二区三区| 国产97人人超碰caoprom| 老熟妇老熟女老女人天堂| 亚州中文字幕一区二区| 国产精品自拍午夜福利| 思思99热精品在线| 国产天美传媒性色av| AV秘 无码一区二| 狠狠躁夜夜躁人人爽天天5| 亚洲综合一区二区国产精品| 肥臀浪妇太爽了快点再快点| 免费午夜无码片在线观看影院| 国产精品三级一区二区三区| 中文字幕人妻中文AV不卡专区 | 久久久久久久久久久久中文字幕| 国产亚洲色视频在线| 五月丁香色综合久久4438| 国产麻豆放荡av激情演绎| 国产小受被做到哭咬床单GV| 亚洲高清WWW色好看美女| 国产精品伊人久久综合网| 久热综合在线亚洲精品| 国产精品久久人人做人人爽| 亚洲韩国精品无码一区二区三区| 激情久久综合精品久久人妻| 色偷偷偷久久伊人大杳蕉| 欧美性潮喷xxxxx免费视频看| 日韩剧情片电影网站| 国产麻豆成人传媒免费观看| 18av千部影片|