NN | SNN | DN | |
node0001 | * | ||
node0002 | * | * | |
node0003 | * | ||
node0004 | * |
1、环境检查:
4台机器jdk安装完成
date (检查时间,相差不能超过几秒,主从节点ping不通)
date -s "2020-07-18 23:32:00" (4台机器设置i相同时间)
cat /etc/sysconfig/network (查看4台机器别名是否设置好)
cat /etc/hosts (查看ip/别名映射是否设置好 )
cat /etc/sysconfig/selinux (查询安全机制文件是否关闭 SELINUX=disabled)
检查防火墙是否关闭
2、秘钥分发(主节点)
ll -a (若没有.ssh文件,则ssh localhost 输入密码 exit)
cd .ssh
node0001:scp id_dsa.pub node0002:`pwd`/node0001.pub (发送到node0002的.ssh文件夹)
node0002:cat .ssh/node0001.pub >> .ssh/authorized_keys (公钥追加到认证文件里)
node0001:ssh node0002 (完成免密钥登陆)
重复上面操作,分发到node0003 ode0004
3、备份伪分布式
cp -r hadoop hadoop_pseude (在hadoop里etc下执行,hadoop_pseude 为伪分布式配置,以后需要可以改成hadoop,以切换)
4、修改配置文件(主节点)
vi core-site.xml (换个新文件夹,防止和伪分布式的文件冲突)
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://node0001:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/var/sxt/hadoop/full</value> </property> </configuration>
vi hdfs-site.xml (2给DN 使node0002为SNN)
<configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>node0002:50090</value> </property> </configuration>
vi slaves (从节点配置 node0002 node0003 node0004)
cd /opt
scp -r sxt/ node0002:`pwd`
scp -r sxt/ node0003:`pwd`
scp -r sxt/ node0004:`pwd`
配置node0002-4 hadoop环境变量并scoure
hdfs namenode -format (格式化,只有主节点需要node0001)
5、启动集群
start-dfs.sh (stop-dfs.sh 停集群)
node0001:jps (只有namenode)
node0002:jps (datename和secondarynamenode)
node0003/node0004只有datanode
有问题看日志(/opt/sxt/hadoop-2.6.5/logs)
全分布分配方案:
NNSNNDNNODE06*NODE07**NODE08*NODE09*