Hadoop Single Node Cluster安装

Hadoop Single Node Cluster安装

Hadoop Single Node Cluster 可以用一台机器来建立Hadoop环境。

Hadoop Single Node Cluster 只有一台服务器,整合了所有功能:
这里写图片描述

安装步骤:

  • 安装JDK:Hadoop是基于Java开发
  • 设置SSH无密码登录:Hadoop必须通过SSH与本地计算机以及其他主机连接,必须设置SSH
  • 下载安装Hadoop:Hapdoop官网下载Hadoop,安装到Ubuntu系统中
  • 设置Hadoop环境变量:设置每次用户登录时必须要设置的环境变量
  • Hadoop配置文件设置:在/usr/local/hadoop/etc/hadoop目录下有很多配置设置文件
  • 创建并格式化HDFS目录
  • 启动Hadoop
  • 打开Hadoop Web界面:查看当前Hadoop状态:Node节点,应用程序,任务运行状态

安装JDK

Ubuntu系统桌面下,“Ctrl+Alt+T”启动终端窗口:输入命令:

查看当前java版本:

java -version 

连接到APT Server,获取最新软件包版本:(输入安装时的用户密码)

sudo apt-get update 

安装 JDK:输入Y,点击键盘enter键

sudo apt-get install default-jdk

查询Java安装路径:

update-alternatives --display java

设置SSH无密码登录

启动Hadoop系统时,NameNode必须与DataNode连接并管理这些节点(DataNode),此时系统需要用户输入密码,为便于运行不需要手动输入密码,需要将SSH设置为无密码登录(无密码登录)并非不需要密码,而是以事先交换的SSH key(密钥)来进行身份验证。

Hadoop使用SSH(Secure Shell)连接,是目前较可靠,专为远程登录其他服务器提供的安全性协议。通过SSH会对所有传输的数据进行加密,利用SSH协议可以防止远程管理系统时信息外泄的问题。

安装SSH:输入Y,点击键盘enter键

sudo apt-get install ssh

安装rsync:

sudo apt-get install rsync

产生SSH Key(密钥):使用ssh-keygen 产生密钥

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

查看密钥文件SSH Key (密钥):

ll ~/.ssh

将产生的Key放置到许可证文件中:

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

下载安装Hadoop

下载Hadoop 2.6.4,打开Ubuntu浏览器输入下载地址:https://archive.apache.org/dist/hadoop/common/
点击Hadoop 2.6.4版本(为例)
这里写图片描述

进入链接,在“hadoop-2.6.4.tar.gz”上右键,选择“Copy Link Location”

终端输入 Wget + 复制下来的链接:

wget https://archive.apache.org/dist/hadoop/common/hadoop-2.6.4/hadoop-2.6.4.tar.gz

解压缩hadoop-2.6.4.tar.gz 至 hadoop-2.6.4 目录:

sudo tar -zxvf hadoop-2.6.4.tar.gz

将Hadoop移动到软件默认安装路径/usr/local:

sudo mv hadoop-2.6.4 /usr/local/hadoop

查看Hadoop安装目录:

ll /usr/local/hadoop

设置Hadoop环境变量

在~/.bashrc文件中设置每次登录时都会自动运行一次环境变量设置:

**编辑~/.bashrc:**enter键打开~/.bashrc

sudo gedit ~/.bashrc

输入下列内容:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 
export HADOOP_HOME=/usr/local/hadoop 
export PATH=$PATH:$HADOOP_HOME/bin 
export PATH=$PATH:$HADOOP_HOME/sbin 
export HADOOP_MAPRED_HOME=$HADOOP_HOME 
export HADOOP_COMMON_HOME=$HADOOP_HOME 
export HADOOP_HDFS_HOME=$HADOOP_HOME 
export YARN_HOME=$HADOOP_HOME 
export HADOOP_COMMON_HOME=$HADOOP_HOME 
export HADOOP_HDFS_HOME=$HADOOP_HOME 
export YARN_HOME=$HADOOP_HOME 
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native 
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" 
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH

这里写图片描述

