1、Zookeeper安装

  1、解压 zookeeper 到安装目录中/opt/app/zookeeper 中。

  2、在安装目录下创建data和logs两个目录用于存储数据和日志:

      cd /opt/app/zookeeper-3.4.10
      mkdir dir_data
      mkdir dir_logs

  3、在conf目录下新建zoo.cfg文件,写入以下内容保存:

      tickTime=2000
      dataDir=/opt/app/zookeeper-3.4.10/dir_data
      dataLogDir=/opt/app/zookeeper-3.4.10/dir_logs
      clientPort=2181
      initLimit=5
      syncLimit=2
      server.1=s10:2888:3888 //s10,s11,s12是自己的ip
      server.2=s11:2888:3888
      server.3=s11:2888:3888

      注:分布式协调服务:s10,s11,s12

  4、在新建的dir_data下,新建一个myid文件,分配票数。

      s10 : echo '1' > /opt/app/zookeeper-3.4.10/dir_data/myid

      s11: echo '2' > /opt/app/zookeeper-3.4.10/dir_data/myid

      s12: echo '3' > /opt/app/zookeeper-3.4.10/dir_data/myid

  5、启动命令(bin目录下)

      ./zkServer.sh start
      ./zkServer.sh stop
      ./zkServer.sh restart
      ./zkServer.sh status

  注:当半数以上启动时,会每个节点查看状态都能得到其对应的角色。(s10,s11,s12)

