国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux環(huán)境搭建Hadoop及完全分布式集群

這篇具有很好參考價值的文章主要介紹了Linux環(huán)境搭建Hadoop及完全分布式集群。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Hadoop

Hadoop是一個開源的分布式計算框架,旨在處理大規(guī)模數(shù)據(jù)集和進行并行計算。核心包括兩個組件:HFDS、MapReduce。

配置方案

各虛擬機的用戶名分別為test0、test1、test2,主機名為hadoop100、hadoop101、hadoop102

虛擬機的分配如下:

  • hadoop100:NameNode + ResourceManager
  • hadoop101:DataNode + NodeManager
  • hadoop102:SecondaryNameNode

其中Master為hadoop100,這個配置方案可以提供集群的基本功能,Master節(jié)點負責管理整個文件系統(tǒng)的元數(shù)據(jù)和資源調(diào)度,而Worker節(jié)點負責存儲數(shù)據(jù)和執(zhí)行任務(wù)。

各節(jié)點的作用:

  1. NameNode:負責管理整個分布式文件系統(tǒng)的命名空間和文件元數(shù)據(jù)。它是HDFS的主節(jié)點,負責存儲文件系統(tǒng)的元數(shù)據(jù)信息,并處理客戶端的文件操作請求。將一臺虛擬機作為NameNode節(jié)點可以提供高可靠性和容錯性。
  2. SecondaryNameNode:主要負責協(xié)助NameNode進行元數(shù)據(jù)備份和檢查點操作。它定期從NameNode獲取編輯日志,并創(chuàng)建檢查點,從而減少NameNode對元數(shù)據(jù)的負擔和故障恢復(fù)時間。請注意,SecondaryNameNode并不是NameNode的備份,無法自動接管NameNode的角色。
  3. HDFS DataNode:負責存儲和管理實際的數(shù)據(jù)塊。它接收并處理從NameNode分配的數(shù)據(jù)塊寫入請求,并執(zhí)行數(shù)據(jù)塊的讀取和復(fù)制操作。HDFS DataNode節(jié)點存儲實際的數(shù)據(jù)塊和后續(xù)讀寫操作。

安裝Hadoop

上傳壓縮包,并解壓

tar zxvf hadoop-3.3.6.tar.gz

打開環(huán)境變量注冊表

vim /etc/profile

配置環(huán)境變量

export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

配置生效

source /etc/profile

進入Hadoop的安裝目錄,編輯/etc/hadoop/hadoop-env.sh文件,設(shè)置JAVA_HOME為您的JDK安裝路徑

export JAVA_HOME=/opt/dev/jdk1.8.0_151

檢查是否安裝完成,使用命令查看hfs中的根目錄

hadoop fs -ls /

由于Hadoop單機模式是一種用于開發(fā)和測試的模式,它并不需要進行集群和分布式環(huán)境的設(shè)置。在Hadoop單機模式下,默認情況下,Hadoop會使用當前用戶的身份進行操作,而無需輸入密碼。

配置Hadoop分布式集群

前提條件:

  1. 三臺Linux系統(tǒng)虛擬機(可使用VMWare軟件進行克隆)定義為hadoop100、hadoop101、hadoop102
  2. 所有虛擬機都需要聯(lián)通網(wǎng)絡(luò)
  3. 虛擬機之間區(qū)別主機名
  4. 三臺虛擬機都擁有相同路徑版本的 JDK 和 Hadoop
設(shè)置主機名

首先分別打開三臺虛擬機,分別使用下列指令將主機名修改。

由于NetworkManager服務(wù)的配置問題,直接使用hostname指令設(shè)置主機名在重啟后會失效,需要每次開機重啟,若想永久修改主機名生效,則修改/etc/hostname文件

vi /etc/hostname

下述的hadoop100是指新的主機名。同理修改其他的虛擬機主機名

hadoop100

分別檢查虛擬機網(wǎng)絡(luò),當有數(shù)據(jù)返回時則無問題

ping www.baidu.com

編輯主機名列表文件

vi /etc/hosts

在文件加入,指定IP地址對應(yīng)的hostname

192.168.10.128 badoop100
192.168.10.130 hadoop101
192.168.10.131 hadoop102

重啟生效

reboot

在主機驗證

ping hadoop101
分發(fā) JDK 和 Hadoop

如果沒有安裝JDK和Hadoop,則可先在某一臺虛擬機上安裝完畢:

