Hadoop偽分布式模型

# java -version
# vim /etc/profile.d/java.sh
  export JAVA_HOME=/usr
# yum install java-1.8.0-openjdk-devel
# mkdir /bdapps
# tar xf hadoop-2.7.4.tar.gz -C /bdapps/
# cd /bdapps
# ln -sv hadoop-2.7.4 hadoop
# cd hadoop/
# vim /etc/profile.d/hadoop.sh                 編輯環境配置文件
     export HADOOP_PREFIX=/bdapps/hadoop
     export PATH=$PATH:${HADOOP_PREFIX}/bin:${HADOOP_PREFIX}/sbin
     export HADOOP_YARN_HOME=${HADOOP_PREFIX}
     export HADOOP_MAPPERD_HOME=${HADOOP_PREFIX}
     export HADOOP_COMMON_HOME=${HADOOP_PREFIX}
     export HADOOP_HDFS_HOME=${HADOOP_PREFIX}
# ./etc/profile.d/hadoop.sh
# ls
    bin/     存放二進制程序文件
    include/     頭文件目錄
    lib/      庫文件目錄
    sbin/     腳本
    etc/hadoop    .sh格式文件是配置hadoop運行環境 .xml結尾的文件實配置文件
# groupadd hadoop                創建用戶和組
# useradd -g hadoop yarn 
# useradd -g hadoop hdfs
# useradd -g hadoop mapred

# mkdir -pv /data/hadoop/hdfs{nn,snn,dn}           創建數據庫
# chown -R hdfs:hadoop /data/hadoop/hdfs
# ll
# mkdir logs                  創建日志目錄
# chown -R yarn:hadoop logs
# chown -R yarn:hadoop ./*

配置hadoop
# cd etc/hadoop
# vim core-site.xml        包含了NameNode的一些信息
   <configuration>
        <property>
             <name>fs.defaultFS</name>          
             <value>hdfs://localhost:8020</value>     
             <final>true</final>
        </property>
   </configuration>

# vim hdfs-site.xml     配置HDFS相關的屬性
 <configuration>
 <property>
 <name>dfs.replication</name>
 <value>1<value>
 </propery>
 <property>
 <name>dfs.namenode.name.dir</name>
 <value>file:///data/hadoop/hdfs/nn</value>
 </propery>
 <property>
 <name>dfs.datanode.data.dir</name>
 <value>file:///data/hadoop/hdfs/dn</value>
 </propery>
 <property>
 <name>fs.checkpoint.dir</name>
 <value>file:///data/hadoop/hdfs/snn<value>
 </propery>
 <property>
 <name>fs.checkpoint.dir</name>
 <value>file:///data/hadoop/hdfs/snn<value>
 </propery>
 </configuration>

注意,如果需要其他用戶對hdfs有寫入權限,還需要添加
 <property>
     <name>dfs.premissions</name>       不做嚴格權限限制
     <value>false<value>
 </propery>

# cp mapred-site.xml.template mapred-site.xml
# vim mapred-site.xml    定義MapReduce
<configuration>
? <property>
??? <name>mapred.framwork.name</name>
??? <value>yarn</value>
? </property>
</configuration>

# vim yarn-site.xml
<configuration>
? <property>
??? <name>yarn.resourcemanager.address</name>
??? <value>localhost:8032</value>
? </property>
? <property>
??? <name>yarn.resourcemanager.scheduleraddress</name> #調度器地址
??? <value>localhost:8030</value>
? </property>?
? <property>
??? <name>yarn.resourcemanager.resource-tracker.address</name> #資源追蹤器地址
??? <value>localhost:8031</value>
? </property>
? <property>
??? <name>yarn.resourcemanager.admin.address</name> #管理地址
??? <value>localhost:8033</value>
? </property>
? <property>
??? <name>yarn.resourcemanager.webapp.address</name> 
??? <value>localhost:8088</value>
? </property>
? ??<property>
??? <name>yarn.nodemanager.aux-service</name> #輔助服務
??? <value>mapreduce_shuffle</value>
? </property> 
? <property>
??? <name>yarn.nodemanager.auxservice.mapreduce_shuffle.class</name> #shuffle類
??? <value>org.apache.hadoop.mapred.ShuffleHandler</value>
? </property>
? ??<property>
??? <name>yarn.resourcemanager.scheduler.class</name> 
??? <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
? </property> ?
</configuration>

