1. 程式人生 > >SecondaryNameNode原理和配置解說

SecondaryNameNode原理和配置解說

一.SecondaryNameNode的作用: 用來監控HDFS狀態的輔助後臺程式,每隔一段時間獲取HDFS元資料的快照。換句話說其實SecondaryNameNode是namenode的冷備份,而namenode的HA高可用才是namenode的熱備份。區別是SecondaryNameNode中儲存的元資料不是實時的,滯後於namenode主節點. Secondary NameNode工作: 1Secondary NameNode詢問namenode是否需要checkpoint。直接帶回namenode是否檢查結果。 2Secondary NameNode請求執行checkpoint
3namenode滾動正在寫的edits日誌 4)將滾動前的編輯日誌和映象檔案拷貝到Secondary NameNode 5Secondary NameNode載入編輯日誌和映象檔案到記憶體,併合並。 6)生成新的映象檔案fsimage.chkpoint 7)拷貝fsimage.chkpointnamenode 8namenodefsimage.chkpoint重新命名成fsimage 1.checkpoint的附帶作用        namenode和secondary namenode的工作目錄儲存結構完全相同,所以,當namenode故障退出需要重新恢復時,可以從secondary namenode的工作目錄中將fsimage拷貝到namenode的工作目錄,以恢復namenode的元資料
  chkpoint檢查時間引數設定 (1)通常情況下,SecondaryNameNode每隔一小時執行一次。        [hdfs-default.xml] <property>   <name>dfs.namenode.checkpoint.period</name>   <value>3600</value> </property> (2)一分鐘檢查一次操作次數,當操作次數達到1百萬時,SecondaryNameNode執行一次。 <property>   <name>dfs.namenode.checkpoint.txns</name>
  <value>1000000</value> <description>操作動作次數</description> </property> <property>   <name>dfs.namenode.checkpoint.check.period</name>   <value>60</value> <description> 1分鐘檢查一次操作次數</description> </property> 2. 映象檔案和編輯日誌檔案 namenode被格式化之後,將在/opt/module/hadoop-2.7.2/data/tmp/dfs/name/current目錄中產生如下檔案 fsimage_0000000000000000000 fsimage_0000000000000000000.md5 seen_txid VERSION (1)Fsimage檔案:HDFS檔案系統元資料的一個永久性的檢查點,其中包含HDFS檔案系統的所有目錄和檔案idnode的序列化資訊。 (2)Edits檔案:存放HDFS檔案系統的所有更新操作的路徑,檔案系統客戶端執行的所有寫操作首先會被記錄到edits檔案中。 (3)seen_txid檔案儲存的是一個數字,就是最後一個edits_的數字 (4)每次Namenode啟動的時候都會將fsimage檔案讀入記憶體,並從00001開始到seen_txid中記錄的數字依次執行每個edits裡面的更新操作,保證記憶體中的元資料資訊是最新的、同步的,可以看成Namenode啟動的時候就將fsimage和edits檔案進行了合併。 3.SecondaryNameNode目錄結構 /opt/module/hadoop-2.7.2/data/tmp/dfs/namesecondary/current這個目錄中檢視SecondaryNameNode目錄結構。
