您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何使用HDFS安全模式,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
1、安全模式概述
HDFS在安全模式狀態下,文件系統只接受讀數據請求,而不接受刪除、修改等變更請求,是一種保護機制,用于保證集群中的數據塊的安全性。在NameNode主節點啟動時,HDFS首先進入安全模式,集群會開始檢查數據塊的完整性。DataNode在啟動的時候會向namenode匯報可用的block信息,當整個系統達到安全標準時,HDFS自動離開安全模式。
假設我們設置的副本數是5,那么在Datanode上就應該有5個副本存在,假設只存在3個副本,那么比例就是 3/5=0.6。在配置文件 hdfs-default.xml中定義了一個最小的副本的副本率0.999。我們的副本率0.6明顯小于0.99,因此系統會自動的復制副本到其他的DataNode,使得副本率不小于0.999。如果系統中有8個副本,超過我們設定的5個副本,那么系統也會刪除多余的3個副本。 如果HDFS處于安全模式下,不允許HDFS客戶端進行任何修改文件的操作,包括上傳文件,刪除文件,重命名,創建文件夾,修改副本數等操作。
2、安全模式配置
與安全模式相關主要配置在hdfs-site.xml文件中,主要有下面幾個屬性:
(1)dfs.namenode.replication.min:每個數據塊最小副本數量,默認為1在上傳文件時,達到最小副本數,就認為上傳是成功的。
(2)dfs.namenode.safemode.threshold-pct:達到最小副本數的數據塊的百分比。默認為0.999f。當小于這個比例,那就將系統切換成安全模式,對數據塊進行復制;當大于該比例時,就離開安全模式,說明系統有足夠的數據塊副本數,可以對外提供服務。小于等于0意味不進入安全模式,大于1意味一直處于安全模式。
(3)dfs.namenode.safemode.min.datanodes:離開安全模式的最小可用datanode數量要求,默認為0也就是即使所有datanode都不可用,仍然可以離開安全模式。
(4)dfs.namenode.safemode.extension:當集群可用block比例,可用datanode都達到要求之后,如果在extension配置的時間段之后依然能滿足要求,此時集群才離開安全模式。單位為毫秒,默認為 30000也就是當滿足條件并且能夠維持30秒之后,離開安全模式。這個配置主要是對集群穩定程度做進一步的確認。避免達到要求后馬上又不符合安全標準。
總結一下,要離開安全模式,需要滿足以下條件:達到副本數量要求的 block 比例滿足要求;可用的 datanode 節點數滿足配置的數量要求;1、2 兩個條件滿足后維持的時間達到配置的要求。
3、安全模式命令
手動進入安全模式
hdfs dfsadmin -safemode enter
手動進入安全模式對于集群維護或者升級的時候非常有用,因為這時候 HDFS 上的數據是只讀的。手動退出安全模式可以用下面命令:
hdfs dfsadmin -safemode leave
以上就是如何使用HDFS安全模式,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。