hadoop集群完全分布式安装(亲测有效)

网上相关教程良莠不齐,本人小白吐血力作,希望对您有帮助。

hadoop集群完全分布式安装(亲测有效)_第1张图片
谁说大象不能跳舞?!


centos6.7+hadoop2.6.4+jdk1.7.0_45+vmware

1、centos虚拟环境配置:

<1>先将虚拟机的网络模式选为NAT;

<2>vmware下安装centos6.7,选择“稍后安装操作系统”,此时记住选择网络模式为NAT8;

<3>安装成功后,修改主机名:

      vi /etc/sysconfig/network:

      NETWORKING=yes

      HOSTNAME=自定义主机名    

<4>修改IP

      两种方式:

                第一种:通过Linux图形界面进行修改:

                第二种:修改配置文件方式:

                vim /etc/sysconfig/network-scripts/ifcfg-eth0

                修改:BOOTPROTO=static

                添加:IPADDR=192.168.137.101          

                           NETMASK=255.255.255.0          

                           GATEWAY=192.168.137.2            

注意:虚拟机ip地址、网关等配置(可联网):

          a>将本地以太网与vmware NAT8共享,此时电脑会自动分配一个ip地址,例如您电脑共享后分配的ip地址是192.168.137.1,子网掩码是255.255.255.0;

          b>在vmware中将NAT模式设置如图1-1(一般设置子网IP和共享的NAT8的IP地址在同一个网段,然后vmware会自动分配网关IP):

hadoop集群完全分布式安装(亲测有效)_第2张图片
图1-1

           c>虚拟机ip地址应和vmware的子网IP在同一个网段,并且不和本地共享的ip相同。虚拟机的网关和DNS与vmware的网关地址相同。

<5>修改主机名和IP的映射关系

      vim /etc/hosts

                  192.168.137.101 master

                  192.168.137.102 slaveone

                  192.168.137.103 slavetwo

<6>关闭防火墙

      #查看防火墙状态

      service iptables status

      #关闭防火墙

      service iptables stop

      #关闭防火墙开机启动

      chkconfig iptables off

      #查看防火墙开机启动状态

      chkconfig iptables --list

<7>添加用户,例如hadoop用户,修改sudo权限:

      添加用户:useradd:hadoop    passwd:xxxx

      修改sudo权限:vim /etc/sudoers

                               ## Allow root to run any commands anywhere

                              root    ALL=(ALL)      ALL

                              hadoop    ALL=(ALL)      ALL

<8>可选:关闭linux服务器的图形界面:

                 vi /etc/inittab      

<10>配置ssh无密钥登陆

       a>进入到我的home目录,cd .ssh目录下

       b>ssh-keygen -t rsa (四个回车):

          执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)

      c>将公钥拷贝到要免密登陆的目标机器上:

          例如,在.ssh目录下:scp id_rsa.pub 主机名或地址:/home/hadoop

      d>在目标机器下追加公钥:

             在.ssh目录下创建authorized_keys文件:touch  authorized_keys

             在.ssh目录下修改authorized_keys的权限:chmod 600 authorized_keys

             在.ssh目录下执行:cat id_rsa.pub >> authorized_keys

<9>重启Linux:reboot

<9>子节点做以上重复操作

2、一般情况下,我们都要将linux自带的OPENJDK卸载掉,然后安装SUN的JDK;

 1)首先:查看Linux自带的JDK是否已安装:

     <1># java -version:查看自带版本

    <2># rpm -qa|grep java:查看jdk的信息

     一般将获得如下信息:java-1.4.2-gcj-compat-1.4.2.0-40jpp.115          

                                         java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

     <3># yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115        // 卸载

              yum -y remove  java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

3、安装SUN的JDK,配置环境变量(vim /etc/proflie),执行(source /etc/profile),最后测试java是否安装成功,子节点远程copy主节点jdk到相应目录下;

4、安装hadoop2.6.4,配置环境变量(vim /etc/proflie),执行(source /etc/profile),最后测试hadoop是否安装成功;

      3,4配置好后的profile如下:

          export JAVA_HOME=/usr/local/jdk1.7.0_45

          export HADOOP_HOME=/home/hadoop/apps/hadoop-2.6.4

          export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

5、配置集群/分布式环境

首先创建三个目录:/home/hadoop/apps/hadoop-2.6.4/data/tmp

                                /home/hadoop/apps/hadoop-2.6.4/data/data

                                /home/hadoop/apps/hadoop-2.6.4/data/name

并修改data和data目录下的data tmp name四个目录的权限为777

在hadoop目录下:

    <1>hadoop-env.sh

hadoop-env.sh

    <2>core-site.xml

hadoop集群完全分布式安装(亲测有效)_第3张图片
    core-site.xml

    <3>hdfs-site.xml

hadoop集群完全分布式安装(亲测有效)_第4张图片
   hdfs-site.xml

    <4>mapred-site.xml (mv mapred-site.xml.template mapred-site.xml)

hadoop集群完全分布式安装(亲测有效)_第5张图片
mapred-site.xml

   <5>yarn-site.xml

hadoop集群完全分布式安装(亲测有效)_第6张图片
yarn-site.xml

   <6>修改/home/hadoop/app/hadoop-2.5.2/etc/hadoop下得slaves文件:

      vi slaves

      添加子节点主机名,例如slaveone,slavetwo

    <7>子节点远程copy主节点hadoop到相应目录下,并做好配置环境变量(vim /etc/proflie)和执行(source /etc/profile)生效。

6、启动hadoop集群环境

     <1>格式化hdfs:hadoop namenode -format

     <2>start-all.sh

    <3>检查节点jps是否生效

主节点jps进程:

主节点jps

子节点jps进程:


子节点jps

你可能感兴趣的:(hadoop集群完全分布式安装(亲测有效))