tar -zxvf /opt/jdk1.8.0_151.tar.gz

然后在該虛擬機上通過下列的集群分發(fā)腳本將 JDK和Hadoop分別分發(fā)到其他的虛擬機中,后續(xù)要輸入yes和當前將要連接的hadoop101的密碼:

# 將當前JDK發(fā)送到test1用戶下主機名為hadoop101的/opt/dev/jdk1.8.0_151路徑
scp -r /opt/dev/jdk1.8.0_151 test1@hadoop101:/opt/dev/jdk1.8.0_151  
# 將Hadoop發(fā)送到test2用戶下主機名為hadoop102的/opt/dev/jdk1.8.0_151路徑
scp -r /opt/hadoop/bin/hadoop test1@hadoop102:/opt/hadoop/bin/hadoop

記得配置環(huán)境變量,查看環(huán)境變量profile文件

vim /etc/profile

目標虛擬機都要設(shè)置環(huán)境變量

export JAVA_HOME=/opt/dev/jdk1.8.0_151
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/bin
export PATH=$PATH:$JAVA_HOME/bin

export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

讓配置文件生效

source /etc/profile

輸入java指令檢驗Java是否安裝成功

java -version

輸入hadoop指令查看是否安裝成功

hadoop
設(shè)置免密登錄

配置SSHD:如果免密登錄不生效或出現(xiàn)連接錯誤,可能是由于目標節(jié)點的SSH服務(wù)器配置不正確。在目標節(jié)點上,編輯/etc/ssh/sshd_config文件,確保以下設(shè)置:

vim /etc/ssh/sshd_config
PubKeyAuthentication yes
PasswordAuthentication no

重啟ssh服務(wù):

sudo service ssh restart

分別在三個虛擬機中的~/.ssh目錄下生成id_rsa和id_rsa.pub文件,分別對應(yīng)著私鑰和公鑰:

ssh-keygen -t rsa

將公鑰復(fù)制到其他虛擬機上,實現(xiàn)SSH的無密碼登錄:

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

修改authorized_keys文件的權(quán)限

chmod 600 ~/.ssh/authorized_keys

將主節(jié)點的公鑰文件分發(fā)到集群中的各個節(jié)點上,使得節(jié)點可以進行免密登錄??梢允褂胹sh-copy-id命令實現(xiàn)自動分發(fā)。運行以下命令,其中test1、test2是目標節(jié)點的登錄用戶名,hadoop101、hadoop102是節(jié)點主機名:

ssh-copy-id -i ~/.ssh/id_rsa.pub test1@hadoop101
ssh-copy-id -i ~/.ssh/id_rsa.pub test2@hadoop102

輸入完成后,輸入目標機的密碼,將主節(jié)點的公鑰添加到從節(jié)點的~/.ssh/authorized_keys文件中。

遠程登錄目標機,測試是否成功共享密鑰,如果可以成功登錄且不用輸入密碼,則表示免密登錄已經(jīng)配置成功:

ssh test1@hadoop101
ssh test2@hadoop102
配置hadoop-env.sh

打開文件

vi etc/hadoop/hadoop-env.sh

修改文件

export JAVA_HOME=/opt/dev/jdk1.8.0_381
配置core-site.xml

打開文件

vi etc/hadoop/core-site.xml

修改文件:

fs.defaultFS:該參數(shù)是配置指定HDFS的通信地址。

hadoop.tmp.dir:該參數(shù)配置的是Hadoop臨時目錄

<configuration>
 <property>
     <name>fs.defaultFS</name>
     <value>hdfs://hadoop100:9000</value>
 </property>
 <property>
     <name>hadoop.tmp.dir</name>
     <value>/opt/hadoopTmp/</value>
 </property>
</configuration>
配置hdfs-site.xml

打開文件

vi  etc/hadoop/hdfs-site.xml

修改文件:

dfs.namenode.http-address:該參數(shù)是配置NameNode的http訪問地址和端口號。因為在集群規(guī)劃中指定hadoop100設(shè)為NameNode的服務(wù)器,故設(shè)置為hadoop100:9870。

dfs.namenode.secondary.http-address:該參數(shù)是配置SecondaryNameNode的http訪問地址和端口號。在集群規(guī)劃中指定hadoop102設(shè)為SecondaryNameNode的服務(wù)器,故設(shè)置為hadoop102:50090。

