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

Ubuntu搭建Hadoop3.X分布式和高可用集群,一步步深入

這篇具有很好參考價值的文章主要介紹了Ubuntu搭建Hadoop3.X分布式和高可用集群,一步步深入。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

1. 介紹

2. 基礎(chǔ)環(huán)境

2.1 關(guān)閉防火墻

2.2 修改主機名和主機映射

2.3 免密登錄

2.4?安裝jdk

3. 搭建hadoop3.x完全分布式

3.1 下載包地址

3.2 上傳并解壓

3.3?創(chuàng)建目錄

3.4 修改配置文件?

3.4.1 core.site.xml?

3.4.2?hdfs-site.xml

?3.4.3?yarn-site.xml

3.4.4 mapred-site.xml

3.4.5?workers

3.4.6?hadoop-env.sh

3.4 7 yarn.env.sh

4. 分發(fā)配置?

5. 啟動集群

?4. 搭建高可用

4.1 安裝zookeeper

4.1.1?下載并解壓包

4.1.2 配置環(huán)境變量

4.1.3 修改配置文件

4.1.4 配置zoo.cfg

4.1.5 配置myid文件

4.1.6 分發(fā)配置

?4.1.7 啟動zookeeper服務(wù)

4.2 修改配置文件

4.2.1 hdfs-site.xml

4.2.2 core-site.xml

4.2.3?hadoop-env.sh

4.2.4 yarn-site.xml

4.2.5?mapred-site.xml

4.3 分發(fā)配置

4.4 啟動高可用集群

4.4.1 啟動zookeeper

4.4.2?啟動JN節(jié)點

4.4.3 hdfs格式化

4.4.4 復(fù)制元數(shù)據(jù)

4.4.5 ZKFC格式化

4.4.6 啟動hdfs集群?

?4.6.7 開啟yarn集群

?4.6.8 開啟歷史服務(wù)

5. 問題:

5.1 復(fù)制三臺虛擬機然后打開另外兩個虛擬機時出現(xiàn)以下錯誤

5.2 搭建完全分布式時格式化以后啟動ubuntu01報錯


1. 介紹

1. 完全分布式和高可用是在分布式系統(tǒng)中常見的兩種架構(gòu)概念。

  • 完全分布式(Fully Distributed)架構(gòu):?完全分布式架構(gòu)是指在分布式系統(tǒng)中,每個節(jié)點都是相同的,沒有單一節(jié)點負(fù)責(zé)所有的任務(wù)或數(shù)據(jù)。每個節(jié)點具有完整的功能和數(shù)據(jù)副本,可以處理請求并參與計算,存儲和傳輸數(shù)據(jù)。這種架構(gòu)通常用于大規(guī)模的分布式系統(tǒng),例如Hadoop集群,其中每個節(jié)點都可以獨立運行任務(wù)和存儲數(shù)據(jù),以提供高并發(fā)和容錯能力。
  • 高可用(High Availability)架構(gòu):高可用架構(gòu)是指系統(tǒng)能夠在面臨硬件或軟件故障時保持連續(xù)性和可用性。在高可用架構(gòu)中,系統(tǒng)設(shè)計了冗余的組件和備用機制,以防止單點故障,并能夠快速恢復(fù)。常見的高可用性技術(shù)和策略包括故障轉(zhuǎn)移,自動切換,持久性存儲和監(jiān)控系統(tǒng)。高可用架構(gòu)在關(guān)鍵業(yè)務(wù)系統(tǒng)和服務(wù)中十分重要,以確保系統(tǒng)的持續(xù)性和可用性,防止業(yè)務(wù)中斷和數(shù)據(jù)丟失。

在實際應(yīng)用中,可以將完全分布式和高可用架構(gòu)結(jié)合起來,以構(gòu)建具有高性能和高可用性的分布式系統(tǒng)。例如,一個完全分布式的Hadoop集群可以使用高可用技術(shù)來確保各個節(jié)點和關(guān)鍵組件的持續(xù)性和可用性,從而提供可靠的大數(shù)據(jù)處理和存儲解決方案。

