hadoop2.0初识1.3

1.配置分布式hadoop

  1.1 准备三台测试机(虚拟机就可以)

    1.1.1 将life-hadoop虚拟机克隆2个分别为life-hadoop02和life-hadoop03

    1.1.2 查看ip地址,并进行主机名映射为life-hadoop02.life.com和life-hadoop03.life.com

        

        

        

        修改三台机器的/etc/hosts文件

          

        在C:\windows\System32\drivers\etc\hosts文件添加以下内容

          192.168.0.58    life-hadoop.life.com        life-hadoop
          192.168.0.187    life-hadoop02.life.com        life-hadoop02
          192.168.0.161    life-hadoop03.life.com        life-hadoop03

    1.1.3 修改网络连接

        1.1.3.1 删除 /etc/udev/rules.d/70-persistent-net.rules文件中eth0的配置,将eth1修改为eth0,并复制eth1中的ATTR{address}所对应的值

            

        1.1.3.2 编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件,将HWADDR的值赋值为刚才复制的ATTR{address}所对应的值

            

    1.1.4 检查是否配置完毕

      在各个虚拟机以及window系统中分别ping life-hadoop.life.com   ping life-hadoop02.life.com  ping life-hadoop03.life.com看是否相通,如果都有正常的返回,表示测试机准备就绪。

  1.2 配置三台虚拟机的无密码登录(要在三台机器上分别执行以下代码)

    1.2.1 生成密码公钥  [[email protected] .ssh]$ ssh-keygen -t rsa

        

    1.2.2 将密码分发到其他机器上,分别运行

        [[email protected] .ssh]$ ssh-copy-id life-hadoop.life.com

        [[email protected] .ssh]$ ssh-copy-id life-hadoop02.life.com

        [[email protected] .ssh]$ ssh-copy-id life-hadoop03.life.com

    1.2.3 使用ssh命令登录查看是否配置成功

        [[email protected] .ssh]$ ssh life-hadoop.life.com

        [[email protected] .ssh]$ ssh life-hadoop02.life.com

        [[email protected] .ssh]$ ssh life-hadoop03.life.com

  1.3 基于伪分布式配置分布式hdfs集群

    1.3.1 将伪分布式的配置文件复制到分布式下进行修改

        [[email protected] hadoop-2.5.0]$ cp /opt/modules/hadoop-2.5.0/etc/hadoop/* etc/hadoop

    1.3.2 配置namenode(两个namenode,一个是activity,一个standby)

      在hdfs.xml文件中配置

        <!--声明集群的名称-->
        <property>
          <name>dfs.nameservices</name>
          <value>ns</value>
        </property>
    
        <!--声明集群中各个节点的名称-->
        <property>
          <name>dfs.ha.namenodes.ns</name>
          <value>nn1,nn2</value>
        </property>
    
        <!--配置namenode节点所在的主机-->
        <property>
          <name>dfs.namenode.rpc-address.ns.nn1</name>
          <value>life-hadoop.life.com:8020</value>
        </property>
        <property>
          <name>dfs.namenode.rpc-address.ns.nn2</name>
          <value>life-hadoop02.life.com:8020</value>
        </property>
    
        <!--配置namenode节点web访问路径-->
        <property>
          <name>dfs.namenode.http-address.ns.nn1</name>
          <value>life-hadoop.life.com:50070</value>
        </property>
        <property>
          <name>dfs.namenode.http-address.ns.nn2</name>
          <value>life-hadoop02.life.com:50070</value>
        </property>
    
        <!--配置共享日志-->
        <property>
          <name>dfs.namenode.shared.edits.dir</name>
          <value>qjournal://life-hadoop.life.com:8485;life-hadoop02.life.com:8485;life-hadoop03.life.com:8485/ns</value>
        </property>
    
        <property>
          <name>dfs.journalnode.edits.dir</name>

          <!--给目录要自己创建-->
          <value>/opt/app/hadoop-2.5.0/journalnode/data</value>
        </property>
    
        <!--配置代理-->
        <property>
          <name>dfs.client.failover.proxy.provider.ns</name>
          <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
        </property>
    
        <!--配置各个节点间的通信方式-->
        <property>
          <name>dfs.ha.fencing.methods</name>
          <value>sshfence</value>
        </property>

        <property>
          <name>dfs.ha.fencing.ssh.private-key-files</name>
          <value>/home/yanglin/.ssh/id_rsa</value>
        </property>

      在core-site.xml中配置

        <!--配置hdfs集群-->
           <property>
          <name>fs.defaultFS</name>
          <value>hdfs://ns</value>
        </property>

    1.3.3 配置resourcemanger,修改yarn-site.xml文件

        <!--配置resourcemanager所在的主机-->
        <property>
          <name>yarn.resourcemanager.hostname</name>
          <value>life-hadoop03.life.com</value>
        </property>

    1.3.4 使用scp方式将hadoop文件分发到另外两台机器上

        [[email protected] app]$ scp -r hadoop-2.5.0/ [email protected]:/opt/app

        [[email protected] app]$ scp -r hadoop-2.5.0/ [email protected]:/opt/app

    1.3.5 格式化namenode

      1.3.5.1 在[email protected]主机上格式化namenode

          [[email protected] hadoop-2.5.0]$ bin/hdfs namenode -format

      1.3.5.2 在[email protected]主机上同步life-hadoop.life.com主机上namenode的信息

          [[email protected] hadoop-2.5.0]$ bin/hdfs namenode -bootstrapStandby

    1.3.6 启动hdfs

      1.3.6.1 在一台机器上启动即可

           [[email protected] hadoop-2.5.0]$ sbin/start-dfs.sh

          

          

          

          分别在浏览器中查看http://life-hadoop.life.com:50070和http://life-hadoop02.life.com:50070

            

          发现两个都是standby的,此时我们可使用命令指定某个为activity的

            [[email protected] hadoop-2.5.0]$ bin/hdfs haadmin -transitionToActive nn1

                此时在去浏览器中查看发现http://life-hadoop.life.com:50070为activity,而http://life-hadoop02.life.com:50070为standby,如果此时life-hadoop.life.com主机挂了,

          可以使用[[email protected] hadoop-2.5.0]$ bin/hdfs haadmin -transitionToActive nn2 让nn2节点处于活动状态,改hdfs文件系统仍然可以正常使用,但这样必须进行手动          的切换,如果想要自动故障转换,需要使用zookeeper

  1.4 配置zookeeper集群和自动故障转移

    1.4.1 配置zookeeper集群

      1.4.1.1 配置各个zookeeper节点所在的主机,修改/opt/app/zookeeper-3.4.5/conf/zoo.cfg文件

        #配置zookeeper数据目录,需要自己提前创建
        dataDir=/opt/app/zookeeper-3.4.5/data/zkData

        #配置zookeeper集群各个节点所在的注解和端口
        server.1=life-hadoop.life.com:2888:3888
        server.2=life-hadoop02.life.com:2888:3888
        server.3=life-hadoop03.life.com:2888:3888

      1.4.1.2 在/opt/app/zookeeper-3.4.5/data/zkData目录下创建/opt/app/zookeeper-3.4.5/data/zkData/myid文件,并进行编辑1

          

      1.4.1.3 使用scp方式分发到另外两台节点上,并修改myid文件为2,3

        [[email protected] app]$ scp -r zookeeper-3.4.5/ [email protected]:/opt/app/

        [[email protected] app]$ scp -r zookeeper-3.4.5/ [email protected]:/opt/app/

      1.4.1.4 在各个节点上分别启动zookeeper

        [[email protected] zookeeper-3.4.5]$ bin/zkServer.sh start

          

        查看各个节点的zookeeper状态

          

          

          

    1.4.2 配置hdfs故障自动转移

      1.4.2.1 修改/opt/app/hadoop-2.5.0/etc/hadoop/hdfs-site.xml文件

        <!--配置namenode自动故障转移-->
        <property>
          <name>dfs.ha.automatic-failover.enabled.ns</name>
          <value>true</value>
        </property>

      1.4.2.2 修改/opt/app/hadoop-2.5.0/etc/hadoop/core-site.xml文件

        <!--配置zookeeper集群所在的各个节点-->
        <property>
          <name>ha.zookeeper.quorum</name>
          <value>life-hadoop.life.com:2181,life-hadoop02.life.com:2181,life-hadoop03.life.com:2181</value>
        </property>

      1.4.2.3 使用scp将这两个文件同步到其他两个节点上

        [[email protected] hadoop-2.5.0]$ scp etc/hadoop/core-site.xml etc/hadoop/hdfs-site.xml [email protected]:/opt/app/hadoop-2.5.0/etc/hadoop

        [[email protected] hadoop-2.5.0]$ scp etc/hadoop/core-site.xml etc/hadoop/hdfs-site.xml [email protected]:/opt/app/hadoop-2.5.0/etc/hadoop

      1.4.2.4 格式化hdfs文件系统的zkfc

        [[email protected] hadoop-2.5.0]$ bin/hdfs zkfc -formatZK

        查看是否成功:

          进入zookeeper客户端

            [[email protected] zookeeper-3.4.5]$ bin/zkCli.sh

          查看是否创建成功

            [zk: localhost:2181(CONNECTED) 0] ls /

            

      1.4.2.5 启动zookeeper故障自动转移控制器

          [[email protected] hadoop-2.5.0]$ sbin/hadoop-daemon.sh start zkfc

          

      1.4.2.6 重启hdfs,发一下已经有一个节点为activity,当该节点故障时,自动另一个节点冲standby转换为activity,整个hdfs系统仍能够正常运行。

时间: 2024-10-13 16:04:48

hadoop2.0初识1.3的相关文章

hadoop2.0初识1.1

1.伪分布式hdfs文件系统的搭建(单节点文件系统) 1.1.根据上节的讲解,配置主机映射.jdk和解压hadoop压缩包 1.2.配置namenode 在/opt/modules/hadoop-2.5.0/etc/hadoop/core-site.xml中配置一下内容 <!--配置namenode所在主机和端口-->     <property>        <name>fs.defaultFS</name>        <value>hd

hadoop2.0初识1.0

1.给普通用户设置sudo权限 编辑:[[email protected] /]# nano /etc/sudoers 在文件头部加入:yanglin ALL=(root)NOPASSWD:ALL 保存退出接口 2.配置主机映射 1.修改主机名称 /etc/sysconfig/network 2.在/etc/hosts下添加映射 [[email protected] /]$ nano /etc/hosts 192.168.0.193   life-hadoop.life.com    life-

hadoop2.0初识1.2

1 hadoop启动方式(三种) 1.1 各个服务组件逐一启动 *dfs hadoop-daemon.sh start|stop namenode|datanode|secondarynamenode *yarn yarn-daemon.sh start|stop resourcemanager|nodemanager *mapreduce mr-historyserver-daemon.sh start|stop historyserver 1.2 各个模块分开启动 *dfs start-df

大话Hadoop1.0、Hadoop2.0与Yarn平台

2016年12月14日21:37:29 Author:张明阳 博文链接:http://blog.csdn.net/a2011480169/article/details/53647012 近来这几天一直在忙于Hbase的实验,也没有太静下心来沉淀自己,今天打算写一篇关于Hadoop1.0.Hadoop2.0与Yarn的博文,从整体上把握三者之间的联系,博客内容如有问题,欢迎留言指正!OK,进入本文正题-- 在开始接触Hadoop的时候,也许大家对于Hadoop是下面的一个概念:Hadoop由两部

hadoop入门(3)&mdash;&mdash;hadoop2.0理论基础:安装部署方法

一.hadoop2.0安装部署流程         1.自动安装部署:Ambari.Minos(小米).Cloudera Manager(收费)         2.使用RPM包安装部署:Apache hadoop不支持.HDP与CDH提供         3.使用jar包安装部署:各版本均提供.(初期为了理解hadoop,建议使用这种方式)         部署流程:                 准备硬件(Linux操作系统)                 准备软件安装包,并安装基础软件

Hadoop2.0源码包简介

Hadoop2.0源码包简介 1.解压源码包: 2.目录结构: hadoop-common-project:Hadoop基础库所在目录,如RPC.Metrics.Counter等.包含了其它所有模块可能会用到的基础库. hadoop-mapreduce-project:MapReduce框架的实现,在第一代MR即MRv1中,MapReduce由编程模型(map/reduce).调度系统(JobTracker和TaskTracker)和数据处理引擎(MapTask和ReduceTask)等模块组成

Hadoop-2.0 目录简介

Hadoop-2.0 目录简介 一.目录结构 将下载的压缩包解压: 解压后文件夹如下: 二.各文件夹目录结构 1.bin:Hadoop2.0的最基本管理脚本和使用脚本所在目录.这些脚本是sbin目录下管理脚本的基础实现,我们可以直接用这些脚本管理和使用Hadoop. 2.etc:这个目录里的文件只要接触过Hadoop的人都很熟悉.Hadoop配置文件目录.首先是从Hadoop1.0继承来的三个文件core-site.xml.hdfs-site.xml.mapred-site.xml,然后还有一个

hadoop-2.0.0-cdh4.6.0 安装

1.创建hadoop用户[所有操作都是root,在所有master和slaver上]1).创建hadoop用户:adduser hadoop2).更换密码:passwd hadoop====================================================================================2.安装jdk[所有操作都是root,在所有master和slaver上]将jdk.tar.gz解压到/et/local/:tar –zxvf jdk

计算机网络 0.初识Internet与TCP/IP协议

互联网,即因特网,Internet.互联网是一个世界范围的计算机网络.连接了世界上无数的计算设备,这些计算设备为PC,基于Linux的工作站,服务器servers等等.这些设备根据其作用不同可以被称为主机host或者端系统end system. 端系统通过通信链路communication link和分组交换机packet switch连接到一起.发送数据时,发送端系统将数据分段,并为每段加上首部字节.这样的形成的信息包称为分组packet.分组到达目标端系统后,被装配成初始数据.分组交换机从它