第四章Hadoop Single Node Cluster的安装

@[TOC](第四章Hadoop Single Node Cluster的安装)
Hadoop Single Node Cluster的安装(只以一台机器来建立Hadoop环境,可以使用相关命令但是无法发挥多台机器的威力)。

根据安装步骤

#4.1安装JDK
首先配置Java环境
启动终端检查Java版本

java –version
没有返回版本信息即需要安装。
关于sudo apt-get update
在Linux中既可以使用apt进行管理,也可以使用apt-get下载软件安装包(套件)。首先需要运行apt-get update 更新软件包信息。

sudo apt-get update
运行apt-get必须具有superuser的权限,但是因该账户权限太大,为了安全考虑我们一般不会使用该账户登陆系统。因此我们加上“sudo”命令,询问superuser密码,并且短暂获取权限。

sudo apt-get install default-jdk
输入y确认。
安装完后检查并查询Java安装的位置

update-alternatives --display java
“链接目前指向 /usr/lib/jvm/java-7-openjdk-amd64”
稍后在~/.bashrc文件中设置此路径。
4.2设置ssh无密码登录
Hadoop是由多台服务器所组成的,当我们启动Hadoop系统时,NameNode必须与DataNode连接并管理这些节点。系统会要求用户输入密码,为了让系统不需要要手动输入密码运行而将SSH改成无密码登录。
无密码登录并不是不需要密码,而是事先交换得到SSH Key(密钥)来进行身份验证。
通过SSH会对所有的传输数据进行加密,利用SSH协议可以防止远程管理系统时信息外泄的问题。
安装SSH

sudo apt-get install ssh
安装rsync

sudo apt-get install rsync
产生SSH Key 调用ssh-keygen
-t type Specify type of key to create. (此处采用的是DSA加密方法)
-P phrase Provide old passphrase.
-f filename Filename of the key file.

ssh-keygen -t dsa -P ‘’ -f ~/.ssh/id_dsa

生成对应密钥。
查看密钥,一般产生在用户根目录下,/home/hduser

ll ~/.ssh
将产生的key放到许可证当中。

cat ~/.ssh/id_dsa.pub
~/.ssh/authorized_keys
该命令会将~/.ssh/id_dsa.pub 附加到~/.ssh/authorized_keys
Tips:
Linux 的输出重定向附加功能命令的格式如下:
命令>>文件
重定向符号“>>”将会在命令
4.3下载安装Hadoop
这里下载的版本为2.6.4,因为要配合Spark2.0 所以作者建议系在2.6.4
进入hadoop官网 查看镜像选择2.6.4的版本,选择hadoop-2.6.4.tar.gz文件进行复制。
地址如下:
https://archive.apache.org/dist/hadoop/common/hadoop-2.6.4/hadoop-2.6.4.tar.gz
而后在Linux中执行“wget + 上述网站”下载命令。
解压缩hadoop-2.6.4.tar.gz 到hadoop-2.6.4目录

sudo tar –zxvf hadoop-2.6.4.tar.gz
移动hadoop-2.6.4目录到/usr/local

sudo mv hadoop-2.6.4 /usr/local/hadoop
查看安装目录

ll /usr/local/hadoop
4.4设置Hadoop环境变量
在~/.bashrc 文件中设置每次登录时都自动运行一次环境变量设置,以避免每次重新登录都要重新设置一遍。
编辑~/.bashrc文件

sudo gedit ~/.bashrc

在最后加入
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop
export PATH= P A T H : PATH: HADOOP_HOME/bin
export PATH= P A T H : PATH: HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME= H A D O O P H O M E e x p o r t H A D O O P C O M M O N H O M E = HADOOP_HOME export HADOOP_COMMON_HOME= HADOOP_HOME
export HADOOP_HDFS_HOME= H A D O O P H O M E e x p o r t Y A R N H O M E = HADOOP_HOME export YARN_HOME= HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR= H A D O O P H O M E / l i b / n a t i v e e x p o r t H A D O O P O P T S = " D j a v a . l i b r a r y . p a t h = HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path= HADOOP_HOME/lib"
export JAVA_LIBRARY_PATH= H A D O O P H O M E / l i b / n a t i v e : HADOOP_HOME/lib/native: JAVA_LIBRARY_PATH
点击保存,关闭窗口。
运行