格式化HDFS

以hadoop用戶運行如下命令

# su - hdfs
$ hadoop namenode -format

其中的“Storage directory /hadoop/temp/dfs/name has been successfully formatted”一行信息表明對應的存儲已經格式化成功。

啟動hadoop

$ hadoop-daemon.sh start namenode

$ jps ? ? ? ? ? ? ? ? ??查看正在運行的Hadoop進程

$ hadoop-daemon.sh start secondarynamenode   啟動輔助名稱節點
$ hadoop-daemon.sh start datanode    
$ hdfs dfs -ls /    查看目錄
$ hdfs dfs -mkdir /test
    drwxr-xr-x - hdfs supergroup             
$ hdfs -dfs -put /etc/fstab /test/fstab
$ hdfs dfs -lsR /   查看是否上傳成功
$ hdfs dfs -cat /test/fstab     (對應cat /data/hadoop/dfs/dn/current/...)
$ su -yarn
$ yarn-daemon.sh start resourcemanager
$ jps
$ yarn-daemon.sh start nodemanager

HDFS和YARN ResourceManager各自提供了一個Web接口,通過這些接口可檢查HDFS集群以及YARN集群的相關狀態信息

HDFS-NameNode ? ? http://<NameNodeHost>:50070

YARN-ResourceManager ? ? http://<ResourceManagerHost>:8088

運行測試程序

hadoop-YARN自帶了許多樣例程序,它們位于hadoop安裝路徑下/share/hadoop/mapreduce目錄中,其中hadoop-mapreduce-example可做mapreduce程序測試

# su - hdfs
$ yarn jar /bdapps/hadoop//share/hadoop/mapreduce/hadoop-mapreduce-example-2.7.4.jar


 

原創文章,作者:nene,如若轉載,請注明出處:http://www.www58058.com/89608

(0)
nenenene
上一篇 2017-12-08
下一篇 2017-12-08

相關推薦

  • Linux系統啟動流程、內核及模塊管理、linux啟動故障排除和自制linux

    Linux系統啟動流程、內核及模塊管理 Linux系統的組成部分組成:內核+根文件系統(kernel+rootfs)內核(kernel): 進程管理(創建、調度、銷毀等)、內存管理、網絡管理(網絡協議棧)、驅動程序、文件系統、安全功能IPC:Inter Process Communication機制本地進程間通信機制:消息隊列、semerphor、shm(共…

    2016-09-29
  • 搭建CA服務器為Client簽發證書

    搭建CA服務器為Client簽發證書   此次實驗步驟如下: 一、搭建CA服務器 1)  在/etc/pki/CA下創建index.txt文件,此文件是為Client簽發證書的索引文件; 2)  在/etc/pki/CA下創建serial文件,此文件記錄為Client簽發證書的編號; 3)  生成CA服務器私鑰; 4)…

    2017-05-21
  • 網卡別名及多網卡配置

    網卡別名 對于要在不同網段環境中使用的設備有很大的幫助。     要使用網卡別名首先要關閉NetworkManager這個服務,防止在后續操作中引起不必要的沖突。 [root@laodeng6 ~]# chkconfig NetworkManager off [root@laod…

    Linux干貨 2016-09-06
  • Bash Shell編程初學基礎篇之一

     Bash Shell編程初學基礎篇之一 說明: 本文僅供初學Linux  Bash  shell學員參考學習,大神們如有興趣請批評指正?。?!    相信對于很多Linux初學者或者僅僅是聽說Linux還沒有接觸過的同學會有一種神秘感或者不敢碰觸的感覺,今天就幫大家揭開它的神秘面紗,其實并沒有那么深不可測,只…

    Linux干貨 2015-03-29
  • 馬哥教育網絡班22期+第2周課程練習

    1、Linux上文件管理命令有哪些,其常用的相關示例演示。 常見文件管理命令有:touch/stat/file/rm/cp/mv/nano 示例如下: [root@localhost week2_test]# touch newfile [root@localhost week2_test]# ls&nbsp…

    Linux干貨 2016-08-22
欧美性久久久久