日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

完全分布式部署Hadoop

發布時間:2025/7/25 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 完全分布式部署Hadoop 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

完全分布式部署 Hadoop
分析:
1)準備 3 臺客戶機(關閉防火墻、靜態 ip、主機名稱)
2)安裝 jdk
3)配置環境變量
4)安裝 hadoop
5)配置環境變量
6)安裝 ssh
7)配置集群
8)啟動測試集群

scp
1)scp 可以實現服務器與服務器之間的數據拷貝。
2)案例實操
(1)將 hadoop101 中/opt/module 和/opt/software 文件拷貝到 hadoop102、hadoop103 和
hadoop104 上。


[root@hadoop101 /]# scp -r /opt/module/ root@hadoop102:/opt
[root@hadoop101 /]# scp -r /opt/software/ root@hadoop102:/opt
[root@hadoop101 /]# scp -r /opt/module/ root@hadoop103:/opt
[root@hadoop101 /]# scp -r /opt/software/ root@hadoop103:/opt
[root@hadoop101 /]# scp -r /opt/module/ root@hadoop104:/opt
[root@hadoop101 /]# scp -r /opt/software/ root@hadoop105:/opt


(2)將 hadoop101 服務器上的/etc/profile 文件拷貝到 hadoop102 上。

[root@hadoop102 opt]# scp root@hadoop101:/etc/profile /etc/profile

(3)實現兩臺遠程機器之間的文件傳輸(hadoop103 主機文件拷貝到 hadoop104 主機上)
[atguigu@hadoop102 test]$ scp atguigu@hadoop103:/opt/test/haha
atguigu@hadoop104:/opt/test/

SSH 無密碼登錄?(配置集群必備)
1)配置 ssh
(1)基本語法
ssh 另一臺電腦的 ip 地址
(2)ssh 連接時出現 Host key verification failed 的解決方法
[root@hadoop102 opt]# ssh 192.168.1.103
The authenticity of host '192.168.1.103 (192.168.1.103)' can't be established.
RSA key fingerprint is cf:1e:de:d7:d0:4c:2d:98:60:b4:fd:ae:b1:2d:ad:06.
Are you sure you want to continue connecting (yes/no)?
Host key verification failed.
(3)解決方案如下:直接輸入 yes
2)無密鑰配置
(1)進入到我的 home 目錄
[atguigu@hadoop102 opt]$ cd ~/.ssh
(2)生成公鑰和私鑰:
[atguigu@hadoop102 .ssh]$ ssh-keygen -t rsa
然后敲(三個回車),就會生成兩個文件 id_rsa(私鑰)、id_rsa.pub(公鑰)
(3)將公鑰拷貝到要免密登錄的目標機器上

[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop103
[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop104

3).ssh 文件夾下的文件功能解釋
(1)~/.ssh/known_hosts :記錄 ssh 訪問過計算機的公鑰(public key)
(2)id_rsa :生成的私鑰
(3)id_rsa.pub :生成的公鑰
(4)authorized_keys :存放授權過得無秘登錄服務器公鑰

?

rsync
rsync 遠程同步工具,主要用于備份和鏡像。具有速度快、避免復制相同內容和支持符
號鏈接的優點。
rsync 和 scp 區別:用 rsync 做文件的復制要比 scp 的速度快,rsync 只對差異文件做更
新。scp 是把所有文件都復制過去。
(1)查看 rsync 使用說明
man rsync | more
(2)基本語法
rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
命令 命令參數 要拷貝的文件路徑/名稱 目的用戶@主機:目的路徑
選項
-r 遞歸
-v 顯示復制過程

-l 拷貝符號連接?

編寫集群分發腳本 xsync
1)需求分析:循環復制文件到所有節點的相同目錄下。
(1)原始拷貝:
rsync -rvl /opt/module root@hadoop103:/opt/
(2)期望腳本:
xsync 要同步的文件名稱
(3)在/usr/local/bin 這個目錄下存放的腳本,可以在系統任何地方直接執行。
2)案例實操:
(1)在/usr/local/bin 目錄下創建 xsync 文件,文件內容如下:
[root@hadoop102 bin]# touch xsync
[root@hadoop102 bin]# vi xsync

#!/bin/bash

#1 獲取輸入參數個數,如果沒有參數,直接退出

pcount=$#

if((pcount==0));

then

echo no args; exit;

fi

#2 獲取文件名稱

p1=$1 fname=`basename $p1`

echo fname=$fname

#3 獲取上級目錄到絕對路徑

pdir=`cd -P $(dirname $p1);pwd`

echo pdir=$pdir?


#4 獲取當前用戶名稱

user=`whoami`

#5 循環

for((host=103; host<105; host++)); do? ? ? ? ?

#echo $pdir/$fname $user@hadoop$host:$pdir? ? ? ?

?echo --------------- hadoop$host ----------------? ? ? ? ?

rsync -rvl $pdir/$fname $user@hadoop$host:$pdir

done?

?

(2)修改腳本 xsync 具有執行權限
[root@hadoop102 bin]# chmod 777 xsync
[root@hadoop102 bin]# chown atguigu:atguigu -R xsync

配置集群

1)集群部署規劃 hadoop102 hadoop103 hadoop104

?hadooop102hadoop103hadoop104
HDFS

NameNode

DataNode

?

DataNode

SacondaryNameNode

DataNode

YARNNodemanager

ResourceManager

NodeManager?

Nodemanager

?

2)配置文件?

1---------vi hadoop-env.sh
export JAVA_HOME=/hadoop/jdk1.7.0_75/

?

2---------vi core-site.xml
<configuration>

<!-- 指定 HDFS 中 NameNode 的地址 -->
<property>
  <name>fs.defaultFS</name>
  <value>hdfs://hadoop102:9000</value>
</property>

<!-- 指定 hadoop 運行時產生文件的存儲目錄 -->
<property>
  <name>hadoop.tmp.dir</name>
  <value>/opt/module/hadoop-2.7.2/data/tmp</value>
</property>

</configuration>

?

3------------vi hdfs-site.xml

<configuration>
<property>
  <name>dfs.replication</name>
  <value>3</value>
</property>
<property>
  <name>dfs.namenode.secondary.http-address</name>
  <value>hadoop104:50090</value>
</property>
</configuration>

?



4:在這里是沒有mapred-site.xm 的。需要先 mv ?mapred-site.xml.template ?mapred-site.xml ?修改一下
----------vi mapred-site.xml

<!-- 指定 mr 運行在 yarn 上 -->

<configuration>
 <!-- 指定 mr 運行在 yarn 上 -->
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
</configuration>


5-----------vi yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->

<!-- reducer 獲取數據的方式 -->
<property>
  <name>yarn.nodemanager.aux-services</name>
  <value>mapreduce_shuffle</value>
</property>

<!-- 指定 YARN 的 ResourceManager 的地址 -->
<property>
  <name>yarn.resourcemanager.hostname</name>
  <value>hadoop103</value>
</property>
</configuration>

?

?

?

.啟動集群:
1.初始化HDFS:hadoop namenode -format
2.啟動HDFS:sbin/目錄下 ? sh start-dfs.sh
3.啟動YARN:sbin/目錄下 ? sh start-yarn.sh
驗證:
1.jps:查看服務啟動
2、http://mini111:50070
3、http://moni111:8088
十.測試:

1.上傳文件到HDFS:hadoop fs -mkdir -p /wordcount/input ? ? hadoop fs -put /hadoop/words.txt /wordcount/input

?

轉載于:https://www.cnblogs.com/2016-zck/p/9429144.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的完全分布式部署Hadoop的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。