Hadoop安装教程
本教程以 CentOS6.x 系统为主要演示环境,但对 Ubuntu/CentOS 的不同配置之处、CentOS 6.x 与 CentOS 7 的操作区别等都会尽量给出注明。
0:准备工作
实验环境:三台服务器(一台Master,两台Slave)
os:CentOS6.x
jdk:jdk1.8.0_231
hadoop:hadoop2.9
1:创建hadoop用户
如果你安装 CentOS 的时候不是用的 “hadoop” 用户,那么需要增加一个名为 hadoop 的用户。首先点击左上角的 “应用程序” -> “系统工具” -> “终端”,首先在终端中输入 su
,按回车,输入 root 密码以 root 用户登录,接着执行命令创建新用户 hadoop:
可为 hadoop 用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题,执行:
如下图,找到 root ALL=(ALL) ALL
这行(应该在第98行,可以先按一下键盘上的 ESC
键,然后输入 :98
(按一下冒号,接着输入98,再按回车键),可以直接跳到第98行 ),然后在这行下面增加一行内容:hadoop ALL=(ALL) ALL
(当中的间隔为tab),如下图所示:
为hadoop增加sudo权限
添加上一行内容后,先按一下键盘上的 ESC
键,然后输入 :wq
(输入冒号还有wq,这是vi/vim编辑器的保存方法),再按回车键保存退出就可以了。
最后注销当前用户(点击屏幕右上角的用户名,选择退出->注销),在登陆界面使用刚创建的 hadoop 用户进行登陆。(如果已经是 hadoop 用户,且在终端中使用 su
登录了 root 用户,那么需要执行 exit
退出 root 用户状态)
2.安装SSH、配置SSH无密码登陆
集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上面运行命令),一般情况下,CentOS 默认已安装了 SSH client、SSH server,打开终端执行如下命令进行检验:
如果返回的结果如下图所示,包含了 SSH client 跟 SSH server,则不需要再安装。
检查是否安装了SSH
若需要安装,则可以通过 yum 进行安装(安装过程中会让你输入 [y/N],输入 y 即可):
接着执行如下命令测试一下 SSH 是否可用:
此时会有如下提示(SSH首次登陆提示),输入 yes 。然后按提示输入密码 hadoop,这样就登陆到本机了。
测试SSH是否可用
但这样登陆是需要每次输入密码的,我们需要配置成SSH无密码登陆比较方便。
首先输入 exit
退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-keygen 生成密钥,并将密钥加入到授权中:
此时再用 ssh localhost
命令,无需输入密码就可以直接登陆了,如下图所示。
SSH无密码登录
3.安装Java环境
Java 环境可选择 Oracle 的 JDK,或是 OpenJDK,现在一般 Linux 系统默认安装的基本是 OpenJDK,如 CentOS 6.4 就默认安装了 OpenJDK 1.8。按 http://wiki.apache.org/hadoop/HadoopJavaVersions 中说的,Hadoop 在 OpenJDK 1.8下运行是没问题的。需要注意的是,CentOS 6.4 中默认安装的只是 Java JRE,而不是 JDK,为了开发方便,我们自己下载了安装包jdk1.8.0,然后因为是远程连接服务器,需要上传给服务器,这里推荐xftp传输
传输过程中可能会遇到传输失败的问题,原因可能因为服务器文件的读写权限。比如我要把文件传到/usr/local,那就需要在root下修改一下权限:chmod 777 /usr/local
接着需要配置一下 JAVA_HOME 环境变量,为方便,我们在 ~/.bashrc 中进行设置(扩展阅读: 设置Linux环境变量的方法和区别):
在文件最后面添加如下单独一行(指向 JDK 的安装位置),并保存:
接着还需要让该环境变量生效,执行如下代码:
设置好后我们来检验一下是否设置正确:
如果设置正确的话,$JAVA_HOME/bin/java -version
会输出 java 的版本信息,且和 java -version
的输出结果一样,如下图所示:
成功设置JAVA_HOME环境变量
这样,Hadoop 所需的 Java 运行环境就安装好了。
4.安装hadoop2
Hadoop 2 可以通过 http://mirror.bit.edu.cn/apache/hadoop/common/ 或者 http://mirrors.cnnic.cn/apache/hadoop/common/ 下载。将下载好的hadoop安装包通过xftp传送到/usr/local文件夹下。
Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:
5.hadoop完全分布式集群安装
此步骤参考厦门大学数据库实验室的安装教程。
6.写在最后(安装过程中遇到的一些问题)