一、HDFS分佈式文件系統

一、HDFS分佈式文件系統

  1. 分佈式存儲
  2. 分佈式計算

二、hadoop

hadoop含有四個模塊,分別是 common、 hdfs和yarn。node

  1. commonweb

    公共模塊。編程

  2. HDFS安全

    hadoop distributed file system,hadoop分佈式文件系統,負責文件的存儲管理。HDFS包括Namenode進程、DataNode進程和Secondary Namenode進程。網絡

    1. NameNode
    2. DataNode
    3. Secondary Namenode
  3. mapreduce框架

    高度抽象的編程模型,包括映射和化簡兩個階段,是大數據計算技術的基礎。ssh

  4. yarn分佈式

資源調度框架,完成在job執行時,進行集羣總體資源的調配管理的。集羣中全部資源的配置都有ResourceManager完成。oop

HA

High availability,系統提供持續服務的能力,一般使用9的個數來衡量,例如5個9就是指99.999%。fetch

high availability,高可用問題。
衡量系統持續提供服務的能力。一般使用幾個9衡量。
99.999%                 //摺合一年能夠宕機5分鐘
99.9999%                //摺合一年能夠宕機5分鐘

hadoop部署模式

1.local
    不會啓動任何進程。

2.pesudo
    一個節點啓動全部進程(5).

3.full
    在不一樣節點啓動不一樣進程。

4.HA模式
    active(宕機) + standby(待命)

webui

http://namenode:50070/
http://2nn:50090/
http://datanode:50075/

hadoop

start-all.sh
start-dfs.sh
start-yarn.sh

hadoop-daemon.sh start namenode
hadoop-daemons.sh start datanode

副本的放置策略(273)

不一樣的hadoop版本,對副本的放置策略也不用。

機架感知

按照ip地址返回網絡拓撲樹形結構/a/b/c/xxx | /a/b/c/xxx

網絡拓撲距離

每一個節點到達共同交換機的躍點數的總和。

zookeeper

協同服務,HA服務支持。
容災能力 : (n - 1) / 2
奇數.

namenode配置多個目錄

每一個目錄下的內容相同,用於備份。

datanode配置多個目錄

每一個目錄下的內容不一樣,用於擴容。

spark

hadoop

1.配額管理
    1.1)空間配額
        限制
    1.2)目錄配額
        限制目錄或文件的個數
        hdfs dfsadmin -setQuota 1 data2         //1保持目錄爲空
        hdfs dfsadmin -clsQuota data2           //1保持目錄爲空

2.快照
    瞬間照相(差別化存儲)。

3.OIV
    offline image viewer,離線鏡像查看器
    fsimage(元數據)

4.OEV
    offline edit viewer,離線編輯日誌查看器。
    edit存放的對dfs的操做過程。

鏡像控制(檢查點)

[hdfs-site.xml]
1.dfs.namenode.checkpoint.period=3600
    兩次檢查點的時間間隔.

2.操做記錄數=1000,000
    操做記錄超過該值,也會致使檢查點的建立。
    dfs.namenode.checkpoint.txns

3.檢查週期(默認60)
    dfs.namenode.checkpoint.check.period=60

4.設置檢查點文件個數,默認是2
    dfs.namenode.num.checkpoints.retained=2

5.手動融合鏡像文件(須要安全模式)
    hdfs dfsadmin -safemode enter
    hdfs dfsadmin -saveNamespace
    hdfs dfsadmin -safemode leave

6.從client能夠下載鏡像文件
    //下載集羣的鏡像文件到當前目錄下
    hdfs dfsadmin -fetchImage .

metasave

保存塊複製信息等和datanode的心跳信息到日誌文件。
該日誌文件在namenode的本地logs下。
hdfs dfsadmin -metasave 1.log

安全模式

hdfs dfsadmin -safemode get         //查看
hdfs dfsadmin -safemode enter       //進入
hdfs dfsadmin -safemode leave       //退出
hdfs dfsadmin -safemode wait        //等待

快照

//啓用快照
hfds dfsadmin -allowSnapshot data
//禁用快照
hfds dfsadmin -disallowSnapshot data

//建立快照
hdfs dfs -createSnapshot data sp1
//刪除
hdfs dfs -deleteSnapshot data sp1
//重命名
hdfs dfs -renameSnapshot data sp1 sp2

刪除目錄時,若是是可快照目錄而且有快照,沒法刪除,須要
先刪除快照再刪除目錄。

舊節點退役(datanode下線)

