前言
目前,网络上关于Hadoop安装的资料很多,过程比较详细,各种问题的解决方案基本都能找到,但资料质量参差不齐,随着hadoop版本的更新,有些方法已经不适用。lz初学hadoop,在这里面碰到不少坑,在此对hadoop安装方法进行梳理,既作为自己看的笔记,也希望能与大家交流。安装过程依照Apache官网的安装文档,对安装中遇到的问题,见招拆招。
安装环境
电脑系统:windows 10;虚拟机软件:VMware 11;远程登陆工具:securecrt
虚拟机操作系统:CentOS 7
JDK版本:1.8.0_171;hadoop版本:3.1.0
单节点集群安装
1.1 准备工作
①安装虚拟机
虚拟机的安装参考——在VMware Workstation中安装centos7.0教程。lz的安装设置如图1所示。
②使用远程登陆工具连接到虚拟机
1、打开“Application”—>“Terminal”,输入ifconfig -a 查看虚拟机IP,如下图红框所示。
2、使用SecureCRT连接到CentOS,参考——如何用SecureCrt连接linux系统。之后的所有操作都在SecureCRT中进行。
③软件包准备
1、在系统根目录下新建文件夹resouce存放JDK、Hadoop等安装文件。
mkdir /resource
ls /
[root@localhost ~]# rz
rz waiting to receive.
开始 zmodem 传输。 按 Ctrl+C 取消。
100% 318264 KB 28933 KB/s 00:00:11 0 Errors
100% 186416 KB 31069 KB/s 00:00:06 0 Errors
[root@localhost ~]# mv hadoop-3.1.0.tar.gz /resource/
[root@localhost ~]# mv jdk-8u171-linux-x64.tar.gz /resource/
[root@localhost ~]# ls /resource/
hadoop-3.1.0.tar.gz jdk-8u171-linux-x64.tar.gz
[root@localhost ~]#
1.2 安装JDK
1、检查系统中JDK的版本
java -version
2、查找本地已安装的JDK软件包
[root@localhost lucien]# rpm -qa | grep java
tzdata-java-2018c-1.el7.noarch
python-javapackages-3.4.1-11.el7.noarch
java-1.7.0-openjdk-1.7.0.171-2.6.13.2.el7.x86_64
java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64
java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.2.el7.x86_64
javapackages-tools-3.4.1-11.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64
3、卸载OpenJDK,因为OpenJDK与官网JDK存在存在差异,更换为官网JDK可以避免不必要的麻烦。
[root@localhost lucien]# yum remove *openjdk*
检查是否删除。
root@localhost lucien]# rpm -qa | grep java
tzdata-java-2018c-1.el7.noarch
python-javapackages-3.4.1-11.el7.noarch
javapackages-tools-3.4.1-11.el7.noarch
4、解压jdk到“/usr/lib”文件夹下。
tar -zxvf /resource/jdk-8u171-linux-x64.tar.gz -C /usr/lib
查看结果如下图。
5、设置环境变量
编辑profile文件,vim使用方法参考vim命令。
[root@localhost ~]# vim /etc/profile
在最前面添加如下信息。
export JAVA_HOME=/usr/lib/jdk1.8.0_171
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
6、测试jdk安装是否成功。
注意,如果OpenJDK没有删除,会出现java -version为OpenJDK版本,javac为我们安装的jdk版本的情况,解决办法就是删除OpenJDK。