官方文档:http://hadoop.apache.org/docs/r3.1.2/hadoop-project-dist/hadoop-common/ClusterSetup.html
准备工作:
1.需要先安装jdk8
2.四台机器ssh相互信任(教程:一会写)
3.关闭防火墙或者四台机器ip都加到白名单
服务器配置(4台):
172.29.1.155(用作NameNode和ResourceManager)
172.29.1.157、172.29.1.218、172.29.1.219(用作DataNode和NodeManager)
hadoop下载:
http://archive.apache.org/dist/hadoop/common/hadoop-3.1.2/hadoop-3.1.2.tar.gz
步骤1 -> 配置机器hosts
vi /etc/hosts
172.29.1.155 host-155
172.29.1.157 host-157
172.29.1.218 host-218
172.29.1.219 host-219
source /etc/hosts
步骤2 -> 解压hadoop
我的hadoop-3.1.2.tar.gz路径在 /home下
cd /home
tar -xzvf hadoop-3.1.2.tar.gz
步骤3 -> 配置hadoop,建议多参照官方文档
配置hadoop-env.sh,添加如下内容(host-155,host-157,host-218,host-219)
[root@localhost home]# vi hadoop-3.1.2/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
export HADOOP_HOME=/home/hadoop-3.1.2
export PATH=$PATH:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native"
export HDFS_NAMENODE_USER="root"
export HDFS_DATANODE_USER="root"
export HDFS_SECONDARYNAMENODE_USER="root"
export YARN_RESOURCEMANAGER_USER="root"
export YARN_NODEMANAGER_USER="root"
如果ssh信任的端口非22,改成如33322的话需要添加配置HADOOP_SSH_OPTS 如下:
export HADOOP_SSH_OPTS="-o BatchMode=yes -o StrictHostKeyChecking=no -o ConnectTimeout=10s -p 33322"
配置yarn-env.sh和mapred-env.sh 添加自己的JAVA_HOME(host-155,host-157,host-218,host-219)
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
配置core-site.sh(host-155,host-157,host-218,host-219)
[root@localhost home]# vi hadoop-3.1.2/etc/hadoop/core-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apac