2. Hadoop 3.x與Hadoop 2.x和Hadoop 1.x在架構(gòu)和功能方面有一些區(qū)別:

  1. 架構(gòu)升級:Hadoop 1.x采用了單點故障的架構(gòu),整個框架的穩(wěn)定性和擴展性受到限制。Hadoop 2.x引入了YARN作為資源管理器,將資源管理和作業(yè)調(diào)度分離,架構(gòu)更加靈活。而Hadoop 3.x在Hadoop 2.x的基礎(chǔ)上進(jìn)行了進(jìn)一步的演進(jìn),提供了更好的可擴展性和高可用性。
  2. 高可用:Hadoop 1.x未提供內(nèi)置的高可用性功能,需要依賴第三方工具來實現(xiàn)。Hadoop 2.x引入了HA NameNode來解決HDFS的單點故障問題。而Hadoop 3.x在HA NameNode的基礎(chǔ)上引入了熱故障切換(Hot Failover)和自動故障轉(zhuǎn)移(Automatic Failover)功能,提供了更高級的高可用機制。
  3. 資源管理:Hadoop 1.x使用JobTracker來處理資源管理和作業(yè)調(diào)度,整個集群資源的分配比較簡單。Hadoop 2.x引入了YARN作為資源管理器,將資源管理和作業(yè)調(diào)度分離開來,能夠更好地支持多個應(yīng)用程序共享集群資源。而Hadoop 3.x對YARN進(jìn)行了一些改進(jìn)和優(yōu)化,提供了更高的資源利用率和性能。
  4. 存儲層:Hadoop 2.x和Hadoop 3.x都支持HDFS作為分布式存儲系統(tǒng),但Hadoop 3.x引入了Hadoop Ozone來提供分布式對象存儲的解決方案,適用于處理非結(jié)構(gòu)化數(shù)據(jù)。

總的來說,Hadoop 3.x相對于之前的版本在架構(gòu)升級、高可用性、資源管理和存儲層等方面進(jìn)行了很多改進(jìn)和優(yōu)化,提供了更好的性能和可靠性,更適合處理大規(guī)模數(shù)據(jù)和復(fù)雜的數(shù)據(jù)處理任務(wù)。

Hadoop 3.x是一個開源的分布式存儲和處理大規(guī)模數(shù)據(jù)的框架,它的架構(gòu)由以下幾個核心組件組成:

  1. HDFS(Hadoop Distributed File System):HDFS是Hadoop的分布式文件系統(tǒng),它用于存儲和管理海量數(shù)據(jù)。它將數(shù)據(jù)劃分成多個塊,并將這些塊分布在集群中的不同節(jié)點上,以實現(xiàn)數(shù)據(jù)的高可靠性和可擴展性。
  2. YARN(Yet Another Resource Negotiator):YARN是Hadoop的集群資源管理系統(tǒng),負(fù)責(zé)分配和管理集群中的計算資源。它允許多個應(yīng)用程序共享集群資源,并根據(jù)應(yīng)用程序的需求動態(tài)分配資源。
  3. MapReduce:MapReduce是一種用于處理大規(guī)模數(shù)據(jù)的計算模型。它通過將任務(wù)拆分為多個Map和Reduce階段,實現(xiàn)了數(shù)據(jù)的并行處理和分布式計算。Map階段將輸入數(shù)據(jù)映射為鍵值對,而Reduce階段對這些鍵值對進(jìn)行聚合和計算。
  4. Hadoop Common:Hadoop Common是Hadoop框架的基礎(chǔ)模塊,包含了許多共享的工具和庫,用于支持Hadoop的其他組件。它提供了一些通用的功能,如安全認(rèn)證、日志記錄和網(wǎng)絡(luò)通信等。
  5. Hadoop Ozone:Hadoop Ozone是Hadoop 3.x引入的新組件,它提供了一種分布式對象存儲的解決方案。它可以在Hadoop集群上提供可靠的、高性能的對象存儲服務(wù),適用于處理大規(guī)模的非結(jié)構(gòu)化數(shù)據(jù)。

這些核心組件共同工作,使Hadoop 3.x能夠以高可靠性和可擴展性處理和存儲大規(guī)模數(shù)據(jù)。通過將數(shù)據(jù)分布在集群中的多個節(jié)點上,并利用分布式計算模型,Hadoop 3.x能夠快速處理海量數(shù)據(jù),并實現(xiàn)數(shù)據(jù)的高可用和容錯性。

3. 操作系統(tǒng):

  • Ubuntu18

4. 軟件:

  • jdk1.8
  • hadoop-3.1.0
  • zookeeper3.8.2

