大數據基石Hadoop3.x 集群安裝

来源:https://www.cnblogs.com/luxh/archive/2022/07/06/16447407.html
-Advertisement-
Play Games

機器規劃 環境準備 安裝JDK 1. 在所有機器上安裝jdk8 2. 配置好環境變數 vi /etc/profile JAVA_HOME=/usr/local/jdk1.8.0_152 PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME export PATH so ...


機器規劃

環境準備

安裝JDK
1. 在所有機器上安裝jdk8
2. 配置好環境變數

vi /etc/profile

JAVA_HOME=/usr/local/jdk1.8.0_152
PATH=$PATH:$JAVA_HOME/bin

export JAVA_HOME
export PATH

source /etc/profile


配置免密登錄
1)首先在node-2機器上操作
2)生成密鑰對 ssh-keygen -t rsa
3)進入/root/.ssh目錄,將公鑰複製到其他機器
ssh-copy-id node-2
ssh-copy-id node-3
ssh-copy-id node-4

4) 在node-3和snode-4上分別執行上述步驟
關閉防火牆和selinux
1)關閉防火牆
systemctl stop firewalld
systemctl disable firewalld

2)關閉selinux
vi /etc/selinux/config  設置SELINUX=disabled

3)重啟系統 reboot

4)在每台機器執行上述操作

安裝Hadoop

1.創建目錄,在node-2、node-3、node-4上創建下述目錄

/mnt/data/hadoop/pid
/mnt/data/hadoop/tmp
/mnt/data/hadoop/dfs/name
/mnt/data/hadoop/dfs/data
/mnt/data/hadoop/dfs/namesecondary
/mnt/data/hadoop/dfs/edits
/mnt/data/hadoop/logs

2.將 hadoop-3.2.2.tar.gz解壓到 /opt/software/hadoop-3.2.2

3.配置Hadoop環境變數, 在node-2、node-3、node-4上分別執行下述配置

vi /etc/profile 追加以下內容

  HADOOP_HOME=/opt/software/hadoop-3.2.2
  PATH=$PATH:$HADOOP_HOME/bin
  export HADOOP_HOME
  export PATH

使配置生效 source /etc/profile

4.配置hadoop-env.sh

export JAVA_HOME=/opt/software/jdk1.8.0_152
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
export HADOOP_PID_DIR=/mnt/data/hadoop/pid
export HADOOP_LOG_DIR=/mnt/data/hadoop/logs

5.配置core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://node-2:9870</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/mnt/data/hadoop/tmp</value>
    </property>
</configuration>

6.配置hdfs-site.xml

<configuration>
      <property>
              <name>dfs.namenode.secondary.http-address</name>
              <value>node-3:9868</value>
      </property>
      <property>
              <name>dfs.replication</name>
              <value>2</value>
      </property>
      <property>
              <name>dfs.namenode.name.dir</name>
              <value>/mnt/data/hadoop/dfs/name</value>
      </property>
      <property>
              <name>dfs.datanode.data.dir</name>
              <value>/mnt/data/hadoop/dfs/data</value>
      </property>
       <property>
             <name>dfs.namenode.checkpoint.dir</name>
             <value>/mnt/data/hadoop/dfs/namesecondary</value>
      </property>
      <property>
             <name>dfs.namenode.checkpoint.edits.dir</name>
             <value>/mnt/data/hadoop/dfs/edits</value>
      </property>
      <property>
             <name>dfs.datanode.handler.count</name>
             <value>30</value>
      </property>
       <property>
             <name>dfs.namenode.handler.count</name>
             <value>30</value>
      </property>
</configuration>

7.配置mapred-site.xml

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

8.配置yarn-site.xml

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
     <property>
        <name>yarn.log.server.url</name>
        <value>http://node-4:19888/jobhistory/logs</value>
    </property>
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>604800</value>
    </property>

</configuration>

9.配置workers

vi workers

node-3
node-4

