Hadoop2.8.5伪分布安装步骤

Hadoop伪分布安装步骤

安装的是2.8.5release版本,略微涉及到了原理,不适合完全Linux小白

(假设已经安装了Java环境,否则的话先安装Java且已经配置了SSH免密,如果没做的话可以搜一下别的教程)

在命令行中进入Downloads目录,再用 wget 下载hadoop-2.8.5.tar.gz

cd ~/Downloads
wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.8.5/hadoop-2.8.5.tar.gz

此命令从华科的镜像下载2.8.5的Hadoop,并放在了Downloads目录下。

然后把.tar.gz文件解压到某个目录下,这里解压到/usr下,并改文件夹名为hadoop,用chmod修改一下权限,为了方便我们直接777了,使得读写和运行不再需要管理员权限。

cd ~/Downloads
sudo tar -zxf hadoop-2.8.5.tar.gz -C /usr
cd /usr
sudo mv hadoop-2.8.5 hadoop
chmod 777 /usr/hadoop

配置hadoop

需要配置的文件有5个,hadoop-env.shcore-site.xmlmapred-site.xmlhdfs-site.xmlyarn-site.xml

按照前面的配置,这些的文件位置在/usr/hadoop/etc/hadoop下

编辑hadoop-env.sh

cd /usr/hadoop/etc/hadoop
sudo vim hadoop-env.sh

把Java_HOME的位置改成自己本机上Java的位置

export JAVA_HOME=/usr/lib/jvm/java

编辑core-site.xml

sudo vim core-site.xml



替换成


  
      hadoop.tmp.dir  
      /usr/hadoop/hdfs/tmp
    A base for other temporary directories.
  
  
     fs.default.name                                     
     hdfs://localhost:9000                             
                                                          

注: fs.default.name 保存了NameNode的位置,HDFS和MapReduce组件都需要用到它,这就是它出现在core-site.xml 文件中而不是 hdfs-site.xml文件中的原因

编辑mapred-site.xml, 设置MapReduce使用的框架

也可能名字为mapred-site.xml.templete , 改不改名字都可以。

sudo vim mapred-site.xml

  
    mapred.job.tracker
    localhost:9001
  

变量mapred.job.tracker 保存了JobTracker的位置,因为只有MapReduce组件需要知道这个位置,所以它出现在mapred-site.xml文件中。

编辑hdfs-site.xml

sudo vim hdfs-site.xml

  
    dfs.replication
    1
  

变量dfs.replication指定了每个HDFS数据库的复制次数。 通常为3,由于我们只有一台主机和一个伪分布式模式的DataNode,将此值修改为1。

编辑yarn-site.xml

sudo vim yarn-site.xml

    
        yarn.nodemanager.aux-services
        mapreduce_shuffle
    

启动Hadoop之前要格式化

首先要格式化HDFS

hadoop namenode -format

再启动Hadoop

cd /usr/hadoop/sbin  
sbin/start-dfs.sh 
sbin/start-yarn.sh

如果上面的命令权限不够可能是之前没有chmod

chmod 777 /usr/hadoop
cd /usr/hadoop/sbin  
sbin/start-dfs.sh 
sbin/start-yarn.sh

为了启动Hadoop的时候避免每次都首先进到安装目录,然后再执行sbin/start-dfs.shsbin/start-yarn.sh这么麻烦,所以在编辑 ~/.bashrc~/.zshrc文件,加上如下几行


export HADOOP_HOME=/usr/hadoop
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

alias hadoop_start="/usr/hadoop/sbin/start-dfs.sh;/usr/hadoop/sbin/start-yarn.sh"
alias hadoop_stop="/usr/hadoop/sbin/stop-yarn.sh;/usr/hadoop/sbin/stop-dfs.sh"
​
alias hadoop_start="/usr/hadoop/sbin/start-dfs.sh;/usr/hadoop/sbin/start-yarn.sh"
alias hadoop_stop="/usr/hadoop/sbin/stop-yarn.sh;/usr/hadoop/sbin/stop-dfs.sh"

然后执行 source ~/.bashrcsource ~/.zshrc 更新。 这样就可以用 hadoop_starthadoop_stop 这两个命令来启动Hadoop了。

可以用jps指令查看运行的Java进程,结果应当如下:

Hadoop2.8.5伪分布安装步骤_第1张图片
Jps进程查看

你可能感兴趣的:(Hadoop2.8.5伪分布安装步骤)