source ~/.bashrc
让修改文件生效。

环境变量设置说明:
设置JDK安装路径
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
设置HADOOP_HOME 为Hadoop的安装路径/usr/local/hadoop
export HADOOP_HOME=/usr/local/hadoop
设置PATH(可以让你在其他的目录时仍然能够运行Hadoop命令)
export PATH= P A T H : PATH: HADOOP_HOME/bin
export PATH= P A T H : PATH: HADOOP_HOME/sbin
设置HADOOP其他环境变量
H A D O O P H O M E H a d o o p / u s r / l o c a l / h a d o o p e x p o r t H A D O O P M A P R E D H O M E = HADOOP_HOME,也就是Hadoop的安装路径/usr/local/hadoop export HADOOP_MAPRED_HOME= HADOOP_HOME
export HADOOP_COMMON_HOME= H A D O O P H O M E e x p o r t H A D O O P H D F S H O M E = HADOOP_HOME export HADOOP_HDFS_HOME= HADOOP_HOME
export YARN_HOME= H A D O O P H O M E e x p o r t H A D O O P C O M M O N L I B N A T I V E D I R = HADOOP_HOME 链接库的相关设置 export HADOOP_COMMON_LIB_NATIVE_DIR= HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path= H A D O O P H O M E / l i b " e x p o r t J A V A L I B R A R Y P A T H = HADOOP_HOME/lib" export JAVA_LIBRARY_PATH= HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH
4.5修改hadoop配置设置文件
主要包括文件Hadoop-env.sh、core-site.xml、YARN-site.xml、mapred-site.xml、hdfs-site.xml
编辑Hadoop-env.sh

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

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

编辑core-site.xml

sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml
在中加入下列代码:


fs.default.name
hdfs://localhost:9000


设置HDFS的默认名称。

修改yarn-site.xml

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

yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.aux-services.mapreduce.shuffle.class org.apache.hadoop.mapred.ShuffleHandler

修改mapred-site.xml
mapred-site.xml用于监控Map和Reduce程序的JobTracker任务分配情况以及TaskTracker任务运行情况。
因Hadoop提供了模板文件所以直接复制即可。

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

sudo gedit /usr/local/hadoop/etc/hadoop/mapred-site.xml
在文件中加入下列代码:

mapreduce.framework.name
yarn

设置hdfs-site.xml

sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml
加入下述代码:
1.设置blocks副本备份数量

dfs.replication
3

设置NameNode数据库存储目录

dfs.namenode.name.dir
file:/usr/local/hadoop/hadoop_data/hdfs/namenode

设置DataNode数据存储目录

dfs.datanode.data.dir
file:/usr/local/hadoop/hadoop_data/hdfs/datanode

默认的blocks副本备份数量是每一个文件在其他的Node的备份数量。默认值3.
4.6创建并格式化HDFS目录
创建namenode、datanode数据存储目录:
创建namenode

sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/namenode
创建datanode

sudo mkdir -p /usr/local/hadoop/hadoop_data/hdfs/datanode
用chown函数更改所有者为当前用户我的linux计算机名为tc,因此变更为tc:tc

sudo chown tc:tc -R /usr/local/hadoop
把HDFS进行格式化(删除所有已有的数据)

hadoop namenode -format
4.7启动hadoop
启动HDFS

start-dfs.sh
启动Yarn

start-yarn.sh
同时启动

start-all.sh
jps(Java virtual Machine Process Status Tool)查看所有当前运行的进程。。
4.8打开Hadooop Resource-Manager Web界面
http://localhost:8088/
点击Nodes显示当前节点。
4.9NameNode HDFS web界面
http://localhost:50070/
查看Live Nodes 常看当前已经启动的节点。
点击DataNodes显示当前已经启动的Datanode

猜你喜欢

转载自blog.csdn.net/sinat_34285764/article/details/89061423