5. 四臺服務(wù)器:

ubuntu01、ubuntu02、ubuntu03、ubuntu04

2. 基礎(chǔ)環(huán)境

  • 關(guān)閉防火墻
  • 修改主機名,主機名和ip地址映射
  • ssh免密登錄
  • 安裝jdk

2.1 關(guān)閉防火墻

ufw stop

sudo systemctl stop ufw.service

sudo systemctl disable ufw.service

2.2 修改主機名和主機映射

vi /etc/hostname

vi /etc/hosts

2.3 免密登錄

  • 三臺機器分別生成各自的公鑰、私鑰
ssh-keygen -t rsa
  • 檢查公鑰生成是否正確
less /root/.ssh/id_rsa.pub
  • 拷貝三臺機器的公鑰到第一臺機器

ssh-copy-id node01

  • 檢查拷貝情況

less /root/.ssh/authorized_keys

或cat ~/.ssh/authorized_keys

  • 復(fù)制node01的認(rèn)證到其他機器
scp /root/.ssh/authorized_keys node02:/root/.ssh
scp /root/.ssh/authorized_keys node03:/root/.ssh

2.4?安裝jdk

下載包地址:

https://www.oracle.com/java/technologies/downloads/archive/

分別四臺服務(wù)器:ubuntu01、ubuntu02、ubuntu03、ubuntu04都裝上

  • 創(chuàng)建文件目錄和上傳jdk包

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • ?解壓jdk包并重命名

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 配置環(huán)境變量

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 更新環(huán)境變量和查看是否安裝成功?

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3. 搭建完全分布式

3.1 下載包地址

hadoop包下載地址

Apache Hadoophttps://hadoop.apache.org/releases.htmlubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.2 上傳并解壓

  • ?把下載好的包上傳到/opt/software/hadoop,沒有的需要提前創(chuàng)建,然后進(jìn)行解壓

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • ?配置環(huán)境變量

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.3?創(chuàng)建目錄

cd /opt/software/hadxuoop/hdfs/

mkdir hdfs

cd hdfs

mkdir data

mkdir name

mkdir tmp

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.4 修改配置文件?

需要修改的配置文件都有:core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、workers、hadoop-env.sh

cd /opt/software/hadoop/hadoop-3.1.0/etc/hadoop

3.4.1 core.site.xml?

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.4.2?hdfs-site.xml

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?3.4.3?yarn-site.xml

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.4.4 mapred-site.xml

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.4.5?workers

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.4.6?hadoop-env.sh

# 修改內(nèi)容

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

3.4 7 yarn.env.sh

# 添加以下配置
export JAVA_HOME = /usr/local/java/jdk1.8

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4. 分發(fā)配置?

  • 把ubuntu01的hadoop配置使用scp命令發(fā)送到ubuntu02/ubuntu03/ubuntu04
cd /opt/software/
scp -r hadoop/ ubuntu01: $PWD
scp -r hadoop/ ubuntu02: $PWD
scp -r hadoop/ ubuntu03: $PWD
scp -r hadoop/ ubuntu04: $PWD

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 其它三臺也需要配置環(huán)境變量,步驟同上

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

5. 啟動集群

  • 在ubuntu01上格式化

hdfs namenode -format

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper??

  • 在ubuntu01上啟動

start-dfs.sh

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 訪問ubuntu01的web端

??http://192.168.101.101:9870/

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 啟動yarn

start-yarn.sh

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 查看進(jìn)程:jps

ubuntu01上

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?ubuntu02、ubuntu03、ubuntu04

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?4. 搭建高可用

4.1 安裝zookeeper

4.1.1?下載并解壓包

  • 下載zookeeper地址

Apache ZooKeeperhttps://zookeeper.apache.org/releases.htmlubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 上傳壓縮包并進(jìn)行解壓

cd /opt/software/zookeeper?

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 修改解壓后的目錄名稱

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.1.2 配置環(huán)境變量

vi /etc/profile

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 更新環(huán)境變量?

source /etc/profile

4.1.3 修改配置文件

在/opt/software/zookeeper/zookeeper-3.8.2目錄下創(chuàng)建目錄 data 用來存放 ZK 數(shù)據(jù) , 此路徑需要在z oo.cfg 配置 文件里面使用
ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.1.4 配置zoo.cfg

  • conf目錄下沒有zoo.cfg,需要復(fù)制出來