1.描述
    hdfs的datanode下線由dfs.hosts.exclude屬性控制,yarn的nodemanager下線
    由yarn.resourcemanager.nodes.exclude-path控制。
2.dfs.hosts.exclude
    配置datanode黑名單文件路徑名,名單中的節點不容許鏈接到nn。若是該屬性不配置,
    全部節點均可以鏈接。
3.dfs.hosts
    配置datanode白名單文件路徑名,名單中的節點容許鏈接到nn。若是該屬性不配置,
    全部節點均可以鏈接。
4.規則
    
        dfs.hosts       dfs.host.exlucde        result
    ---------------------------------------------------
        NO                  NO                  Not
        NO                  YES                 Not
        YES                 NO                  Yes
        YES                 YES                 Yes並將退役


5.退役實操
    5.0)準備黑白名單
        dfs_exclude.conf
        dfs_include.conf

    5.1)配置hdfs-site.xml的黑白名單屬性
        <property>
                <name>dfs.hosts</name>
                <value>/soft/hadoop/etc/full/dfs_include.conf</value>
        </property>
        <property>
                <name>dfs.hosts.exclude</name>
                <value>/soft/hadoop/etc/full/dfs_exclude.conf</value>
        </property>
        
    5.2)添加退役節點地址到黑名單,不要更新白名單
        [dfs_exclude.conf]
        s102

    5.3)刷新nn
        hdfs dfsadmin -refreshNodes
         
    5.4)進入webui,查看退役的節點是否顯式爲"退役中",開始複製數據塊到其餘節點。

    5.5)一旦複製完成,狀態顯式"Decommissioned",中止退役節點

    5.6)從白名單中刪除退役節點
        s103
        s104
        s106
    
    5.7)再次刷新節點
        hdfs dfsadmin -refreshNodes

    5.8)從slaves中刪除退役節點
        s103
        s104
        s106

新節點上線(datanode)

1.準備環境
    克隆新虛擬機
    配置ssh
    刪除本地臨時目錄

2.實操過程
    2.1)添加新地址到白名單
        s103
        s104
        s106
        s102
        [刪除黑名單記錄]
    2.2)刷新名稱節點
        hdfs dfsadmin -refreshNodes

    2.3)更新slaves文件
        s103
        s104
        s106
        s102

    2.4)啓動新節點的datanode進程
        [s102]
        hadoop-daemon.sh start datanode

    2.5)檢查webui

舊節點下線(nodemanager)

1.描述
    hdfs的datanode下線由dfs.hosts.exclude屬性控制,yarn的nodemanager下線
    由yarn.resourcemanager.nodes.exclude-path控制。
2.dfs.hosts.exclude
    配置datanode黑名單文件路徑名,名單中的節點不容許鏈接到nn。若是該屬性不配置,
    全部節點均可以鏈接。
3.dfs.hosts
    配置datanode白名單文件路徑名,名單中的節點容許鏈接到nn。若是該屬性不配置,
    全部節點均可以鏈接。
4.規則
    
        dfs.hosts       dfs.host.exlucde        result
    ---------------------------------------------------
        NO                  NO                  Not
        NO                  YES                 Not
        YES                 NO                  Yes
        YES                 YES                 Yes並將退役


5.退役實操
    5.0)準備黑白名單
        yarn_exclude.conf
        yarn_include.conf

    5.1)配置yarn-site.xml的黑白名單屬性
        <property>
                <name>yarn.resourcemanager.nodes.include-path</name>
                <value>/soft/hadoop/etc/full/yarn_include.conf</value>
        </property>
        <property>
                <name>yarn.resourcemanager.nodes.exclude-path</name>
                <value>/soft/hadoop/etc/full/yarn_exclude.conf</value>
        </property>
        
    5.2)添加退役節點地址到黑名單,不要更新白名單
        [yarn_exclude.conf]
        s102

    5.3)刷新nn
        yarn rmadmin -refreshNodes
         
    5.4)進入webui,查看退役的節點是否顯式爲"退役中",開始複製數據塊到其餘節點。
        http://rm:8088/

    5.5)一旦複製完成,狀態顯式"Decommissioned",中止退役節點

    5.6)從白名單中刪除退役節點
        [yarn-include.conf]
        s103
        s104
        s106
    
    5.7)再次刷新節點
        yarn rmadmin -refreshNodes

    5.8)從slaves中刪除退役節點
        s103
        s104
        s106
相關文章
相關標籤/搜索