Hadoop集群部署教程-P6

Hadoop集群部署教程-P6

Hadoop集群部署教程(續)

第二十一章:監控與告警系統集成

21.1 Prometheus監控體系搭建

  1. Exporter部署

    # 部署HDFS Exporter
    wget https://github.com/prometheus/hdfs_exporter/releases/download/v1.1.6/hdfs_exporter-1.1.6.linux-amd64.tar.gz
    tar -xzf hdfs_exporter-1.1.6.linux-amd64.tar.gz
    nohup ./hdfs_exporter --namenode.address=master:9870 &
    
  2. 關鍵監控指標

    • HDFS存儲容量使用率
    • DataNode存活狀態
    • YARN資源分配率

21.2 Grafana可視化配置

  1. 儀表盤模板導入

    # 導入Hadoop官方模板(ID: 12239)
    grafana-cli plugins install grafana-piechart-panel
    
  2. 告警規則示例

    # alert_rules.yml
    groups:
    - name: HDFS-Alertsrules:- alert: HDFSStorageCriticalexpr: hdfs_capacity_used_percent > 90for: 5mlabels:severity: critical
    

第二十二章:備份與災難恢復

22.1 元數據備份方案

  1. NameNode元數據備份

    # 創建檢查點備份
    hdfs dfsadmin -fetchImage /backup/namenode/latest.fsimage
    # 定期合并edits日志[^1]
    hdfs dfsadmin -rollEdits
    
  2. 自動化備份腳本

    #!/bin/bash
    BACKUP_DIR="/backup/<span class="katex--inline"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mo stretchy="false">(</mo><mi>d</mi><mi>a</mi><mi>t</mi><mi>e</mi><mo>+</mo><mi>m</mi><mi>k</mi><mi>d</mi><mi>i</mi><mi>r</mi><mo>?</mo><mi>p</mi></mrow><annotation encoding="application/x-tex">(date +%Y%m%d)&quot;
    mkdir -p </annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"><span class="mopen">(</span><span class="mord mathnormal">d</span><span class="mord mathnormal">a</span><span class="mord mathnormal">t</span><span class="mord mathnormal">e</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">+</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.7778em;vertical-align:-0.0833em;"><span class="mord mathnormal" style="margin-right:0.03148em;">mk</span><span class="mord mathnormal">d</span><span class="mord mathnormal">i</span><span class="mord mathnormal" style="margin-right:0.02778em;">r</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">?</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.625em;vertical-align:-0.1944em;"><span class="mord mathnormal">p</span></span></span></span></span>BACKUP_DIR
    hdfs dfsadmin -fetchImage <span class="katex--inline"><span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>B</mi><mi>A</mi><mi>C</mi><mi>K</mi><mi>U</mi><msub><mi>P</mi><mi>D</mi></msub><mi>I</mi><mi>R</mi><mi>s</mi><mi>c</mi><mi>p</mi><mo>?</mo><mi>r</mi></mrow><annotation encoding="application/x-tex">BACKUP_DIR
    scp -r </annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.8778em;vertical-align:-0.1944em;"><span class="mord mathnormal" style="margin-right:0.05017em;">B</span><span class="mord mathnormal">A</span><span class="mord mathnormal" style="margin-right:0.07153em;">C</span><span class="mord mathnormal" style="margin-right:0.07153em;">K</span><span class="mord mathnormal" style="margin-right:0.10903em;">U</span><span class="mord"><span class="mord mathnormal" style="margin-right:0.13889em;">P</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.3283em;"><span style="top:-2.55em;margin-left:-0.1389em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"><span class="sizing reset-size6 size3 mtight"><span class="mord mathnormal mtight" style="margin-right:0.02778em;">D</span></span></span></span><span class="vlist-s">?</span></span><span class="vlist-r"><span class="vlist" style="height:0.15em;"><span></span></span></span></span></span><span class="mord mathnormal" style="margin-right:0.07847em;">I</span><span class="mord mathnormal" style="margin-right:0.00773em;">R</span><span class="mord mathnormal">sc</span><span class="mord mathnormal">p</span><span class="mspace" style="margin-right:0.2222em;"><span class="mbin">?</span><span class="mspace" style="margin-right:0.2222em;"></span><span class="base"><span class="strut" style="height:0.4306em;"><span class="mord mathnormal" style="margin-right:0.02778em;">r</span></span></span></span></span>BACKUP_DIR secondary_nn:/remote_backup/
    </span></span></span></span></span></span></span></span></span></span></span></span></span>

22.2 數據恢復流程

  1. 災難恢復步驟

    graph TD A[停止集群服務] --> B[恢復fsimage] B --> C[應用edits日志] C --> D[啟動NameNode] D --> E[驗證數據完整性]

第二十三章:性能調優實戰

