03.Haoop 全分布式搭建步骤

在搭建的过程中一定要记得做一些快照,这样方便回滚。否则搭建错的时候就要从来来过,特别麻烦!

我主要用  1台windows电脑(设置3个虚拟机,即3个节点)   2台阿里云服务器(2个节点)

1.网络设置问题

    Windows 上 VMWARE + CENTOS 7 使用 Bridge 桥接的方式 设置网络。

    可参考上一篇 02.Haoop 虚拟机 桥接与NAT之间区别 及桥接设置  。

    简单回顾一下,设置的几个命令

     1)设置 ip 地址等

          vi  /etc/sysconfig/network-scripts/ifcfg-ens33

          也可能是 ifcfg-eth0, 不放心的话可以 到 network-scripts 里面去看一下,一般是第一个文件

      03.Haoop 全分布式搭建步骤

     2) 设置 网络的名称 hostname,这样相互 ping 就可以用名称来 ping

            vi  /etc/sysconfig/network

            注意取名字的时候最好不要有 " _ ", 比如 node_01 ,最好取成 node01 否则可能 Hadoop  运行不起来

           GATEWAY 的话可写可不写,这里我把最后2位 隐去了。

            03.Haoop 全分布式搭建步骤

     3 )要让 每个节点(虚拟机)都知道其他节点的名称

            vi  /etc/hosts  把每个节点的 IP地址 和 名称 追加在后面。

            在 ::1 这里输入 o (欧),就可以直接换行插入。

            03.Haoop 全分布式搭建步骤

4)设置完之后需要启动一下。

      service network restart 

      也建议 poweroff 一下,再重新开启,因为这样 hostname 就会变换

       最后打开之后 互相ping 一下,以及看一下 hostname 节点的名字是否已经变成自己设置的了。

       我用xshell, 打开了 检查了几个地方用红色标出来了。

      a. 名字是否已经变为nodewind04 

      b.ping  www.baidu.com  是否可以连通百度

      c. ping nodewind05 是否可以连通 其他节点,并且用其他节点的名字来ping 通

      d. 阿里云的服务器也顺便检查了一下是否可以ping 通

      03.Haoop 全分布式搭建步骤

5) 检查是否关闭防火墙

    a. 关闭防火墙 sevice iptables stop  

    b.设置开机不启动防火墙 chkconfig iptables off

6)检查是否关闭安全模式

    vi  /etc/selinux/config  设置 SELINUX=disabled

03.Haoop 全分布式搭建步骤

 到这里网络设置就基本做完了,记得每个节点都需要把这些网络设置都完成。记得定期的做一下快照!

 

2. ssh 设置免密登入

     免密登入主要是 Hadoop Namenode 可以无需密码访问各个节点。

     在这里我选择了 Hadoop官网的 id_rsa.pub 的**。

     1) ssh localhost  先用 ssh 进入 localhost 此时需要密码,用 ll -a 就可以看到隐藏文件 .ssh 文件

     2)  需要在 ssh 中生存公钥,以及 把 公钥放入 authorized_keys 中,

         a.ssh localhost   进入 ssh

         b.ssh-****** -t rsa -P '' -f ~/.ssh/id_rsa   生存公钥

         c.cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys   把公钥追加到 authorized_keys 中去

         d.chmod 0600 ~/.ssh/authorized_keys     如果权限有问题,需要修改权限。如果没有问题可以不用这句

         e. exit  退出,再试一次 ssh localhost 是否可以免密进入

         f. 把 Namenode 的公钥分发给 其他的节点,

            在cd .ssh 目录下 scp id_rsa.pub nodewind05:`pwd`/nodewind04.pub     

            注意 nodewind04,nodewind05 都要先登入 ssh localhost,然后再输入scp 命令!!!

            即把nodewind04 上的 id_rsa 公钥 发送到 nodewind05 上,并且改名为 nodewind04.pub

         g. 在 nodewind05 上检查一下是否有 nodewind04.pub 文件,也需要追加一下 authorized_keys

              cat nodewind04.pub >> authorized_keys

         h. 在nodewind04 节点上,exit 退出localhost之后,ssh nodewind05

         图片版说明:

     03.Haoop 全分布式搭建步骤

  •    ssh localhost 
  •    ll -a
  •    a,b 的指令,生成公钥:ssh-****** -t rsa -P '' -f ~/.ssh/id_rsa

    03.Haoop 全分布式搭建步骤

  •     c 的指令,追加到 authorized_keys 中 :cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

   03.Haoop 全分布式搭建步骤

  •    指令 cd .ssh 里查看 是否 公钥和文件是否已经生成

    03.Haoop 全分布式搭建步骤

  •  发送 nodewind04 的公钥 到 nodewind05:
  • nodewind04 和 nodewind05 都先 ssh localhost , 进入 cd .ssh
  • 在 nodewind04 中发送公钥  scp id_rsa.pub nodewind05:`pwd`/nodewind04.pub     
  • 在 nodewind05 中查看 是否有 nodewind04.pub   
  • 在 nodewind05 中, 把公钥追同样也追加到 authorized_keys中去:cat nodewind04.pub >> authorized_keys

03.Haoop 全分布式搭建步骤

03.Haoop 全分布式搭建步骤

  •   在 nodewind04节点 ,先退出nodewind04,再登入 ssh nodewind05 ,此时应该是免密登入。

  03.Haoop 全分布式搭建步骤

  • 最后每个 节点都需要用 做免密登入

 

3. 每个节点需要统一时间

       在每个节点上设置

       1)sudo  yum install ntp

       2) systemctl enable ntpd:

       3) 修改启动参数,允许ntp服务在系统时间误差较大时也能正常工作

             vi /etc/sysconfig/ntpd   设置 OPTIONS= "-g -x"

       4)重新启动服务

            service ntpd restart

       5)将系统时间改为上海时间

            ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

       6)查看时间  date

       03.Haoop 全分布式搭建步骤

4. xshell 上传文件的设置

       在每个节点上设置

       1) yum -y install lrzsz

       2) rpm -qa lrzsz

       3) 使用 rz  -y 命令上传文件,自动跳出上传窗口

       4) 创建目录 mkdir software  (自定义的名称)以后的压缩包就放在这个里面

      03.Haoop 全分布式搭建步骤

 

       5) 官网下载  hadoop-2.7.6.tar.gz  和  jdk-8u211-linux-x64.tar.gz  并使用 rz  -y 命令上传