Hadoop Single Node Cluster的安装:
1、安装JDK
- 启动终端运行
java -version
查看当前Java版本,出现下图代表未安装
- 连接到APT Server, 更新软件信息
sudo apt-get update
- 安装JDK执行命令
sudo apt-get install default-jdk
输入Y, Enter 继续执行
- 再次查询版本
java -version
- 查询java安装位置:
update-alternatives --display java
2、设置SSH无密码登录
Hadoop是由很多台服务器组成的,当启动Hadoop时,NameNode必须与DateNode连接并管理这些节点。此时系统需要用户输入密码。为了让系统顺利运行,采用SSH连接,进行无密码登录(相当于使用事先交换的SSH密钥进行身份验证)
SSH连接是目前较为可靠的,转为远程登录其他服务器提供的安全协议。通过SSH加密会对所有传输的数据进行加密,利用SSH协议可以防止远程管理系统的信息泄露问题。
设置流程如下:
- 安装SSH
sudo apt-get install ssh
- 安装rsync
sudo apt-get install rsync
- 产生SSH key(密钥) 进行后续身份验证
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
- 查看产生的密钥
SSH key 会产生在用户的根目录下,也就是/home/user。
ll ~/.ssh
- 将产生的Key放置到许可证文件中
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
3、下载安装Hadoop
- 终端输入命令:
wget https://archive.apache.org/dist/hadoop/common/hadoop-2.6.4/hadoop-2.6.4.tar.gz
- 解压缩hadoop2.6.4
将hadoop2.6.4文件解压缩到hadoop-2.6.4目录
- 将Hadoop移动到。/usr/local
默认安装路径是/usr/local,将其移动到/usr/local/hadoop
4、设置Hadoop环境变量
- 编辑~/.bashrc
sudo gedit ~/.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
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_COMMOM_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
a
5、Hadoop配置文件的设置
- 设置hadoop-env.sh的配置文件
sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh
将 export JAVA_HOME=${JAVA_HOME}改为
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
- 修改core-site.xml文件
sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
- 设置YARN-site.xml
sudo gedit /usr/local/hadoop/etc/hadoop/yarn-site.xml
输入下面内容:
<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>
- 设置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
# 编辑复制的模板文件
sudo gedit /usr/local/hadoop/etc/hadoop/mapred-site.xml
# 在模板文件输入以下内容
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
- 设置hdfs-site.xml
hdfs-site.xml用于设置HDFS分布式文件系统
sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml
#在文件输入以下内容
<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>
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
#将hadoop目录所有者更改为hduser
sudo chown user:user -R /usr/local/hadoop
- 格式化namenode
hadoop namenode -format
7、启动Hadoop
启动Hadoop两种方式:
分别启动HDFS、YARN,使用start-dfs.sh(启动HDFS)、start-yarn.sh(启动YARN)
同时启动HDFS、YARN,使用start-all.sh
- 启动HDFS
start-dfs.sh
- 启动yarn
start-yarn.sh
- 同时启动HDFS、Yarn
start-all.sh
- 使用jps(Java Virtual Machine Process Status Tool)查看已经启动的进程
终端输入 jps
8、打开Hadoop Web界面
-
打开浏览器输入网址
http://localhost:8088/
-
查看已经运行的Nodes节点
9、NameNode HDFS Web 界面
-
打开浏览器,输入 http://localhost:50070/
-
查看Live Nodes
-
查看DataNodes