集群规划
10.6.207.20110.6.207.20210.6.207.20310.6.207.204hadoop01hadoop02hadoop03hadoop04NNDNDNDNRMNMNMNM 历史服务器 2NN
所有集群安装配置均在user用户下执行
安装jdk
1)上传jdk至/opt/software
2)解压至/opt/module
tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/
3)配置环境变量
sudo vi /etc/profile.d/my_env.sh
末尾添加
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
4)使配置文件生效
source /etc/profile.d/my_env.sh
5)测试
java -version
安装hadoop
1)上传hadoop至/opt/software
2)解压至/opt/module
tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/
3)配置环境变量
sudo vi /etc/profile.d/my_env.sh
末尾添加
#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
4)使配置文件生效
source /etc/profile.d/my_env.sh
5)测试
hadoop version
hadoop所有配置文件均在hadoop-3.1.3/etc/hadoop下
配置core-site.xml
<!--NameNode地址-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop01:8020</value>
</property>
<!--临时数据存储路径-->
<property>
<name>hadoop.data.dir</name>
<value>/opt/module/hadoop-3.1.3/data</value>
</property>
配置hdfs-site.xml
<!--NameNode的name路径-->
<property>
<name>dfs.namenode.name.dir</name>
<value>file://${hadoop.data.dir}/name</value>
</property>
<!--NameNode的data路径-->
<property>
<name>dfs.datanode.data.dir</name>
<value>file://${hadoop.data.dir}/data</value>
</property>
<!--NameNode的namesecondary路径-->
<property>
<name>dfs.namenode.checkpoint.dir</name>
<value>file://${hadoop.data.dir}/namesecondary</value>
</property>
<!--SecondaryNameNode地址-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop04:9868</value>
</property>
配置yarn-site.xml
<!--yarn如何获取数据-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--ResourceManager路径-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop01</value>
</property>
<!--环境变量-->
<property>
<name>yarn.nodemanager.env-whitelist</name>
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
</property>
<!--开启日志聚集-->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!--日志服务器-->
<property>
<name>yarn.log.server.url</name>
<value>http://hadoop04:19888/jobhistory/logs</value>
</property>
<!--日志保存一星期-->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
配置mapred-site.xml
<!--mapreduce运行在YARN上-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 历史服务器端地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop04:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop04:19888</value>
</property>
配置workers
用于群起集群,前提是NN和RM配好SSH免密登陆。
添加要群起的节点
hadoop01
hadoop02
hadoop03
hadoop04
rsync分发到其他所有节点
启动前格式化NameNode
1)停止所有jps进程
2)删除所有节点hadoop3.1.3目录下的data和logs
3)格式化
hdfs namenode -format
启动集群
1)群起HDFS
start-dfs.sh
2)群起YARN
必须先启动HDFS,必须在RM节点上启动。
start-yarn.sh
3)启动历史服务器
mapred --daemon start historyserver
4)查看是否启动成功
jps
网页端查看HDFS:hadoop01:9870
网页端查看YARN:hadoop01:8088