23.1 MapReduce參數優化

  1. 內存配置公式

    mapreduce.map.memory.mb = min(yarn.nodemanager.resource.memory-mb / containers-per-node,8GB  # 經驗值上限
    )
    
  2. Shuffle階段優化

    <!-- mapred-site.xml -->
    <property><name>mapreduce.task.io.sort.mb</name><value>512</value>  <!-- 提高排序內存 -->
    </property>
    <property><name>mapreduce.reduce.shuffle.parallelcopies</name><value>20</value>   <!-- 增加并行拷貝數 -->
    </property>
    

23.2 硬件級優化建議

  1. |磁盤配置方案:|||

    磁盤類型適用場景RAID級別
    SSDJournalNodeRAID1
    HDDDataNode存儲JBOD
  2. 網絡拓撲優化

    # 配置機架感知
    /etc/hadoop/conf/topology.sh
    

第二十四章:版本遷移指南

24.1 滾動升級流程

  1. 兼容性檢查清單

    # 驗證HDFS版本
    hdfs dfsadmin -report | grep 'Storage type'
    # 檢查API兼容性
    hadoop checknative
    
  2. 分階段升級步驟

    # 第一階段:升級工具節點
    sudo yum upgrade hadoop-client
    # 第二階段:升級DataNodes
    pdsh -w datanode[1-10] "sudo yum upgrade hadoop-hdfs-datanode"
    

24.2 回滾機制

  1. 版本回退操作

    # 停止服務
    systemctl stop hadoop-yarn-resourcemanager
    # 降級安裝
    yum downgrade hadoop-3.3.1 -y
    # 恢復配置
    cp /backup/core-site.xml /etc/hadoop/conf/
    

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/77067.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/77067.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/77067.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Altium】AD-生成PDF文件圖紙包含太多的空白怎么解決

1、 文檔目標 AD設計文件導出PDF時&#xff0c;圖紙模板方向設置問題 2、 問題場景 AD使用Smart PDF導出PDF時&#xff0c;不管你怎么設置頁面尺寸&#xff0c;只要從橫向轉為縱向輸出&#xff0c;輸出的始終是橫向紙張&#xff08;中間保留縱向圖紙&#xff0c;兩邊大量留白…

大廠面試:六大排序

前言 本篇博客集中了冒泡&#xff0c;選擇&#xff0c;二分插入&#xff0c;快排&#xff0c;歸并&#xff0c;堆排&#xff0c;六大排序算法 如果覺得對你有幫助&#xff0c;可以點點關注&#xff0c;點點贊&#xff0c;謝謝你&#xff01; 1.冒泡排序 //冒泡排序&#xff…

大模型開發:源碼分析 Qwen 2.5-VL 視頻抽幀模塊(附加FFmpeg 性能對比測試)

目錄 qwen 視頻理解能力 messages 構建 demo qwen 抽幀代碼分析 驗證兩個實際 case 官網介紹圖 性能對比&#xff1a;ffmpeg 抽幀、decord 庫抽幀 介紹 聯系 對比 測試結果 測試明細 ffmpeg 100 qps 測試&#xff08;CPU&#xff09; decord 100 qps 測試&#x…

git的上傳流程

好久沒使用git 命令上傳遠程倉庫了。。。。。溫習了一遍&#xff1b; 幾個注意點--單個文件大小不能超過100M~~~ 一步步運行下面的命令&#xff1a; 進入要上傳的文件夾內&#xff0c;點擊git bash 最終 hbu的小伙伴~有需要nndl實驗的可以自形下載哦

驅動學習專欄--字符設備驅動篇--2_字符設備注冊與注銷

對于字符設備驅動而言&#xff0c;當驅動模塊加載成功以后需要注冊字符設備&#xff0c;同樣&#xff0c;卸載驅動模 塊的時候也需要注銷掉字符設備。字符設備的注冊和注銷函數原型如下所示 : static inline int register_chrdev(unsigned int major, const char *name, const…

redis 放置序列化的對象,如果修改對象,需要修改版本號嗎?

在 Redis 中存儲序列化對象時,如果修改了對象的類結構(例如增刪字段、修改字段類型或順序),是否需要修改版本號取決于序列化協議的兼容性策略和業務場景的容錯需求。以下是詳細分析: 1. 為什么需要考慮版本號? 序列化兼容性問題: 當對象的類結構發生變化時,舊版本的序列…

WPF ObjectDataProvider

在 WPF(Windows Presentation Foundation)中,ObjectDataProvider 是一個非常有用的類,用于將非 UI 數據對象(如業務邏輯類或服務類)與 XAML 綁定集成。它允許在 XAML 中直接調用方法、訪問屬性或實例化對象,而無需編寫額外的代碼。以下是關于 ObjectDataProvider 的詳細…

深度學習-損失函數 python opencv源碼(史上最全)

目錄 定義 種類 如何選擇損失函數&#xff1f; 平方&#xff08;均方&#xff09;損失函數&#xff08;Mean Squared Error, MSE&#xff09; 均方根誤差 交叉熵 對數損失 筆記回饋 邏輯回歸中一些注意事項&#xff1a; 定義 損失函數又叫誤差函數、成本函數、代價函數…

