- 关闭防火墙
[root@moyue01 ~]# systemctl stop firewalld
[root@moyue02 ~]# systemctl stop firewalld
[root@moyue03 ~]# systemctl stop firewalld
- 配置映射关系
[root@moyue01 ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.10.110 moyue01
192.168.10.111 moyue02
192.168.10.112 moyue03
- 免密
[root@moyue01 ~]# ssh-keygen -t rsa
三次回车
[root@moyue01 ~]# cd ~/.ssh
进入~/.ssh目录
[root@moyue01 .ssh]# ssh-copy-id root@moyue01
Are you sure you want to continue connecting (yes/no)? 输入yes
root@moyue01's password: 输入密码
[root@moyue01 .ssh]# ssh moyue01 #对自己免密
[root@moyue01 .ssh]# ssh localhost #对本地免密
[root@moyue01 .ssh]# ssh 0.0.0.0 #对0.0.0.0免密
[root@moyue01 ~]# ssh-copy-id moyue02 #对02免密
[root@moyue02's password: 输入密码
登出
Connection to moyue02 closed.
[root@moyue01 ~]#
同理对三号进行免密
[root@moyue01 ~]# ssh-copy-id moyue03
root@moyue03's password: 输入密码
验证
[root@moyue01 ~]# ssh moyue03
Last login: Tue Nov 23 19:59:59 2021 from 192.168.10.133
[root@moyue03 ~]#
[root@moyue01 ~]# ssh moyue02
Last login: Tue Nov 23 19:56:50 2021 from 192.168.10.133
[root@moyue02 ~]#
- 时间同步
[root@moyue01 ~]# date #查看当前时间
2021年 11月 23日 星期二 20:14:41 CST
[root@moyue01 hadoop]# yum install -y ntp
[root@moyue01 hadoop]# crontab -e
0 * * * * /usr/sbin/ntpdate -u time.windows.com
- jdk和Hadoop安装解压配置环境变量
[root@moyue01 soft]# tar -zxvf jdk-8u221-linux-x64.tar.gz -C /usr/local/
[root@moyue01 soft]# tar -zxvf hadoop-2.7.6.tar.gz -C /usr/local/
[root@moyue01 local]# mv 1.8.0_221/ jdk
[root@moyue01 local]# mv hadoop-2.7.6/ hadoop
[root@moyue01 local]# vi /etc/profile
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
#hadoop environment
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
- 配置文件
配置core-site.xml
[root@moyue01 ~]# cd $HADOOP_HOME/etc/hadoop
[root@moyue01 hadoop]# vi core-site.xml
<configuration>
<!-- hdfs的地址名称:schame,ip,port-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://moyue01:8020</value>
</property>
<!-- hdfs的基础路径,被其他属性所依赖的⼀个基础路径 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
配置hdfs-site.xml
[root@moyue01 hadoop]# pwd
/usr/local/hadoop/etc/hadoop
[root@moyue01 hadoop]# vi hdfs-site.xml
<configuration>
<!-- namenode守护进程管理的元数据⽂件fsimage存储的位置-->
<property>
<name>dfs.namenode.name.dir</name>
<value>file://${hadoop.tmp.dir}/dfs/name</value>
</property>
<!-- 确定DFS数据节点应该将其块存储在本地⽂件系统的何处-->
<property>
<name>dfs.datanode.data.dir</name>
<value>file://${hadoop.tmp.dir}/dfs/data</value>
</property>
<!-- 块的副本数-->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!-- 块的⼤⼩(128M),下⾯的单位是字节-->
<property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property>
<!-- secondarynamenode守护进程的http地址:主机名和端⼝号。参考
守护进程布局-->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!-- 块的⼤⼩(128M),下⾯的单位是字节-->
<property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property>
<!-- secondarynamenode守护进程的http地址:主机名和端⼝号。参考
守护进程布局-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>moyue02:50090</value>
</property>
<!-- namenode守护进程的http地址:主机名和端⼝号。参考守护进程布
局-->
<property>
<name>dfs.namenode.http-address</name>
<value>moyue01:50070</value>
</property>
</configuration>
配置mapred-site.xml
[root@moyue01 hadoop]# pwd
/usr/local/hadoop/etc/hadoop
[root@moyue01 hadoop]# cp mapred-site.xml.template mapred-site.xml
[root@moyue01 hadoop]# vim mapred-site.xml
<configuration>
<!-- 指定mapreduce使⽤yarn资源管理器-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 配置作业历史服务器的地址-->
<property>
<name>mapreduce.jobhistory.address</name>
<value>moyue01:10020</value>
</property>
<!-- 配置作业历史服务器的http地址-->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>moyue01:19888</value>
</property>
</configuration>
配置yarn-site.xml
[root@moyue01 hadoop]# vi yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 指定resourcemanager的主机名-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>moyue01</value>
</property>
<!--下⾯的可选-->
<!--指定shuffle对应的类 -->
<property>
<name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<!--配置resourcemanager的内部通讯地址-->
<property>
<name>yarn.resourcemanager.address</name>
<value>moyue01:8032</value>
</property>
<!--配置resourcemanager的scheduler的内部通讯地址-->
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>moyue01:8030</value>
</property>
<!--配置resoucemanager的资源调度的内部通讯地址-->
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>moyue01:8031</value>
</property>
<!--配置resourcemanager的管理员的内部通讯地址-->
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>moyue01:8033</value>
</property>
<!--配置resourcemanager的web ui 的监控⻚⾯-->
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>moyue01:8088</value>
</property>
</configuration>
hadoop-env.sh
[root@moyue01 hadoop]# vi hadoop-env.sh
# The java implementation to use.
export JAVA_HOME=/usr/local/jdk
配置slaves
[root@moyue01 hadoop]# vi slaves
moyue01
moyue02
moyue03
配置yarn-env.sh
[root@moyue01 hadoop]# vim yarn-env.sh
# some Java parameters
export JAVA_HOME=/usr/local/jdk
if [ "$JAVA_HOME" != "" ]; then
#echo "run java in $JAVA_HOME"
JAVA_HOME=$JAVA_HOME
fi
同步
[root@moyue01 local]# pwd
/usr/local
同步hadoop
[root@moyue01 local]# scp -r ./hadoop moyue02:/usr/local/
[root@moyue01 local]# scp -r ./hadoop moyue03:/usr/local/
同步jdk
[root@moyue01 local]# scp -r ./jdk moyue02:/usr/local/
[root@moyue01 local]# scp -r ./jdk moyue03:/usr/local/
同步/etc/profile
[root@moyue01 local]# scp /etc/profile moyue02:/etc/profile
[root@moyue01 local]# scp /etc/profile moyue03:/etc/profile
同步/etc/hosts
[root@moyue01 local]# scp /etc/hosts moyue02:/etc/hosts
[root@moyue01 local]# scp /etc/hosts moyue03:/etc/hosts
配置生效
[root@moyue01 ~]# source /etc/profile
[root@moyue02 ~]# source /etc/profile
[root@moyue03 ~]# source /etc/profile
格式化
[root@moyue01 hadoop]# hdfs namenode -format
启动关闭基本操作
[root@moyue01 hadoop]# start-dfs.sh #启动集群
[root@moyue01 hadoop]# start-yarn.sh #启动yarn
[root@moyue01 hadoop]# start-dfs.sh #启动集群和yarn
[root@moyue01 hadoop]# stop-dfs.sh #关闭集群
[root@moyue01 hadoop]# stop-yarn.sh #关闭yarn
[root@moyue01 hadoop]# stop-dfs.sh #关闭集群和yarn
jps
[root@moyue01 hadoop]# jps
10613 DataNode
11717 Jps
11096 ResourceManager
11225 NodeManager
10396 NameNode