edits_0000000000000000001-0000000000000000002 fsimage_0000000000000000002 fsimage_0000000000000000002.md5 VERSION
此外:輔助namenode的檢查點目錄(dfs.namenode.checkpoint.dir)的佈局和主namenode的檢查點目錄的佈局完全相同。這種設計的好處:在主namenode發生故障時(假設沒有及時備份資料),可以從SecondaryNameNode恢復資料。 方法一:將SecondaryNameNode中資料拷貝到namenode儲存資料的目錄; 方法二:使用-importCheckpoint選項啟動namenode守護程序,從而將SecondaryNameNode用作新的主namenode 1)案例實操(一): 模擬namenode故障,並採用方法一,恢復namenode資料 1kill -9 namenode程序或者kill -9 2855 2)刪除namenode儲存的資料(/opt/module/hadoop-2.7.2/data/tmp/dfs/name rm -rf /opt/module/hadoop-2.7.2/data/tmp/dfs/name/* 3)拷貝SecondaryNameNode中資料到原namenode儲存資料目錄        cpr /opt/module/hadoop-2.7.2/data/tmp/dfs/namesecondary/*    /opt/module/hadoop-2.7.2/data/tmp/dfs/name/ 4)重新啟動namenode sbin/hadoop-daemon.sh start namenode 2)案例實操(二) 模擬namenode故障,並採用方法二,恢復namenode資料 0)修改hdfs-site.xml中的
<property>   <name>dfs.namenode.checkpoint.period</name>   <value>120</value> </property> <property>   <name>dfs.namenode.name.dir</name>   <value>/opt/module/hadoop-2.7.2/data/tmp/dfs/name</value> </property>
1kill -9 namenode程序 2)刪除namenode儲存的資料(/opt/module/hadoop-2.7.2/data/tmp/dfs/name rm -rf /opt/module/hadoop-2.7.2/data/tmp/dfs/name/* 3)匯入檢查點資料(等待一會ctrl+c結束掉) bin/hdfs namenode -importCheckpoint 4)啟動namenode sbin/hadoop-daemon.sh start namenode 5如果提示檔案鎖了,可以刪除in_use.lock               rm -rf /opt/module/hadoop-2.7.2/data/tmp/dfs/namesecondary/in_use.lock

相關推薦

SecondaryNameNode原理配置解說

一.SecondaryNameNode的作用: 用來監控HDFS狀態的輔助後臺程式,每隔一段時間獲取HDFS元資料的快照。換句話說其實SecondaryNameNode是namenode的冷備份,而n

Nginx反向代理配置(正向代理、反向代理、負載均衡原理、Nginx反向代理原理配置講解)

nginx概述 nginx是一款自由的、開源的、高效能的HTTP伺服器和反向代理伺服器;同時也是一個IMAP、POP3、SMTP代理伺服器;nginx可以作為一個HTTP伺服器進行網站的釋出處理,另外nginx可以作為反向代理進行負載均衡的實現。 Nginx是一款開原始碼的高效能HT

Nginx詳(正向代理、反向代理、負載均衡原理、ginx反向代理原理配置講解

nginx概述 nginx是一款自由的、開源的、高效能的HTTP伺服器和反向代理伺服器;同時也是一個IMAP、POP3、SMTP代理伺服器;nginx可以作為一個HTTP伺服器進行網站的釋出處理,另外nginx可以作為反向代理進行負載均衡的實現。 這裡主要通過三

keepalived工作原理配置文件說明

其中 before red 進行 targe ip) lis 後端 取值 keepalived是什麽 keepalived是集群管理中保證集群高可用的一個服務軟件,其功能類似於heartbeat,用來防止單點故障。 keepalived工作原理 keepalived是以VR

淺析 SpringMVC 原理配置.

charset 多個 gb2312 替代 bubuko 控制 const ner tps 一、原理 Spring MVC基於模型-視圖-控制器(Model-View-Controller,MVC)模式實現,它能夠幫你構建像Spring框架那樣靈活和松耦合的We

Nginx原理配置總結

some serve delay 找到 部署 正則表達式 emp cnblogs process 一:前言   Nginx是一款優秀的HTTP服務器和反向代理服務器,除卻網上說的效率高之類的優點,個人的切身體會是Nginx配置確實簡單而且還好理解,和redis差不多,比r

nginx 工作原理配置文件講解

打開 cli ssi http 狀態碼 stat pro clu libs red 1、nginx 介紹 Nginx (engine x) 是一個高性能的HTTP和反向代理服務,也是一個IMAP/POP3/SMTP服務。Nginx是由伊戈爾·賽索耶夫為俄羅斯訪問量第二的Ra

Super VLAN技術原理配置

Super VLAN技術原理和配置 Super VLAN產生的背景:          在大型區域網組網中,常採用接入層和核心層二層結構的組網方式,所有的閘道器都設在核心層裝置上。由於每個VLAN都需要一個介面實現路由互通,這樣問題就來了,如

iForest的演算法原理

"An outlier is an observation which deviates so much from other observations as to arouse suspicions that it was generated by a different mechanis

nginx 反向代理原理配置解釋

一  概述                          反向代理(Reverse Proxy)方式是指以代理伺服器來接受Internet上的連線請求,然後將請求轉發給內部網路上的伺服器;並將從伺服器上得到的結果返回給Internet上請求連線的客戶端,此時代理伺服器對

Android 元件化開發原理配置

在Application的不斷髮展過程中,我們開發者要不斷地增加新特性。更多的程式碼就意味著更長的build時間和更長的增量build時間。在工程較大的專案中,build時間要佔到10%~15%的工作時間。這不僅是浪費時間,也是測試驅動工作方式(TDD)比較困難的原因。

ganglia簡介以及工作原理配置

   daemonize = yes     setuid = yes     user = nobody     debug_level = 0     max_udp_msg_len = 1472     mute = no     deaf = no     allow_extra_data = yes

MySQL 主從複製的原理配置

工作原理圖: 主從複製的原理: 分為同步複製和非同步複製,實際複製架構中大部分為非同步複製。 複製的基本過程如下: 1).Slave上面的IO程序連線上Master,並請求從指定日誌檔案的指定位置(或者從最開始的日誌)之後的日誌內容; 2).Master接收

【Linux運維-叢集技術進階】keepalived工作原理配置檔案解析

keepalived是什麼 keepalived是叢集管理中保證叢集高可用的一個服務軟體,其功能類似於heartbeat,用來防止單點故障,它可以自動檢測叢集中伺服器的健康狀況,比如主從模式時,當主伺

nginx反向代理原理配置講解

最近有打算研讀nginx原始碼,看到網上介紹nginx可以作為一個反向代理伺服器完成負載均衡。所以蒐羅了一些關於反向代理伺服器的內容,整理綜合。        一  概述                          反向代理(Reverse Proxy)方式是指以代理伺服器來接受Internet上的

Redis的複製原理配置引數

Redis使用的是master-slave主從複製模式,從2.8版本開始,這個過程是非同步的。1. 工作原理 當一個slave首次或重新連線到master的時候,會向master傳送一個PSYNC命令(2.8版本之前是SYNC命令)要求同步資料。1.1 全量同步 Full

IPSec VPN原理配置過程

IPSec協議 IKE Internet Key Exchage, 用於網際網路中金鑰的安全交換 又包括下面二個協議 ISAKMP 定義SA生成,建立等引數. Oakley 利用Diffie-Hellman演算法管理金鑰交換. DH協議保證了在不安全的環境中,金鑰可以被安全的

Struts2 攔截器(Interceptor )原理配置

一、Struts2攔截器原理: Struts2攔截器的實現原理相對簡單,當請求struts2的action時,Struts 2會查詢配置檔案,並根據其配置例項化相對的   攔截器物件,然後串成一個列表,最後一個一個地呼叫列表中的攔截器。 比如:應用要求使用者登陸,且必須為

IPtables之四:NAT原理配置

NAT一般情況下分為SNAT,DNAT和PNAT 此篇主要講述的是使用iptables配置NAT,所以這3種NAT的區別和應用場景就簡單的說明一下 SNAT:源地址轉換 目標地址不變,重新改寫源地址,並在本機建立NAT表項,當資料返回時,根據NAT表將目的地址資料

keepalived工作原理配置說明

keepalived是什麼 keepalived是叢集管理中保證叢集高可用的一個服務軟體,其功能類似於heartbeat,用來防止單點故障。 keepalived工作原理 keepalived是以VRRP協議為實現基礎的,VRRP全稱Virtual Router Re