cp?zoo_sample.cfg?zoo.cfg

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • ?修改配置
#dataDir 配置是修改
dataDir = /opt/software/zookeeper/zookeeper-3.8.2/data
# 以下內(nèi)容添加在文件末尾,需要注意配置后面不能有空格
server .1 = ubuntu01:2888:3888
server .2 = ubuntu02:2888:3888
server .3 = ubuntu03:2888:3888
server .3 = ubuntu04:2888:3888

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.1.5 配置myid文件

  • 在/opt/software/zookeeper/zookeeper-3.8.2/data/目錄下創(chuàng)建myid文件

cd /opt/software/zookeeper/zookeeper-3.8.2/data/

  • 當(dāng)前主機是ubuntu01,就配1

?ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.1.6 分發(fā)配置

# 分發(fā)zookeeper文件


scp -r zookeeper-3.8.2/ root@ubuntu02:$PWD
scp -r zookeeper-3.8.2/ root@ubuntu02:$PWD

scp -r zookeeper-3.8.2/ root@ubuntu04:$PWD

將ubuntu02的myid修改為2,將ubuntu03的myid修改為3,將ubuntu04的myid修改為4

# 分發(fā)/etc/profile
scp /etc/profile root@ubuntu02:/etc/
scp /etc/profile root@ubuntu03:/etc/

scp /etc/profile root@ubuntu04:/etc/
# 然后在兩個從節(jié)點執(zhí)行source /etc/profile

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?4.1.7 啟動zookeeper服務(wù)

  • 四臺都執(zhí)行啟動命令

zkServer.sh start

這是ubuntu01,四臺里面ubuntu04是leader,其它均為follower

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?下面是ubuntu02、ubuntu03、ubuntu04

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.2 修改配置文件

4.2.1 hdfs-site.xml

  • 在分布式基礎(chǔ)上新增以下內(nèi)容
    <!-- 指定hdfs的nameservices為mycluster,需要和core-site.xml中的保持一致 -->
    <property>
          <name>dfs.nameservices</name>
          <value>mycluster</value>
    </property>

    <!-- mycluster下面有兩個NameNode,分別是nn1,nn2 -->
    <property>
        <name>dfs.ha.namenodes.mycluster</name>
        <value>nn1,nn2</value>
    </property>

    <!-- nn1的RPC通信地址 -->
    <property>
        <name>dfs.namenode.rpc-address.mycluster.nn1</name>
        <value>ubuntu01:8020</value>
    </property>

    <!-- nn1的http通信地址 -->
    <property>
        <name>dfs.namenode.http-address.mycluster.nn1</name>
        <value>ubuntu01:9870</value>
    </property>

    <!-- nn2的RPC通信地址 -->
    <property>
        <name>dfs.namenode.rpc-address.mycluster.nn2</name>
        <value>ubuntu02:8020</value>
    </property>

    <!-- nn2的http通信地址 -->
    <property>
        <name>dfs.namenode.http-address.mycluster.nn2</name>
        <value>ubuntu02:9870</value>
    </property>

    <!-- 指定NameNode的edits元數(shù)據(jù)的共享存儲位置。也就是JournalNode列表
                 journalId推薦使用nameservice,默認(rèn)端口號是:8485 -->
    <property>
        <name>dfs.namenode.shared.edits.dir</name>
        <value>qjournal://ubuntu01:8485;ubuntu02:8485;ubuntu03:8485;ubuntu04:8485/mycluster</value>
    </property>

    <!-- 指定JournalNode在本地磁盤存放數(shù)據(jù)的位置 -->
    <property>
        <name>dfs.journalnode.edits.dir</name>
        <value>/opt/software/hadoop/hdfs/journalnode/data</value>
    </property>

    <!-- 配置失敗自動切換實現(xiàn)方式 -->
    <property>
        <name>dfs.client.failover.proxy.provider.mycluster</name>
        <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
    </property>

    <!-- 配置隔離機制方法,多個機制用換行分割,即每個機制暫用一行 -->
    <property>
        <name>dfs.ha.fencing.methods</name>
        <value>
            sshfence
            shell(/bin/true)
        </value>
    </property>

    <!-- 使用sshfence隔離機制時需要ssh免登陸 -->
    <property>
        <name>dfs.ha.fencing.ssh.private-key-files</name>
        <value>/root/.ssh/id_rsa</value>
    </property>

    <!-- 配置sshfence隔離機制超時時間 -->
    <property>
        <name>dfs.ha.fencing.ssh.connect-timeout</name>
        <value>30000</value>
    </property>

    <property>
        <name>ha.failover-controller.cli-check.rpc-timeout.ms</name>
        <value>60000</value>
    </property>

    <!-- 開啟NameNode故障轉(zhuǎn)移自動切換 -->
    <property>
        <name>dfs.ha.automatic-failover.enabled</name>
        <value>true</value>
    </property>

