在docker中使用
$ docker pull centos:centos6.7
拉去centos6.7镜像,拉完后直接用 docker create命令创建容器。
很慢?可以用阿里云加速
1. JAVA环境
安装java openjdk 1.8
$ yum install java-1.8.0-openjdk
查看jdk安装位置
$ rpm -ql java-1.8.0-openjdk
我的是在/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-3.b16.el6_9.x86_64
这个位置,而且这个目录下只有一个jre文件夹
1.1 配置JAVA环境变量
建议配到用户环境信息里去
先打开自己的用户环境信息配置文件
$ source ~/.bash_profile
再使用下述命令查看是否配置成功,如果没有输出任何内容,则表示配置有问题
$ echo $JAVA_HOME
二、修改Hadoop的配置文件
1. hadoop-env.sh、yarn-env.sh
初始的hadoop-env.sh文件内容如下,有一行为
...
export JAVA_HOME=${JAVA_HOME}
...
这样是不行的,要修改为绝对路径
...
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-3.b16.el6_9.x86_64
...
而在yarn-env.sh中,export JAVA_HOME
是被注释掉的,所以需要将前面的#号去掉,再写成上面的样子
2. core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml
请根据自己使用的需求,是单机还是分布式进行百度搜索
3. hdfs
因为使用的是openjdk,所以需要将这个文件修改一下,不然会报找不到java程序的错误。
对于hdfs(在bin目录下)脚本,需要修改JAVA变量,来使得它能找到java程序
...
else
# run it
JAVA=$JAVA_HOME/jre/bin/java #指定java程序
exec "$JAVA" -Dproc_$COMMAND $JAVA_HEAP_MAX $HADOOP_OPTS $CLASS "$@"
fi
如果在运行start-all.sh时也报未找到java程序的错误,只需根据错误提示找到相应的脚本,添加上述代码即可。