• hadoop集群安装


    1hadoop分布式安装

    hadoop完全分布式安装:3个及以上的实体机或者虚拟机组件的机群。

    目标:

      分布结构 主节点(1个,是hadoop0):NameNode、JobTracker、SecondaryNameNode
                       从节点(2个,是hadoop1、hadoop2):DataNode、TaskTracker

    1.1建立三台虚拟机

      虚拟机在开启完,然后关机后再复制;

      点击虚拟机,然后右击鼠标,点击管理-->克隆-->...>选择完整克隆(这台虚拟机是独立的);(内存不够,可以修改内存,这里修改为400MB)

      CentOS、CentOS1、CentOS2

      

    1.2先配置第一台CentOS(参考hadoop的伪分布式安装)

      ip地址修改:CentOS1,192.168.80.101;CentOS2,192.168.80.102

      执行命令:service network restart(如果出现错误,那么删除修改的网络,重新启动虚拟机,然后重新修改ip)

    1.3修改CentOS1和CentOS2的主机名为hadoop1和hadoop2

      执行命令:vi /etc/sysconfig/network

      为了使主机名生效,重启虚拟机,执行命令:reboot -h now

    1.4在hadoop1和hadoop2上删除.ssh文件、local下的文件、profile下的文件(删除克隆虚拟机hadoop0改过的文件,即将配置时增加的内容删除)

      执行命令:

    cd /root/.ssh
    
    ls
    
    rm -rf *
    cd /usr/local/
    
    ls
    
    rm -rf *
    
    vi /etc/profile

      或者

    rm -rf /root/.ssh/*
    rm -rf /usr/local/*
    vi /etc/profile

    1.5在hadoop1和hadoop2上设置ssh免密码登录

      先对hadoop1处理:

      执行命令:ssh-keygen -t rsa

      创建文件:

      执行命令:cd /root/.ssh/

                   cat id_rsa.pub>>authorized_keys

                   ssh localhost

                   exit

                   ssh hadoop1(不能解析)

                   vi /etc/hosts(ip与主机名映射,192.168.80.101 hadoop1)

                   ssh hadoop1

      hadoop2同上述命令。

    1.6主机hadoop0,hadoop1,hadoop2之间可以互相ping,即互相访问。

      (1)要求:ip与主机名映射。

      执行命令:vi /etc/hosts(在hadoop0,hadoop1,hadoop2上都添加对应缺少的ip,192.168.80.100;192.168.80.101;192.168.80.102)

      (2)或者:

      改好一台虚拟机hadoop0,然后运用复制,将hadoop0上的地址信息复制到hadoop1和hadoop2上。

      要求:主机hadoop0,hadoop1,hadoop2相互之间可以免密码登录。(将hadoop0的公钥复制到hadoop1和hadoop2,同样的道理,也就是说三台主机各自都需要3个公钥)

      执行命令:(在cd /root/.ssh/文件下,输入ls,查看公钥)(将hadoop0的公钥复制到hadoop1)

                   ssh-copy-id -i hadoop1(在hadoop0上输入)

                   ls(查看.ssh文件下的公钥,在hadoop1上输入)

                   more authorized_keys(在hadoop1上查看是否复制过来)

      同理其它的复制。

      如果想要将hadoop1的公钥(已经配置好)全部复制到hadoop0的公钥上(缺hadoop1和hadoop2),那么:

      执行命令:scp /root/.ssh/authorized_keys  hadoop0:/root/.ssh/

      执行命令:ssh hadoop1(在hadoop0上输入,两两之间都可以互相免密码登录)

    1.7将配置好的hadoop0上的hadoop和jdk复制到hadoop1和haoop2上。

      在复制之前先要删除hadoop0上的hadoop文件下的logs(存放的日志文件)和tmp(存放的数据文件和namenode文件)

      执行命令:rm -rf logs/

                   rm -rf tmp/

      开始复制

      执行命令:scp -r jdk  hadoop1:/usr/local/(在hadoop0的/usr/local)

                     scp -r jdk  hadoop2:/usr/local/

           scp -r hadoop  hadoop1:/usr/local/

                     scp -r hadoop  hadoop2:/usr/local/

    1.8将配置好的hadoop0上的/etc/profile复制到hadoop1和hadoop2上

      执行命令:scp /etc/profile  hadoop1:/etc/

                       scp /etc/profile  hadoop2:/etc/

      然后执行命令:

                      source /etc/profile(在hadoop1上输入)

                      source /etc/profile(在hadoop2上输入)

    1.9确定主节点和从节点,编辑hadoop0的配置文件

      执行命令:cd hadoop/conf/(在hadoop0上)

                     vi slaves(去掉localhost,添加hadoop1,hadoop2)

    1.10启动

      执行命令:hadoop namenode -format(在hadoop0上输入,但是经常出现未找到命令,在hadoop文件下的bin下可以运行

                   start-all.sh

    1.11在Windows的浏览器中查看

      首先在C:WindowsSystem32driversetc的host文件进行修改,添加以下内容:

        192.168.80.100 hadoop0

        192.168.80.101 hadoop1

        192.168.90.102 hadoop2

      在浏览器中输入hadoop0:50030或者hadoop0:50070

    1.12(可选)将namenode移到hadoop1上,因为namenode很费内存。

      先停止运行:stop-all.sh

      然后执行命令:vi masters(去掉localhost,添加hadoop1)

      重新启动start-all.sh,就可以看到hadoop1上的任务(命令jps)

    2动态的增加一个hadoop节点

    2.1配置新节点的环境(像配置hadoop1和hadoop2一样)

    2.2把新节点的hostname配置到主节点的slaves文件中

    2.3在新节点,启动进程

        hadoop-daemon.sh start datanode

        hadoop-daemon.sh start tasktracker

    2.4在主节点执行脚本hadoop dfsadmin -refreshNodes

    3动态的下架一个hadoop节点

      比如关闭hadoop0上的namenode节点

      执行命令:kill -9 4549(在hadoop0上)

      在浏览器上hadoop0:50070上查看变化。

                   

                   

     

  • 相关阅读:
    Chapter 2: 随机变量
    数据集
    Chapter 1: 随机事件及其概率
    概率论与数理统计每周教学内容及作业
    概率论与数理统计教学内容
    Entity Framework search sequnce
    Runtime Complexity of .NET Generic Collection
    update the UI property cross thread
    打通技术的任督二脉
    windbg symbol path
  • 原文地址:https://www.cnblogs.com/chamie/p/4731966.html
Copyright © 2020-2023  润新知