4.2.2 core-site.xml

  • 修改hdfs標(biāo)識和新增zkServer地址

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.2.3?hadoop-env.sh

  • 新增以下內(nèi)容

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.2.4 yarn-site.xml

  • 總的配置內(nèi)容
<configuration>
<!-- 指定MR走shuffle -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

<!-- 開啟RM高可用 -->
    <property>
        <name>yarn.resourcemanager.ha.enabled</name>
        <value>true</value>
    </property>

    <!-- 指定RM的cluster id -->
    <property>
        <name>yarn.resourcemanager.cluster-id</name>
        <value>yrc</value>
    </property>

    <!-- 指定RM的名字 -->
    <property>
        <name>yarn.resourcemanager.ha.rm-ids</name>
        <value>rm1,rm2</value>
    </property>

    <!-- 分別指定RM的地址 -->
    <property>
        <name>yarn.resourcemanager.hostname.rm1</name>
        <value>ubuntu01</value>
    </property>

    <property>
        <name>yarn.resourcemanager.hostname.rm2</name>
        <value>ubuntu02</value>
    </property>

    <!-- 指定zk集群地址 -->
    <property>
        <name>yarn.resourcemanager.zk-address</name>
        <value>ubuntu01:2181,ubuntu02:2181,ubuntu03:2181,ubuntu04:2181</value>
    </property>

    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>

    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>86400</value>
    </property>

    <!-- 啟用自動恢復(fù) -->
    <property>
        <name>yarn.resourcemanager.recovery.enabled</name>
        <value>true</value>
    </property>

    <!-- 制定resourcemanager的狀態(tài)信息存儲在zookeeper集群上 -->
    <property>
        <name>yarn.resourcemanager.store.class</name>
        <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
    </property>

    <!-- 關(guān)閉虛擬內(nèi)存檢查-->
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
</configuration>

4.2.5?mapred-site.xml

  • 總的配置內(nèi)容
<configuration>
    <!-- 指定運行MapReduce作業(yè)的運行時框架 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

    <!-- 指定JobHistory Server的監(jiān)聽地址和端口 -->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>ubuntu01:10020</value>
    </property>

    <!-- 指定JobHistory Web UI的訪問地址和端口 -->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>ubuntu01:19888</value>
    </property>
</configuration>

4.3 分發(fā)配置

  • 分發(fā)到ubuntu02 、ubuntu03 、ubuntu04,可以刪除其它三臺原來的hadoop目錄,也可以只拷貝修改的文件,我這里是刪除了

cd /opt/software/

scp -r hadoop/ root@ubuntu02:$PWD

scp -r hadoop/ root@ubuntu03:$PWD

scp -r hadoop/ root@ubuntu04:$PWD

4.4 啟動高可用集群

4.4.1 啟動zookeeper

  • 初始化前需要打開zk服務(wù)

zkServer.sh start

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.4.2?啟動JN節(jié)點

  • 四臺機器分別啟動JN節(jié)點,第一次啟動的時候需要在格式化之前分別啟動四臺,后面重啟時則不需要

hadoop-daemon.sh start journalnode

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.4.3 hdfs格式化

  • 格式化之前需要把/opt/software/hadoop/hdfs下的目錄data、name、tmp進(jìn)行數(shù)據(jù)清空

rm -rf *

  • ubuntu01上進(jìn)行hdfs格式化,
hdfs namenode -format

?ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.4.4 復(fù)制元數(shù)據(jù)

  • 從ubuntu01的hdfs/name/目錄下復(fù)制元數(shù)據(jù)到ubuntu02的對應(yīng)目錄
cd /opt/software/hadoop/hdfs/name/
scp -r current/ root@ubuntu02: $PWD
ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.4.5 ZKFC格式化

  • ubuntu01上進(jìn)行zkfc格式化
