Hadoop的完全分布式安装方式

Hadoop的完全分布式安装

首先,确定你的三台云主机为开启状态

  1. 三台云主机关闭防火墙
    service iptables stop(输完命令回车之后如果不出现任何显示表示之前就已经关闭防火墙了,不用担心,继续操作!)
    chkconfig iptables off(永久关闭防火墙)

  2. 三台云主机安装JDK(注意:JDK必须是1.8或者以上)

  3. 关闭三台云主机开启初始化
    service cloud-init-local stop
    service cloud-init stop
    chkconfig cloud-init-local off
    chkconfig cloud-init off

  4. 修改三台云主机的主机名
    vim /etc/sysconfig/network
    修改HOSTNAME属性
    第一台云主机可以改为hadoop01,第二台云主机改为hadoop02,第三台云主机改为hadoop03(主机名可以该你自己想要的名字)
    改完之后保存退出,重新生效
    source /etc/sysconfig/network

  5. 三台云主机进行IP映射
    vim /etc/hosts
    注意,修改完成之后,三台云主机中hosts文件的内容应该一模一样!!!

  6. 三台云主机重启
    reboot

  7. 三台云主机需要相互之间免密
    ssh-keygen
    ssh-copy-id root@hadoop01
    ssh-copy-id root@hadoop02
    ssh-copy-id root@hadoop03
    云主机密码:你自己的云主机密码;
    ssh hadoop01
    如果不需要输入密码,则logout
    ssh hadoop02
    如果不需要输入密码,则logout
    ssh hadoop03
    如果不需要输入密码,则logout

  8. 先将第一台云主机的Hadoop的伪分布式保留下来
    cd /home/software/
    mv hadoop-2.7.1/ hadoop-alone

  9. 三台云主机都进入software目录,下载配置好的Hadoop分布式安装包
    cd /home/software/
    wget http://bj-yzjd.ufile.cn-north-02.ucloud.cn/hadoop-dist.tar.gz

  10. 解压安装包
    tar -xvf hadoop-dist.tar.gz

  11. 修改三台云主机的环境变量
    vim /etc/profile
    在文件末尾添加
    export HADOOP_HOME=/home/software/hadoop-2.7.1
    export PATH= P A T H : PATH: PATH:HADOOP_HOME/bin:$HADOOP_HOME/sbin
    保存退出,重新生效
    source /etc/profile

  12. 三台云主机启动Zookeeper
    cd /home/software/zookeeper-3.4.8/bin
    sh zkServer.sh start
    sh zkServer.sh status

  13. 在第一台云主机格式化Zookeeper,实际上就是在Zookeeper上注册Hadoop节点
    hdfs zkfc -formatZK
    如果出现Successfully created /hadoop-ha/ns in ZK.表示格式化成功

  14. 在三台云主机上启动JournalNode
    hadoop-daemon.sh start journalnode

  15. 在第一台云主机上格式化NameNode
    hadoop namenode -format
    如果出现 Storage directory /home/software/hadoop-2.7.1/tmp/hdfs/name has been successfully formatted.表示格式化成功

  16. 在第一台云主机上启动NameNode
    hadoop-daemon.sh start namenode

  17. 在第二台云主机上格式化NameNode
    hdfs namenode -bootstrapStandby
    如果出现Storage directory /home/software/hadoop-2.7.1/tmp/hdfs/name has been successfully formatted.表示格式化成功

  18. 在第二台云主机上启动NameNode
    hadoop-daemon.sh start namenode

  19. 在三台云主机上启动DataNode
    hadoop-daemon.sh start datanode

  20. 在第一台和第二台云主机上启动FailOverController
    hadoop-daemon.sh start zkfc

  21. 在第三台云主机上启动YARN
    start-yarn.sh

  22. 在第一台云主机上启动ResourceManager
    yarn-daemon.sh start resourcemanager

此时所有的配置安装结束:
通过jps查看
第一个节点会出现8个进程
Jps
NameNode
DataNode
JournalNode
DFSZKFailoverController
ResourceManager
NodeManager
QuorumPeerMain
第二个节点会出现7个进程
Jps
NameNode
DataNode
JournalNode
DFSZKFailoverController
NodeManager
QuorumPeerMain
第三节点会出现6个进程
Jps
DataNode
JournalNode
ResourceManager
NodeManager
QuorumPeerMain

问题解决:
1. Hadoop集群在启动的时候,必须先启动Zookeeper后启动hadoop
2. 如果在上述步骤中,出现Name or Service not Known或者Unknown host,表示IP或者主机名配置错误
3. 如果出现IllegalArgumentException,检查命令是否准确
4. 如果在格式化Zookeeper的时候出现HA is not enable/available,那么表示系统兼容 - 重装云主机系统
5. 如果缺少NameNode/DataNode/JournalNode/DFSZKFailoverController,通过命令hadoop-daemon.sh start namenode/datanode/jounalnode/zkfc。例如hadoop-daemon.sh start datanode
6. 如果缺少了ResourceManager/NodeManager,那么通过yarn-daemon.sh start resourcemanager/nodemanager。例如yarn-daemon.sh start nodemanager
7. 如果在启动过程中出现xxx already running as xxx,但是通过jps又没有发现这个进程,那么通过kill -9 xxx来杀死这个进程,然后重新启动这个进程
8. 如果缺少了QuorumPeerMain,那么说明Zookeeper启动错误
9. 如果出现Command not found,那么表示命令错误或者是环境变量配置错误
10. 如果出现所有命令不生效,那么先从另一台云主机上将profile下载下来,然后上传到有问题的云主机上,替换掉原来的profile,重启云主机

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值