10.配置log4j.properties

hadoop.log.dir=/mnt/data/hadoop/logs

11.複製 /opt/software/hadoop-3.2.2 到node-3和node-4

scp -r /opt/software/hadoop-3.2.2 root@node-3:/opt/software/hadoop-3.2.2
scp -r /opt/software/hadoop-3.2.2 root@node-4:/opt/software/hadoop-3.2.2

格式化和啟動Hadoop

1.格式化,在node-2上執行

bin/hdfs namenode -format

2.啟動hdfs, 在node-2上執行

sbin/start-dfs.sh

停止命令:sbin/stop-dfs.sh

3.啟動yarn, 在node-2上執行

sbin/start-yarn.sh

停止命令:sbin/stop-yarn.sh
  1. 啟動jobhistory,在node-4上執行
bin/mapred --daemon start historyserver

停止命令:bin/mapred --daemon stop historyserver

頁面訪問

  1. HDFS NameNode: http://node-2:9870/

  2. YARN ResourceManager: http://node-2:8088/

  3. MapReduce JobHistory Server: http://node-4:19888/


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文介紹了NioServerSocketChannel處理客戶端連接事件的整個過程。接收連接的整個處理框架。影響Netty接收連接吞吐的Bug產生的原因,以及修複的方案。創建並初始化客戶端NioSocketChannel。初始化NioSocketChannel中的pipeline。客戶端NioSoc... ...
  • ​ 前文回顧 【微服務專題之】.Net6下集成消息隊列上-RabbitMQ 【微服務專題之】.Net6下集成消息隊列2-RabbitMQ RabbitMQ中直接路由模式 https://mp.weixin.qq.com/s?__biz=Mzg5MTY2Njc3Mg==&mid=2247484258& ...
  • 本文分享以C#程式代碼為例,實現將Html文件轉換Word文檔的方法(附VB.NET代碼)。在實際轉換場景中可參考本文的方法,轉換前,請按照如下方法引用Word API的dll文件到Visual Studio。安裝時,可通過以下2種方法: 1.通過NuGet安裝dll(2種方法) 1.1 可以在Vi ...
  • 使用背景: 項目中需要用的富文本框去上傳視頻,圖片的話大部分都是可以的。相對來說,國外的富文本框很成熟。但鑒於文檔是英語,這裡使用了百度的富文本框。 採用的api的方式,調用介面進行上傳文件。話不多說,開擼! 準備: 創建一個.net mvc的項目。下載百度富文本框.net 版本的js文件。 創建項 ...
  • 目錄 一、前景回顧 二、編寫makefile 三、實現Assert斷言 四、實現字元串操作函數 五、測試 一、前景回顧 上一回我們詳細地講解了整個系統的中斷工作流程,整個中斷系統比較難的地方在於中斷的執行流程,我開始學的時候對這一塊也是比較模糊的,感覺不知從何入手。現在已經很清楚整個流程了,這裡可以 ...
  • 鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站 這篇文章主要給大家介紹了關於Linux系統中CPU占用率較高問題排查思路與解決方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Linux具有一定的參考學習價值,需要的朋友們下麵來一起學習學習吧 前言 作為 Linux 運維工程師,在日常工 ...
  • 鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站 一、部署zabbix 代理伺服器 分散式監控的作用: 分擔 server 的集中式壓力 解決多機房之間的網路延時問題 bsystemctl disable --now firewalld setenforce 0 hostnamectl set- ...
  • 近日,中國信通院、雲計算開源產業聯盟正式對外發佈《雲原生產品目錄》,騰訊雲原生資料庫TDSQL-C憑藉其超強性能、極致效率的彈性伸縮和完善的產品化解決方案體系,成功入圍目錄。 全球數字經濟進入高速發展期,在敏捷、高效、降本需求的驅動下,雲原生已經成為提升雲計算使用效能的關鍵支撐,正引領新一代軟體架構 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...