hdfs zkfc -formatZK
ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

4.4.6 啟動hdfs集群?

start-dfs.sh

  • 出現(xiàn)以下進(jìn)程?

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • ?查看web端

ubuntu01服務(wù)器:

http://192.168.101.101:9870/

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

ubuntu02服務(wù)器:

http://192.168.101.102:9870/

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?4.6.7 啟動yarn集群

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

?4.6.8 啟動歷史服務(wù)

./mr-jobhistory-daemon.sh --config /opt/software/hadoop/hadoop-3.1.0/etc/hadoop start historyserver

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

5. 問題:

5.1 復(fù)制三臺虛擬機然后打開另外兩個虛擬機時出現(xiàn)以下錯誤

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 原因:這是虛擬機的保護(hù)機制
  • 解決方法:在磁盤虛擬機安裝目錄下,把lck后綴的文件夾刪除就好了

5.2 搭建完全分布式時格式化以后啟動ubuntu01報錯

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

  • 這個錯誤是因為我正在以`root`用戶身份嘗試啟動Hadoop進(jìn)程,但是沒有定義相應(yīng)的用戶環(huán)境變量。在安全配置下,Hadoop要求用不同的用戶身份來運行不同的進(jìn)程,以增加集群的安全性。
  • 要解決此問題,可以按照以下步驟進(jìn)行操作:

cd /opt/software/hadoop/hadoop-3.1.0/sbin

1. 在`start-dfs.sh、stop-dfs.sh`文件開頭添加以下內(nèi)容:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
HDFS_JOURNALNODE_USER=root
HDFS_ZKFC_USER=root

2. ?在`start-yarn.sh、stop-yarn.sh`文件開頭添加以下內(nèi)容:

YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

3. 現(xiàn)在,重新啟動hdfs:
start-dfs.sh

  • ?查看進(jìn)程

ubuntu01上

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper

ubuntu02 、ubuntu03 、ubuntu04

ubuntu搭建hadoop hdfs,大數(shù)據(jù),分布式,ubuntu,zookeeper文章來源地址http://www.zghlxwxcb.cn/news/detail-766154.html