2、HA安装

  1、安装HA之前,必须先安装zookeeper

  2、删除原来文件(要删除以前hadoop的残留文件)

    mkdir -p /opt/app/hadoop-2.7.2/journalnode       //创建共享存储系统的journalnode节点编辑日志存储路劲

    mkdir -p /opt/app/hadoop-2.7.2/namenode       //存储namenode的临时文件(不然会在tmp下面)
    mkdir -p /opt/app/hadoop-2.7.2/datanode       //存储datenode的临时文件(不然会在tmp下面)

    rm -rf /opt/app/hadoop-2.7.2/journalnode/*
    rm -rf /opt/app/hadoop-2.7.2/namenode/*
    rm -rf /opt/app/hadoop-2.7.2/datanode/*

    rm -rf /tmp/*                     //所有的都执行

    rm -rf /opt/app/hadoop-2.7.2/data/tmp/*

    rm -rf /opt/app/hadoop-2.7.2/logs/*

  3、更改配置文件core-site.xml

    <configuration>

        <!--配置名称节点集群-->

        <property>

            <name>fs.defaultFS</name>

            <value>hdfs://MyNNS</value>

        </property>

        <property>

            <name>hadoop.tmp.dir</name>

            <value>/opt/app/hadoop-2.7.2/data/tmp</value>

        </property>

        <!--配置zookeeper-->

        <property>

            <name>ha.zookeeper.quorum</name>

            <value>192.168.40.10:2181,192.168.40.11:2181,192.168.40.12:2181</value>

        </property>

    </configuration>

  4、hdfs-site

    <configuration>

        <!-- 配置集群中的集群名称 -->

        <property>

            <name>dfs.nameservices</name>

            <value>MyNNS</value>

        </property>

        <!-- 配置名称集群中的名称节点-->

        <property>

            <name>dfs.ha.namenodes.MyNNS</name>

            <value>nn1,nn2</value>

        </property>

        <!--配置nn1的主机位置与端口号 -->

        <property>

            <name>dfs.namenode.rpc-address.MyNNS.nn1</name>

            <value>192.168.40.10:8020</value>

        </property>

        <!-- 配置nn2的主机名称端口号-->

        <property>

            <name>dfs.namenode.rpc-address.MyNNS.nn2</name>

            <value>192.168.40.11:8020</value>

        </property>

        <!--配置nn1与nn2 web访问端口 -->

        <property>

            <name>dfs.namenode.http-address.MyNNS.nn1</name>

            <value>192.168.40.10:50070</value>
    </property>

        <property>

            <name>dfs.namenode.http-address.MyNNS.nn2</name>

            <value>192.168.40.11:50070</value>

        </property>

        <!--配置journalnode日志服务器主机位置 -->

        <property>

            <name>dfs.namenode.shared.edits.dir</name>

            <value>qjournal://192.168.40.10:8485;192.168.40.11:8485;192.168.40.12:8485/MyNNS</value>

        </property>

        <!--配置journalnode 日志存储的地址 -->

        <property>

            <name>dfs.journalnode.edits.dir</name>

            <value>/opt/app/hadoop-2.7.2/journalnode</value>

        </property>

        <!-- 配置HA的代理服务-->

        <property>

            <name>dfs.client.failover.proxy.provider.MyNNS</name>

            <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>

        </property>

        <!--配置SSH登录 -->

        <property>

            <name>dfs.ha.fencing.methods</name>

            <value>sshfence</value>

        </property>

        <property>

            <name>dfs.ha.fencing.ssh.private-key-files</name>

            <value>/home/hadoop/.ssh/id_rsa</value>

        </property>

        <property>

            <name>dfs.ha.fencing.ssh.connect-timeout</name>

            <value>30000</value>

        </property>

        <!-- 开启自动故障转移功能-->

        <property>

            <name>dfs.ha.automatic-failover.enabled</name>

            <value>true</value>

        </property>

        <property>

            <name>dfs.permissions.enabled</name>

            <value>false</value>

        </property>

        <!-- namenode临时文件存储目录-->

        <property>
            <name>dfs.name.dir</name>
            <value>/opt/app/hadoop-2.7.2/namenode/</value>
        </property> 

        <!-- datanode临时文件存储目录-->

        <property>
            <name>dfs.data.dir</name>
            <value>/opt/app/hadoop-2.7.2/datanode/</value>
        </property>

    </configuration>

  5、格式化文件系统

    scp -r /opt/app/hadoop-2.7.2 s13:/opt/app/     //分发配置文件

    zkServer.sh start                //三台zk都必须先启动

    hadoop-daemon.sh start journalnode      //三台journalnode都必须先启动

    hadoop namenode -format         //格式化hdfs

    hdfs zkfc -formatZK             //初始化ZK

    hadoop-daemon.sh start namenode      //启动namenode(active节点上)

    hdfs namenode -bootstrapStandby     //同步到Standby节点上

    hadoop-daemon.sh start namenode    //Standby节点上开启namenode

    start-all.sh                //启动全部

    hdfs haadmin -getServiceState nn1 //查看nn1状态
    hdfs haadmin -getServiceState nn2 //查看nn1状态

  6、第二次开启就不需要这么费神了

    zkServer.sh start //三台zk都必须先启动
    start-all.sh //启动全部

2-Zookeeper、HA安装的更多相关文章

  1. 安装hadoop+zookeeper ha

    安装hadoop+zookeeper ha 前期工作配置好网络和主机名和关闭防火墙 chkconfig iptables off //关闭防火墙 1.安装好java并配置好相关变量 (/etc/pro ...

  2. spark HA 安装配置和使用(spark1.2-cdh5.3)

    安装环境如下: 操作系统:CentOs 6.6 Hadoop 版本:CDH-5.3.0 Spark 版本:1.2 集群5个节点 node01~05 node01~03 为worker. node04. ...

  3. zookeeper的安装(图文详解。。。来点击哦!)

    zookeeper的安装(图文详解...来点击哦!) 一.服务器的配置 三台服务器: 192.168.83.133   sunshine 192.168.83.134   sunshineMin 19 ...

  4. (原) 1.1 Zookeeper单机安装

    本文为原创文章,转载请注明出处,谢谢 zookeeper 单机安装配置 1.安装前准备 linux系统(此文环境为Centos6.5) Zookeeper安装包,官网https://zookeeper ...

  5. ZooKeeper的安装、配置、启动和使用(一)——单机模式

    ZooKeeper的安装.配置.启动和使用(一)——单机模式 ZooKeeper的安装非常简单,它的工作模式分为单机模式.集群模式和伪集群模式,本博客旨在总结ZooKeeper单机模式下如何安装.配置 ...

  6. ZooKeeper 的安装和配置---单机和集群

    如题本文介绍的是ZooKeeper 的安装和配置过程,此过程非常简单,关键是如何应用(将放在下节及相关节中介绍). 单机安装.配置: 安装非常简单,只要获取到 Zookeeper 的压缩包并解压到某个 ...

  7. JDK+Tomcat+Zookeeper+DubboAdmin安装教程

    JDK+Tomcat+Zookeeper+DubboAdmin安装教程 1. 安装内容: JDK 1.8.131 Tomcat 7.0.77 Zookeeper 3.4.9 Dubbo admin 2 ...

  8. Zookeeper的安装的配置

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt192 安装和配置详解 本文介绍的 Zookeeper 是以 3.2.2 这个 ...

  9. Zookeeper的安装部署

    1.Zookeeper的安装部署 7.1 Zookeeper工作机制 7.1.1.Zookeeper集群角色 Zookeeper集群的角色:  Leader 和  follower (Observer ...

随机推荐

  1. Github使用说明 --整理者米米

    打开百度搜索Git官网下载对应的windows版本 傻瓜式默认安装,点击完成 PS:安装的过程比较慢 安装完成后打开命令行窗口(cmd) 查看版本号------git --version   安装成功 ...

  2. go bytes缓冲区使用介绍 -转自https://www.cnblogs.com/--xiaoyao--/p/5122138.html

    缓冲区原理简介: go字节缓冲区底层以字节切片做存储,切片存在长度len与容量cap, 缓冲区写从长度len的位置开始写,当len>cap时,会自动扩容.缓冲区读会从内置标记off位置开始读(o ...

  3. Set up an SSH key with Sourcetree on macOS

    1. 打开 sourcetree,进入设置-账户: 2. 选择添加账户,托管主机选择 Bitbucket(或Github),再连接账号,登录已有的 Bitbucket 账号(或 Github 账号), ...

  4. sql server 清除数据库中所有表的数据

    CREATE PROCEDURE  sp_DeleteAllData AS EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'- ...

  5. Excel导出文件流下载

    Controller.cs @CrossOrigin(allowCredentials="true", allowedHeaders="*", methods= ...

  6. JPanel添加键盘监听事件

    因为在自己的游戏需求中谢了要用键盘控制飞机的移动,所以用到键盘监听事件,但是使用了JPanel之后添加了键盘监听事件,按相应的方向键飞机并没有反应.但是如果是为JFrame的内容面板加则会有反应. 为 ...

  7. this、apply/call、bind、闭包、函数、变量复制

    一.实际场景中抽象出的一个问题 下面this各指向什么? var a = { b: function() { console.log(this); }, f: function() { var c = ...

  8. bzoj4980: 第一题

    Description 神犇xzyo听说sl很弱,于是出了一题来虐一虐sl.一个长度为2n(可能有前缀0)的非负整数x是good的,当且仅当 存在两个长度为n(可能有前缀0)的非负整数a.b满足a+b ...

  9. PAT 乙级 1026 程序运行时间(15) C++版

    1026. 程序运行时间(15) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 要获得一个C语言程序的运行时间, ...

  10. SwipeRefreshLayout 和RecyclerView 使用

    使用是布局 <android.support.v4.widget.SwipeRefreshLayout android:id="@id/id_swiperefreshlayout&qu ...