准备工作
三台虚拟机,关闭防火墙,关闭selinux
查看防火状态 systemctl status firewalld
暂时关闭防火墙 systemctl stop firewalld
永久关闭防火墙 systemctl disable firewalld
查看 selinux状态 getenforce
暂时关闭 selinux setenforce 0
永久关闭 selinux 在/etc/selinux/config文件中将SELINUX改为disabled
修改主机名称
三台主机
hostnamectl set-hostname masterhostnamectl set-hostname slave1hostnamectl set-hostname slave2
使用bash命令刷新生效
在/etc/hosts文件中添加ip映射
IP+主机名称
根据自己需求修改,这里给出模板
配置ssh免密登录
ssh-keygten -t rsa #生成密钥ssh-copy-id master #分发给其他节点,分发给自己主要是为了之后群集集群不需要输入密码ssh-copy-id slave1ssh-copy-id slave2
安装JAVA和HADOOP
解压JAVA
解压HADOOP
修改名称为jdk与hadoop
配置环境变量
刷新环境变量,使生效
source /etc/profile
使用javac 与hadoop verison验证是否安装成功
配置hadoop文件
core-site.xml文件
fs.defaultFS
hdfs://hadoop:9000
hadoop.tmp.dir
/usr/local/src/hadoop-2.7.2/data/tmp
hdfs-site.xml
dfs.replication
1
dfs.namenode.name.dir
file:/home/hadoop/hadoop-2.6.0/hdfs/name
true
dfs.datanode.data.dir
file:/home/hadoop/hadoop-2.6.0/hdfs/data
true
dfs.namenode.secondary.http-address
master:9001
dfs.webhdfs.enabled
true
dfs.permissions
false
yarn.site.xml
yarn.resourcemanager.address
master:18040
yarn.resourcemanager.scheduler.address
master:18030
yarn.resourcemanager.webapp.address
master:18088
yarn.resourcemanager.resource-tracker.address
master:18025
yarn.resourcemanager.admin.address
master:18141
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.auxservices.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
mapred-site.xml
mapreduce.framework.name
yarn
在hadoop-env.sh yarn-env.sh mapred-env.sh中配置java环境
这里给出hadoop-env.sh 其他相同
配置slave
写入三台主机的主机名
将配置好的hadoop分发给其他主机
[root@master ~]# scp -r /usr/local/src/hadoop/ root@slave1:/usr/local/src/[root@master ~]# scp -r /usr/local/src/hadoop/ root@slave2:/usr/local/src/
格式化namenode
hdfs namenode -format
启动dfs
start-dfs.sh
启动yarn
start-yarn.sh
使用jps查看
master节点:ResourceManager,DataNode,SecondaryNameNode,NameNode,NodeManager
slave1节点与slave2节点:NodeManager,DataNode
集群全部启动则为启动成功
进入web页面验证
namenode web页面 = IP+50070
yarn web页面 =IP 8088