dfs.replication:該參數(shù)是配置HDFS副本數(shù)量。

dfs.namenode.name.dir:該參數(shù)是設(shè)置NameNode存放的路徑。

dfs.datanode.data.dir:該參數(shù)是設(shè)置DataNode存放的路徑。

<configuration>
 <property>
      <name>dfs.namenode.http-address</name>
      <value>hadoop100:9870</value>
 </property>
 <property>
      <name>dfs.namenode.secondary.http-address</name>
      <value>hadoop102:50090</value>
 </property>
 <property>
      <name>dfs.replication</name>
      <value>3</value>
 </property>
 <property>
      <name>dfs.namenode.name.dir</name>
      <value>/opt/hadoopTmp/dfs/name</value>
 </property>
 <property>
      <name>dfs.datanode.data.dir</name>
      <value>/opt/hadoopTmp/dfs/data</value>
 </property>
</configuration>
配置yarn-site.xml

打開文件

vi etc/hadoop/yarn-site.xml

修改文件:

參數(shù)說明:

yarn.resourcemanager.hostsname:該參數(shù)是指定ResourceManager運行在那個節(jié)點上。

yarn.resourcemanager.webapp.address:該參數(shù)是指定ResourceManager服務(wù)器的web地址和端口。

yarn.nodemanager,aux-services:該參數(shù)是指定啟動時加載server的方式。

yarn.nodemanager.aux-services.mapreduce.shuffle.class:該參數(shù)是指定使用mapreduce_shuffle中的類。

yarn.log-aggregation-enable:該參數(shù)是配置是否啟用日志聚集功能。

yarn.log-aggregation.retain-seconds:該參數(shù)是配置聚集的日志在HDFS上保存的最長時間。

yarn.nodemanager.remote-app-log-dir:該參數(shù)是指定日志聚合目錄。

<configuration>
 <property>
    <name>yarn.resourcemanager.hostsname</name>
    <value>hadoop100</value>
 </property>
 <property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>hadoop100:8088</value>
 </property>
 <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.log-aggregation-enable</name>
    <value>true</value>
 </property>
 <property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>106800</value>
 </property>
 <property>
    <name>yarn.nodemanager.remote-app-log-dir</name>
    <value>/user/hadoopcontainer/logs</value>
 </property>
</configuration>
配置mapred-site.xml

打開文件

 vi etc/hadoop/mapred-site.xml

修改文件參數(shù)說明:

mapreduce.framework.name:該參數(shù)是指定MapReduce框架運行在YARN上。

mapreduce.jobhistory.address:該參數(shù)是設(shè)置MapReduce的歷史服務(wù)器安裝的位置及端口號。

mapreduce.jobhistory.webapp.address:該參數(shù)是設(shè)置歷史服務(wù)器的web頁面地址和端口。

mapreduce.jobhistory.intermediate-done-dir:該參數(shù)是設(shè)置存放日志文件的臨時目錄。

mapreduce.jobhistory.done-dir:該參數(shù)是設(shè)置存放運行日志文件的最終目錄。

<configuration>
 <property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
 </property>
 <property>
     <name>mapreduce.jobhistory.address</name>
     <value>hadoop102:10020</value>
 </property>
 <property>
     <name>mapreduce.jobhistory.webapp.address</name>
     <value>hadoop102:19888</value>
 </property>
 <property>
     <name>mapreduce.jobhistory.intermediate-done-dir</name>
     <value>${hadoop.tmp.dir}/mr-history/tmp</value>
 </property>
 <property>
     <name>mapreduce.jobhistory.done-dir</name>
     <value>${hadoop.tmp.dir}/mr-history/done</value>
 </property>
</configuration>
配置主次節(jié)點

PS:hadoop3以后slaves改為workers,新建文件

vim etc/hadoop/slaves
vim etc/hadoop/workers

添加所有節(jié)點的主機名:

hadoop100
hadoop101
hadoop102
分發(fā)配置文件

在其他節(jié)點查看下當前存放hadoop目錄是否具有權(quán)限寫入,否則后續(xù)分發(fā)將失敗

ls -ld /opt/hadoop

如果沒有權(quán)限,則輸入下列指令開放hadoop目錄的寫入權(quán)限

sudo chmod -R 777 /opt/hadoop

將上述配置好的hadoop相關(guān)文件分發(fā)到其他虛擬機:

