Course Code: hadoopadm2
Duration: 14 hours
Prerequisites:

熟練掌握Linux操作系統(如CentOS7)的安裝、配置與管理
熟悉Shell命令與基本的腳本編寫知識
無須事先具有Hadoop和分布式計算知識
最好掌握Java基礎

Overview:

Apache Hadoop是用于處理服務器群集上的Big Data的最流行的框架。在本次課程中,與會者將了解Hadoop及其生態系統的業務優勢和用例,如何規劃群集部署和增長,如何安裝,維護,監控和優化Hadoop 。他們還將練習集群批量數據加載,熟悉各種Hadoop發行版,並掌握安裝和管理Hadoop生態系統工具的方法。

Course Outline:

Hadoop基礎:架構、集群、規劃與應用架構

  1. Hadoop和Hadoop環境介紹

簡介、特點與典型應用場景

Hadoop集群與集群計算

Hadoop組件與生態

Hadoop1和Hadoop2的區別

  1. Hadoop架構介紹

Hadoop與分布式計算

Hadoop架構

Hadoop分布式文件系統HDFS

YARN架構及資源分配機制

  1. Hadoop集群創建與安裝

Hadoop發行版本和安裝類型

設置一個僞分布式Hadoop集群

Hadoop初始配置

Hadoop服務啓動與驗證

  1. Hadoop生産集群的規劃與設計

規劃Hadoop集群

從單機架到多機架

創建一個多節點集群

Hadoop配置

啓動集群與配置Hadoop服務

  1. Hadoop上運行應用:MapReduce編程模型與YARN框架

MapReduce模型

MapReduce作業處理

理解Hadoop的作業處理過程

Hadoop如何展示作業細節

天,高級Hadoop:數據管理、保護與遷移,資源監控與優化

  1. NameNode的作用和HDFS的工作原理

NameNode與DataNode之間的交互

機架感知和拓撲邏輯

HDFS數據副本

客戶端如何讀寫HDFS數據

Hadoop歸檔管理

  1. HDFS命令、權限與存儲

用HDFS Shell命令管理HDFS

HDFS權限和用戶

管理HDFS存儲

重新均衡HDFS數據

回收HDFS空間

數據壓縮

  1. NameNode高可用

NameNode HA架構 (QJM)

管理HA NameNode設置

HA手動和自動故障轉移

備份和恢複NameNode元數據

  1. 數據遷移

數據傳輸工具簡介

通過命令行將數據加載到HDFS

使用DistCp在HDFS集群之間複制數據

與Hadoop數據進行交換(Database, Flume, Kafka等)

  1. 集群中的資源分配

Hadoop中的資源分配

FIFO調度

容量調度

公平調度

  1. 監控、指標和Hadoop日志

監控Linux服務器

Hadoop指標

使用Ganglia進行監測

Hadoop日志記錄

使用Hadoop的WebUI進行監控

  1. 調優集群資源,優化MapReduce作用和基准測試

如何分配YARN內存和CPU

配置高性能

Map和reduce任務調優

對集群進行基准測試 (IO/作業)

優化MapReduce