保存,关闭。上述设置说明:

  • 设置JDK安装路径:

    export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

  • 设置HADOOP_HOME为Hadoop的安装路径/usr/local/hadoop:

    export HADOOP_HOME=/usr/local/hadoop

  • 设置PATH:

    export PATH=$PATH:$HADOOP_HOME/bin
    export PATH=$PATH:$HADOOP_HOME/sbin

  • 设置HADOOP其他环境变量:

    export HADOOP_MAPRED_HOME=$HADOOP_HOME export
    HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME
    export YARN_HOME=$HADOOP_HOME

  • 链接库的相关设置

    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
    export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" export
    JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH

让 ~/.bashrc 修改的设置生效

source ~/.bashrc 

修改Hadoop配置设置文件

1、设置hadoop-env.sh配置文件

  • 编辑Hadoop-env.sh

    sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh

  • 修改JAVA_HOME字段:

    export JAVA_HOME=${JAVA_HOME}修改为:export
    JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

  • 修改完成后,保存,关闭gedit。

2、设置core-site.xml

  • 修改core-site.xml

    sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml

<configuration></configuration>键入
<property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value> 
</property>

这里写图片描述
保存并关闭.

3、设置YARN-site.xml

  • 编辑YARN-site.xml

    sudo gedit /usr/local/hadoop/etc/hadoop/yarn-site.xml

<configuration></configuration>键入
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value> 
</property>
<property>
    <name> yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value> 
</property>
  • 保存并关闭。

4、设置mapred-site.xml

mapred-site.xml用于设置监控Map与Reduce程序的JobTracker任务分配情况以及TaskTracker任务运行情况。Hadoop提供了设置的模板文件,可以自行复制修改。

  • 复制模板文件:由mapred-site.xml.template 至mapred-site.xml:

    sudo cp /usr/local/hadoop/etc/hadoop/mapred-site.xml.template
    /usr/local/hadoop/etc/hadoop/mapred-site.xml

  • 编辑mapred-site.xml

    sudo gedit /usr/local/hadoop/etc/hadoop/mapred-site.xml

<configuration></configuration>键入
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value> 
</property>
  • 保存并关闭。

5、设置hdfs-site.xml

hdfs-site.xml用于设置HDFS分布式文件系统

  • 编辑hdfs-site.xml

    sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml

<configuration></configuration>键入
<property>
    <name>dfs.replication</name>
    <value>3</value> 
</property>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/local/hadoop/hadoop_data/hdfs/namenode</value> 
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/local/hadoop/hadoop_data/hdfs/datanode</value> 
</property>

这里写图片描述

  • 保存并关闭。

创建并格式化HDFS目录

1、创建namenode、datanode数据存储目录

  • 创建namenode数据存储目录

    sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/namenode

  • 创建datanode数据存储目录

    sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/datanode

  • 将Hadoop目录的所有者更改为“本机用户”

    sudo chown 本机用户名:本机用户名 -R /usr/local/hadoop

2、格式化namenode

将HDFS进行格式化

hadoop namenode -format

启动Hadoop

启动Hadoop可以使用以下两种方式,直接在终端命令行输入start-all.sh:

  • 分别启动HDFS、YARN,使用start-dfs.sh(启动HDFS)、start-yarn.sh(启动YARN)
  • 同时启动HDFS、YARN,使用start-all.sh
  • 查看NameNode、DataNode进程是否启动

    jps
    这里写图片描述

上图中的启动进程说明:因为只有一台服务器,所以所有功能都集中在这台服务器中。

  • HDFS相关功能:NameNode、SecondaryNameNode、DataNode 已经启动

Hadoop Web 界面

1、Hadoop Resource-Manager Web界面

Hadoop Resource-Manager Web 界面可用于查看当前Hadoop的状态:Node节点、应用程序、进程运行状态

打开浏览器,输入http://localhost:8088/

2、NameNode HDFS Web 界面

HDFS Web界面可以检查当前HDFS与DataNode的运行情况,打开浏览器,输入http://localhost:50070/

猜你喜欢

转载自blog.csdn.net/weixin_40170902/article/details/82463614
今日推荐