到了這里,關(guān)于Ubuntu搭建Hadoop3.X分布式和高可用集群,一步步深入的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 基于CentOS 7 的 Hadoop3版本分布式環(huán)境配置搭建

    基于CentOS 7 的 Hadoop3版本分布式環(huán)境配置搭建

    以下是在VMware虛擬機中安裝centos 7去配置hadoop。所以要準(zhǔn)備的包 centos 7:Index of /apache/hadoop/common/hadoop-3.3.5 hadoop3.3.5:Index of /apache/hadoop/common/hadoop-3.3.5 查看原本的jdk版本 ? 其實原來的openjdk版本也是可用的,但是hadoop3.x不支持較低版本的jdk,所以這里卸載重新安裝新版本jdk文件

    2024年02月01日
    瀏覽(22)
  • Hadoop3.x完全分布式環(huán)境搭建Zookeeper和Hbase

    Hadoop3.x完全分布式環(huán)境搭建Zookeeper和Hbase

    集群規(guī)劃 IP地址 主機名 集群身份 192.168.138.100 hadoop00 主節(jié)點 192.168.138.101 hadoop01 從節(jié)點 192.168.138.102 hadoop02 從節(jié)點 Hadoop完全分布式環(huán)境搭建請移步傳送門 先在主節(jié)點上進(jìn)行安裝和配置,隨后分發(fā)到各個從節(jié)點上。 1.1 解壓zookeeper并添加環(huán)境變量 1)解壓zookeeper到/usr/local文件夾

    2024年02月04日
    瀏覽(29)
  • 基于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的配置項,準(zhǔn)備數(shù)

    2024年01月19日
    瀏覽(51)
  • Hadoop3.1.3安裝教程_單機/偽分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)

    Hadoop3.1.3安裝教程_單機/偽分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)

    目錄 前言: 一、VMware Workstation 二、Ubuntu系統(tǒng)安裝 新建虛擬機 三、Ubuntu系統(tǒng)的配置 四、更新apt 五、安裝SSH、配置SSH無密碼登陸? 六、安裝Java環(huán)境 七、安裝 Hadoop3.1.3 八、Hadoop單機配置(非分布式) 九、Hadoop偽分布式配置 前言: ????????本篇教程由作者本人進(jìn)行修改,原教

    2024年02月03日
    瀏覽(57)
  • 【hadoop】centos7.6+hadoop3.1.1搭建分布式hadoop環(huán)境——包含各類問題解決方案

    【hadoop】centos7.6+hadoop3.1.1搭建分布式hadoop環(huán)境——包含各類問題解決方案

    本文針對centos7.4即以上版本的hadoop環(huán)境搭建,因為這部分搭建是個很復(fù)雜且很容易出錯的內(nèi)容,所以在結(jié)合了多種搭建方案后給出最適宜當(dāng)前版本的搭建。 本教程適用于CentOS 7.4即以上版本,如果是Ubuntu等其它linux內(nèi)核版本則不適合。 查看系統(tǒng)版本: 軟件 版本 獲取方法 Ope

    2024年02月16日
    瀏覽(24)
  • 大數(shù)據(jù)技術(shù)棧-Hadoop3.3.4-完全分布式集群搭建部署-centos7(完全超詳細(xì)-小白注釋版)虛擬機安裝+平臺部署

    目錄 環(huán)境條件: 1、安裝虛擬機(已安裝好虛擬機的可跳轉(zhuǎn)至? 二、安裝JDK與Hadoop) (1)直接新建一臺虛擬機 (2)首次啟用虛擬機,進(jìn)行安裝 一、集群前置環(huán)境搭建(三臺機器分別設(shè)置hostname、網(wǎng)卡(ip)配置、ssh免密登錄) 1、查看一下本機與虛擬機的網(wǎng)卡和ip信息 (1)

    2024年02月06日
    瀏覽(31)
  • Hadoop3.3偽分布式安裝部署

    Hadoop3.3偽分布式安裝部署

    目錄 引言 實驗?zāi)康募皽?zhǔn)備 實驗步驟 引言 Hadoop生態(tài)的搭建有本地模式、偽分布模式、集群模式(3臺機器)三種安裝模式,本篇文章將詳細(xì)介紹Hadoop3.3的偽分布安裝模式。 實驗?zāi)康募皽?zhǔn)備 一、完成Hadoop3.3偽分布安裝 二、在Linux中配置jdk1.8環(huán)境變量 三、配置主機的免密鑰登錄

    2024年02月21日
    瀏覽(23)
  • Hadoop3.1.3完全分布式安裝配置

    Hadoop3.1.3完全分布式安裝配置

    1. 將hadoop-3.1.3.tar.gz復(fù)制到虛擬機/opt/software目錄下: 2.在/opt/software目錄下使用tar命令解壓hadoop-3.1.3.tar.gz到/opt/module目錄下:? 執(zhí)行結(jié)果如下: 3.在/opt/module目錄下修改文件夾名稱: 執(zhí)行結(jié)果如下: ?4.打開環(huán)境變量: 執(zhí)行結(jié)果如下: 5.將光標(biāo)移至文件底部,按“i”鍵編輯并作

    2024年02月08日
    瀏覽(25)
  • Hadoop(01) Hadoop3.3.6安裝教程,單機/偽分布式配置

    Hadoop(01) Hadoop3.3.6安裝教程,單機/偽分布式配置

    在安裝 Hadoop 3.3.6 前,需要滿足以下前置條件: Java Development Kit (JDK):Hadoop 是用 Java 編寫的,因此需要安裝并配置適當(dāng)版本的 JDK。Hadoop 3.3.6 建議使用 JDK 8 或更高版本。確保正確安裝 JDK,并設(shè)置 JAVA_HOME 環(huán)境變量。 SSH:Hadoop 集群中的節(jié)點需要通過 SSH 進(jìn)行通信和管理。確保在

    2024年02月06日
    瀏覽(22)
  • Hadoop3.1.3安裝教程單機偽分布式配置

    本教程使用 Ubuntu 18.04 64位 作為系統(tǒng)環(huán)境(或者Ubuntu 14.04,Ubuntu16.04 也行,32位、64位均可),請自行安裝系統(tǒng)。裝好了 Ubuntu 系統(tǒng)之后,在安裝 Hadoop 前還需要做一些必備工作。 創(chuàng)建hadoop用戶 如果你安裝 Ubuntu 的時候不是用的 “hadoop” 用戶,那么需要增加一個名為 hadoop 的用

    2024年02月04日
    瀏覽(27)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包