poll為什么使用poll_list鏈表結構而不是數組 - 深入內核源碼分析

一&#xff1a;引言 在Linux內核中,poll機制是一個非常重要的I/O多路復用機制。它允許進程監視多個文件描述符,等待其中任何一個進入就緒狀態。poll的內部實現使用了poll_list鏈表結構而不是數組,這個設計選擇背后有其深層的技術考量。本文將從內核源碼層面深入分析這個設計決…

使用 Azure AKS 保護 Kubernetes 部署的綜合指南

企業不斷尋求增強其軟件開發和部署流程的方法。DevOps 一直是這一轉型的基石,彌合了開發與運營之間的差距。然而,隨著安全威脅日益復雜,將安全性集成到 DevOps 流水線(通常稱為 DevSecOps)已變得勢在必行。本指南深入探討了如何使用 Azure Kubernetes 服務 (AKS) 來利用 D…

2025年常見滲透測試面試題-webshell免殺思路(題目+回答)

網絡安全領域各種資源&#xff0c;學習文檔&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各種好玩的項目及好用的工具&#xff0c;歡迎關注。 目錄 webshell免殺思路 PHP免殺原理 webshell免殺測試&#xff1a; webshell免殺繞過方法&#xff1a; 編…

訪問不到服務器上啟動的llamafactory-cli webui

采用SSH端口轉發有效&#xff0c;在Windows上面進行訪問 在服務器上啟動 llamafactory-cli webui 后&#xff0c;訪問方式需根據服務器類型和網絡環境選擇以下方案&#xff1a; 一、本地服務器&#xff08;物理機/虛擬機&#xff09; 1. 直接訪問 若服務器與操作設備處于同一…

基于 LSTM 的多特征序列預測-SHAP可視化!

往期精彩內容&#xff1a; 單步預測-風速預測模型代碼全家桶-CSDN博客 半天入門&#xff01;鋰電池剩余壽命預測&#xff08;Python&#xff09;-CSDN博客 超強預測模型&#xff1a;二次分解-組合預測-CSDN博客 VMD CEEMDAN 二次分解&#xff0c;BiLSTM-Attention預測模型…

C++ 編程指南35 - 為保持ABI穩定,應避免模板接口

一&#xff1a;概述 模板在 C 中是編譯期展開的&#xff0c;不同模板參數會生成不同的代碼&#xff0c;這使得模板類/函數天然不具備 ABI 穩定性。為了保持ABI穩定&#xff0c;接口不要直接用模板&#xff0c;先用普通類打個底&#xff0c;模板只是“外殼”&#xff0c;這樣 AB…

【iOS】OC高級編程 iOS多線程與內存管理閱讀筆記——自動引用計數(二)

自動引用計數 前言ARC規則所有權修飾符**__strong修飾符**__weak修飾符__unsafe_unretained修飾符__autoreleasing修飾符 規則屬性數組 前言 上一篇我們主要學習了一些引用計數方法的內部實現&#xff0c;現在我們學習ARC規則。 ARC規則 所有權修飾符 OC中&#xff0c;為了處…

可信空間數據要素解決方案

可信空間數據要素解決方案 一、引言 隨著數字經濟的蓬勃發展&#xff0c;數據已成為重要的生產要素。可信空間數據要素解決方案旨在構建一個安全、可靠、高效的數據流通與應用環境&#xff0c;促進數據要素的合理配置和價值釋放&#xff0c;推動各行業的數字化轉型和創新發展…

mysql刪除表后重建表報錯Tablespace exists

版本 mysql:8.0.23 復現步驟 1、刪除表 DROP TABLE IF EXISTS xxx_demo; 2、新建表 CREATE TABLE xxx_demo (id bigint NOT NULL AUTO_INCREMENT COMMENT 主鍵id,creator varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT COMMENT 創建者,c…

【Leetcode-Hot100】缺失的第一個正數

題目 解答 有一處需要注意&#xff0c;我使用注釋部分進行交換值&#xff0c;報錯&#xff1a;超出時間限制。有人知道是為什么嗎&#xff1f;難道是先給nums[i]賦值后&#xff0c;從而改變了后一項的索引&#xff1f; class Solution(object):def firstMissingPositive(sel…

從單模態到多模態:五大模型架構演進與技術介紹

前言 1. ResNet — 殘差神經網絡背景核心問題與解決方案原理模型架構ResNet 系列變體技術創新與影響 2. ViT — Vision Transformer背景核心思想發展歷程Transformer的起源&#xff1a;ViT的出現&#xff1a;ViT的進一步發展&#xff1a; 模型架構技術創新與影響 3. Swin Trans…

JavaScript事件循環

目錄 JavaScript 執行機制與事件循環 一、同步與異步代碼 1. 同步代碼&#xff08;Synchronous Code&#xff09; 2. 異步代碼&#xff08;Asynchronous Code&#xff09; 二、事件循環&#xff08;Event Loop&#xff09; 1. 核心組成 2. 事件循環基本流程 3. 運行機制…