背景:三台4g+4核+80G的contos7虚拟机:hadoop100,hadoop101,hadoop102
一:服务器免密登录+JDK安装
1.1:服务器免密登录
在三台机器上创建新用户:hadoop:12345678
将hadoop添加到root组:
将用户都切换到hadoop:su hadoop
然后在三台服务器上到执行下列操作:Enter后面按回车键
将hadoop101和hadoop102的id_rsa.pub文件到传输到hadoop100中
将hadoop101和102文件插入authorized_keys中
再将hadoop100的authorized_keys分别传入到hadoop101,hadoop102中,替换掉原本的
对三台机器都进行授权
验证:
1.2:JDK下载和安装
下载地址:
https://www.oracle.com/java/technologies/downloads/#java8
将文件通过xshell输出到hadoop100的/opt/java 目录下并且解压
将解压后文件夹改名为jdk8
配置环境变量:
然后刷新配置并检查是否成功;出现版本号就成功了。
source /etc/profile
java -version
将将jdk8复制到hadoop101,hadoop102
scp -r /opt/java hadoop@hadoop101:/opt
scp -r /opt/java hadoop@hadoop102:/opt
同时在hadoop101和hadoop102上配置环境变量。
二:hadoop集群搭建
hadoop版本:3.2.2
hadoop100:namenode,yarn管理器
hadoop101:datanode
hadoop102:datanode
2.1:基本安装和配置
下载地址:https://hadoop.apache.org/release/3.2.2.html
在hadoop100上创建文件夹/opt/hadoop
将下载后的压缩包通过xshell输出到文件夹下然后解压
进入hadoop3.2.2的etc/hadoop 下
修该框选的四个配置文件
core-site.xml 需要创建对于文件夹
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop100:9000</value>
<description>the default name node address</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop/tmp</value>
</property>
</configuration>
hdfs-site.xml 需要创建对于文件夹
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop/datanode</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
lmapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml
<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop100</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
还需要修改hadoop-env.sh 在末尾添加下列语句,其中hadoop为之前设置的免密用户
export JAVA_HOME=/opt/java/jdk8
export HDFS_NAMENODE_USER=hadoop
export HDFS_DATANODE_USER=hadoop
export HDFS_JOURNALNODE_USER=hadoop
export HDFS_ZKFC_USER=hadoop
export YARN_RESOURCEMANAGER_USER=hadoop
export YARN_NODEMANAGER_USER=hadoop
添加数据服务器,也就是hadoop101,hadoop102
最后就是配置环境变量
到目前为止,hadoop100上的配置已经结束;将hadoop文件夹拷贝到hadoop101,hadoop102上;同时在两台机器上配置环境变量
scp -r /opt/hadoop hadoop@hadoop101:/opt
scp -r /opt/hadoop hadoop@hadoop102:/opt
2.2:集群启动和验证
在hadooop100服务器上执行下列操作:
hdfs namenode -format
cd /opt/hadoop/hadoop3.2.2/sbin
./start-all.sh
jps
出现下列情况则为成功
切换到hadoop101,hadoop102 上执行 jps,出现下列情况为成功
通过浏览器验证:
在浏览器中输入:192.168.10.100:8088