2017/8/11

Hadoop 練習筆記 - HDFS(multi mode) (1)

參考網址
參考網址
  • 目標 : 建立 Hadoop 實現分散式環境
  • 準備 : CentOS 7  * 3  
    • 1 master , 2 slave
  • 在master主機 /etc/hosts 設定三台domain
    • 192.168.100.100 master
    • 192.168.100.101 slave1
    • 192.168.100.102 slave2
  • 建立hadoop帳號密碼 , 在master主機建立ssh-key鑰  參考網址  , 參考網址
    • useradd hadoop
    • passwd hadoop
    • su hadoop
    • ssh-keygen
    • ssh-copy-id hadoop@192.168.100.101/102
    • 測試無密碼 ssh連線
  • 將hadoop 設為最高權限 (可執行所有指令) 
    • root -> visudo
    • 加入此行  " hadoop  ALL=(ALL)       ALL "
  • 安裝Oracle jdk, 移除open jdk 參考網址 
    • 至官方下載最新jdk
    • su -
    • 安裝rpm yum install jdk-8u51-linux-x64.rpm
    • 變更預設jdk
      • alternatives  --config java
      • 如果未出現選項先update
        • update-alternatives --install /usr/bin/java java /usr/java/jdk1.7.0_79/bin/java 300
    • 移除openjdk 
      • rpm -qa | grep openjdk
      • yum remove -y  [套件名稱]
    • 建立JAVA_HOME
      • nano /etc/profile
      • export JAVA_HOME=/usr/java/jdk1.8.0_141
      • source /etc/profile
      • env | grep java
  • 至官網下載hadoop 安裝檔 2.8.1放置在 /home/hadoop下
  • 配置XML
    • core-site.xml (是核心配置,為 hadoop 指定基本配置信息)
    • hdfs-site.xml  (配置hdfs参数,比如備份數量)
    • mapred-site.xml (配置map-reduce属性)
      • 已改由yarn取代
    • yarn-site.xml (配置yarn属性)
  • Master主機 
    • HDFS設定
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/hdfs-site.xml 


    • 核心的主機交換資料位址設定
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/core-site.xml 

    • 使用 yarn 管理 MR
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/mapred-site.xml

    • yarn-site 的資源管理員設定
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/yarn-site.xml 

    • 環境變數
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/hadoop-env.sh
      • export JAVA_HOME=/usr/java/latest
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/yarn-env.sh
      • export JAVA_HOME=/usr/java/latest
  • Slave主機
    • yarn-site 設定
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/yarn-site.xml 

    •  mapred 由 yarn 管理
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/mapred-site.xml

    • HDFS 設定
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/hdfs-site.xml

    • 核心主機
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/core-site.xml 

  • 添加環境變數
    • source .bash_profile

  • 格式化 hdfs 檔案系統
    • master
      • rm -rf /home/hadoop/namenode
      • mkdir /home/hadoop/namenode
      • 格式化namenode資料夾
        • hdfs namenode -format
    • slave
      • rm -rf /home/hadoop/datanode
      • mkdir /home/hadoop/datanode
  • 設定Node
    • master
      • nano /home/hadoop/hadoop-2.8.1/etc/hadoop/slaves     
      • 加入 slave1 slave2
  • 啟動hadoop
    • cd /home/hadoop/hadoop-2.8.1/sbin/start-all.sh
  • 驗證
    • master觀看 HDFS 驗證
      • hdfs dfs -mkdir /home
      • hdfs dfs -ls /
    • master使用 dfsadmin 觀看報表
      • hdfs dfsadmin -report
    • master使用jps查看進程
      • 應有 NameNode , SecondaryNameNode , Jps , ResourceManager
    • slave使用jps查看進程
      • 應有NodeManager , DataNode , Jps
    • master查看瀏覽器管理介面
      • http://localhost:50070
  • 啟動後查看管理介面
    • http://localhost:50070/ – web UI of the NameNode daemon
    • http://localhost:50030/ – web UI of the JobTracker daemon
    • http://localhost:50060/ – web UI of the TaskTracker daemon




沒有留言:

張貼留言

test2