scp -r /opt/hadoop/* test1@hadoop101:/opt/hadoop/
scp -r /opt/hadoop/* test2@hadoop102:/opt/hadoop/

在主節(jié)點創(chuàng)建日志文件夾

sudo mkdir /opt/hadoopTmp/dfs/name
sudo mkdir /opt/hadoopTmp/dfs/data
啟動集群

在主節(jié)點輸入格式化命令:

hdfs namenode -format

啟動集群

start-all.sh

停止集群

stop-all.sh

驗證是否成功

jps

當看到下列內(nèi)容表示成功:

Master: NameNode、DataNode、ResourceManager、NodeManager

slave1: SecondaryNameNode、DataNode、NodeManager

slave2: DataNode、NodeManager

Web端訪問

關(guān)閉防火墻:

service iptables stopservice iptables stop

訪問HDFS:ip地址:9870;

訪問YARN:ip地址:8088;

版本注意事項

  1. Hadoop3版本后,NameNode、Secondary NameNode, DataNode的端口出現(xiàn)了變化。

    2版本端口號 3版本端口號
    namenode 8020 9820
    namenode htttp web 50070 9870
    namenode https web 50470 9871
    secondnamenode https web 50091 9869
    secondnamenode https web 50091 9869
    secondnamenode http web 50090 9868
    datanode ipc 50020 9867
    datanode 50010 9866
    datanode http web 50075 9864
    datanode https web 50475 9865
  2. Hadoop3版本之前的主從節(jié)點文件為slaves,3之后為workers文章來源地址http://www.zghlxwxcb.cn/news/detail-842693.html

到了這里,關(guān)于Linux環(huán)境搭建Hadoop及完全分布式集群的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Linux從零搭建Hadoop集群(CentOS7+hadoop 3.2.0+JDK1.8+Mapreduce完全分布式集群案例)

    Linux從零搭建Hadoop集群(CentOS7+hadoop 3.2.0+JDK1.8+Mapreduce完全分布式集群案例)

    和相關(guān)配置版本 :Linux CentOS Hadoop Java 版本: CentOS7 Hadoop3.2.0 JDK1.8 虛擬機參數(shù)信息內(nèi)存3.2G、處理器2x2、內(nèi)存50G ISO:CentOS-7-x86_64-DVD-2009.iso 基本主從思路: 先把基礎(chǔ)的設(shè)置(SSH、JDK、Hadooop、環(huán)境變量、Hadoop和MapReduce配置信息)在一臺虛擬機(master)上配好,通過

    2024年02月05日
    瀏覽(28)
  • hadoop完全分布式集群搭建(超詳細)-大數(shù)據(jù)集群搭建

    hadoop完全分布式集群搭建(超詳細)-大數(shù)據(jù)集群搭建

    本次搭建完全分布式集群用到的環(huán)境有: jdk1.8.0 hadoop-2.7.7 本次搭建集群所需環(huán)境也給大家準備了,下載鏈接地址:https://share.weiyun.com/dk7WgaVk 密碼:553ubk 本次完全分布式集群搭建需要提前建立好三臺虛擬機,我分別把它們的主機名命名為:master,slave1,slave2 一.配置免密登陸 首先

    2024年02月10日
    瀏覽(29)
  • hadoop-3.3.3完全分布式集群搭建

    hadoop-3.3.3完全分布式集群搭建

    隨著大數(shù)據(jù)的不斷發(fā)展,hadoop在前段時間就已經(jīng)更新到了3.x版本,與2.x版本存在著一些差異,在某大數(shù)據(jù)競賽中也是使用的hadoop3.x的版本,本文就介紹hadoop3.x版本的完全分布式集群搭建。 jdk:1.8 hadoop:3.3.3 操作系統(tǒng):centos7 需要的所有安裝包都放在master節(jié)點的/opt目錄下,安

    2024年02月09日
    瀏覽(29)
  • Hadoop3.1.4完全分布式集群搭建

    Hadoop3.1.4完全分布式集群搭建

    在Centos7中直接使用root用戶執(zhí)行hostnamectl命令修改,重啟(reboot)后永久生效。 要求:三臺主機的名字分別為:master slave1 slave2 關(guān)閉后,可查看防火墻狀態(tài),當顯示disavtive(dead)的字樣,說明CentOS 7防火墻已經(jīng)關(guān)閉。 但要注意的是,上面的命令只是臨時關(guān)閉了CentOS 7防火墻,

    2024年04月17日
    瀏覽(56)
  • 寫給大忙人看Hadoop完全分布式集群搭建

    寫給大忙人看Hadoop完全分布式集群搭建

    vi /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/hdfs-site.xml 修改其內(nèi)容為: dfs.replication 3 dfs.name.dir /usr/local/hadoop/hdfs/name dfs.data.dir /usr/local/hadoop/hdfs/data 復(fù)制mapred-site.xml.template為mapred-site.xml cp /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/hadoop-2.10.0/etc/hadoop/mapred-site.xml

    2024年03月27日
    瀏覽(23)
  • 基于Linux環(huán)境下搭建Hadoop3.3.5偽分布式集群

    基于Linux環(huán)境下搭建Hadoop3.3.5偽分布式集群

    目錄 架構(gòu)設(shè)計: 一、下載hadoop安裝包 二、解壓及構(gòu)建軟連接 三、 修改配置文件 1. 配置workers文件 ? //hadoop02中叫slaves 2. 修改hadoop-env.sh ? ? ? ?? 3. 修改core-site.xml ? ? 4. 修改hdfs-site.xml 5. 配置:mapred-site.xml文件 ? 6. 配置yarn-site.xml文件? 四、根據(jù)hdfs-site.xml的配置項,準備數(shù)

    2024年01月19日
    瀏覽(51)
  • 用三臺云服務(wù)器搭建hadoop完全分布式集群

    用三臺云服務(wù)器搭建hadoop完全分布式集群

    本次利用云服務(wù)器搭建Hadoop集群, 在開始之前,你需要3臺云服務(wù)器,可以在同一家購買也可以在不同家購買。此次教程采用百度云產(chǎn)品,可以換不同賬號新手免費試用幾個月,具體配置如下: 服務(wù)器名稱 配置 磁盤容量 master 2cpu 內(nèi)存4GB 40G slave1 1cpu 內(nèi)存2GB 60G slave2 1cpu 內(nèi)存

    2024年02月04日
    瀏覽(87)
  • 大數(shù)據(jù)內(nèi)容分享(九):Hadoop-生產(chǎn)集群搭建(完全分布式)

    大數(shù)據(jù)內(nèi)容分享(九):Hadoop-生產(chǎn)集群搭建(完全分布式)

    目錄 Hadoop運行模式——完全分布式 1、準備3臺虛擬機(關(guān)閉防火墻、配置靜態(tài)IP 和 主機名稱) 2、安裝JDK 和 Hadoop 并配置JDK和Hadoop的環(huán)境變量 3、配置完全分布式集群 4、集群配置 1)集群部署規(guī)劃 2)配置文件說明 3)配置集群 5、集群啟動 與 測試 1)workers的配置 2)啟動集

    2024年02月21日
    瀏覽(24)
  • 大數(shù)據(jù)開發(fā)·關(guān)于虛擬機Hadoop完全分布式集群搭建教程

    大數(shù)據(jù)開發(fā)·關(guān)于虛擬機Hadoop完全分布式集群搭建教程

    官網(wǎng)鏈接 進入后網(wǎng)站如圖,各位按需下載 官網(wǎng)鏈接 進入頁面點擊下載 再根據(jù)我們需要下載的軟件進入下載頁面 點擊右側(cè)紅框內(nèi)的免費授權(quán)頁面獲取免費許可 進入后如圖,兩者我們都需要所以都勾選,填寫的郵箱用于接收下載鏈接,下載后進行安裝即可 這里先和大家強調(diào)一

    2024年02月07日
    瀏覽(32)
  • 搭建Hadoop3.x完全分布式集群(CentOS 9)

    搭建Hadoop3.x完全分布式集群(CentOS 9)

    虛擬機相關(guān): VMware workstation 16:虛擬機 vmware_177981.zip CentOS Stream 9:虛擬機 CentOS-Stream-9-latest-x86_64-dvd1.iso Hadoop相關(guān) jdk1.8:JDK jdk-8u261-linux-x64.tar.gz Hadoop 3.3.6:Hadoop Hadoop 3.3.6.tar.gz 輔助工具 putty:tools putty.exe mtputty:tools mtputty.exe winscp:tools WinSCP-6.3.1-Portable.zip 本文相關(guān)資源可以

    2024年04月14日
    瀏覽(32)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包