系统为CentOS 6.9,Hadoop版本2.8.3,虚拟机VMware Workstation
主要介绍Linux虚拟机安装、环境配置和Hadoop本地模式的安装。伪分布式和Windows下的安装将另作补充。
网络上关于Hadoop安装的教程非常多,这里主要是归纳出安装过程的简要步骤和可能碰到的问题。
Linux环境安装
NAT
- 取消DHCP服务;
- 设置子网网段,例如我自己用的是默认的192.168.126网段,之后各虚拟机IP就设为该网段;
- 在NAT设置中修改DNS地址,指定为自己所处网络的DNS,网关地址默认为当前网段的.2地址。
Linux
在VMware上安装Linux并不困难,所以跳过虚拟机设置,直接列出安装过程中可能碰到的几个问题。
-
我所安装的CentOS 6.9在安装开始时会出现media test界面。可能因为用的不是光盘,所以选择OK会出错;
-
期间会碰到两次关于存储空间,可以直接选择全部忽略和全部占用;
-
最后一步,Desktop
设置网络
由于之前关闭了DHCP自动分配IP的功能,所以需要自己进行网络参数的设置。
- 右键网络,修改IPV4设置,地址只要是126就行;
- 修改完成后,点击网络的eth0,就能成功连接了,这时可以ping它一ping。
HOST
- 修改hostname以便识别,打开/etc/sysconfig/network,添加hostname(要先加NETWORKING=yes);
- 打开/etc/hosts,添加IP地址和新设置的hostname。
其他环境设置
由于是为了学习,其实可以直接把Linux的防火墙和selinux关掉。
- 防火墙:chkconfig iptables off
- selinux:/etc/sysconfig/selinux,disabled一下
Java环境配置
-
CentOS一般自带OpenJDK,最好还是用Oracle的JDK,OpenJDK卸掉卸掉(这个或许我会多写一篇);
-
安装:
官网下载想要的版本(确认可与所用的Hadoop向配),然后选个目录解压(操作系统课自行学习) -
设置环境变量:
很多教程会写到要添加classpath,但经我个人测试是不需要的,而且翻了Oracle的说明也没讲到Linux要配置这个。
不过,有看到一些人说没添加会在一些情况下出错,所以。。等出错了就知道了。但windows下的确是不需要的。
具体步骤为:修改配置文件/etc/profile,加上
export JAVA _ HOME="JDK地址"
export PATH=$JAVA_HOME/bin:$PATH
然后执行source /etc/profile
Hadoop本地模式安装
下载hadoop无需任何设置,默认就为本地模式。
- 下载所需版本的hadoop,解压;
- 确认JAVA_HOME环境变量配置正确:echo;
- 可以试着运行一个测试文件:
#test.input
hadoop mapreduce hive
hbase spark storm
sqoop hadoop hive
spark hadoop
然后输入
bin中hadoop的目录 jar share/hadoop/mapreduce/hadoop-mapreduce-examples-x.x.x.jar wordcount 输入文件目录 输出文件名
在job ID中看到local字样即为本地模式
在输出文件中看到SUCCESS字样即为运行成功
以上只是本地模式的安装,因而相当简略,伪分布式、完全分布和HA安装要麻烦得多,许多细节会在之后再详细描述。