zoukankan      html  css  js  c++  java
  • 搭建 zookeeper + dubbo-admin + dubbo-monitor 环境

     一、单机安装

    1.1、下载

    下载地址:官网或其他镜像 

    https://zookeeper.apache.org/           

    http://archive.apache.org/dist/zookeeper/

    命令: wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz

    1.2、安装

    解压到相应路径

    tar -xzvf zookeeper-3.4.10.tar.gz  -C /home/zookeeper

    1.3、配置

    在主目录下创建data和logs两个目录用于存储数据和日志

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

    mkdir data
    mkdir logs
    cp zoo_sample.cfg zoo.cfg

    vim zoo.cfg
      tickTime=2000
      dataDir=..path../zookeeper/data
      dataLogDir=..path../zookeeper/logs
      clientPort=2181

    1.4、启动和停止

    进入bin目录,启动、停止、重启分和查看当前节点状态(包括集群中是何角色)别执行

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

      

    二、伪集群模式

    伪集群模式就是在同一主机启动多个zookeeper并组成集群,下边以在192.168.220.128主机上创3个zookeeper组集群为例。

    将通过第一大点安装的zookeeper,复制成zookeeper1/zookeeper2/zookeeper3三份

    2.1 zookeeper1配置

    zookeeper1配置文件conf/zoo.cfg修改如下:

    复制代码
    tickTime=2000
    dataDir=/usr/myapp/zookeeper1/data
    dataLogDir=/usr/myapp/zookeeper1/logs
    clientPort=2181
    initLimit=5
    syncLimit=2
    server.1=192.168.220.128:2888:3888
    server.2=192.168.220.128:4888:5888
    server.3=192.168.220.128:6888:7888

    zookeeper1的data/myid配置如下:

    echo '1' > data/myid

    2.2 zookeeper2配置

    zookeeper2配置文件conf/zoo.cfg修改如下:

    复制代码
    tickTime=2000
    dataDir=/usr/myapp/zookeeper2/data
    dataLogDir=/usr/myapp/zookeeper2/logs
    clientPort=3181
    initLimit=5
    syncLimit=2
    server.1=192.168.220.128:2888:3888
    server.2=192.168.220.128:4888:5888
    server.3=192.168.220.128:6888:7888

    zookeeper2的data/myid配置如下:

    echo '2' > data/myid

    2.3 zookeeper3配置

    zookeeper3配置文件conf/zoo.cfg修改如下:

    复制代码
    tickTime=2000
    dataDir=/usr/myapp/zookeeper3/data
    dataLogDir=/usr/myapp/zookeeper3/logs
    clientPort=4181
    initLimit=5
    syncLimit=2
    server.1=192.168.220.128:2888:3888
    server.2=192.168.220.128:4888:5888
    server.3=192.168.220.128:6888:7888

     zookeeper3的data/myid配置如下:

    echo '3' > data/myid

    最后使用1.4的命令把三个zookeeper都启动即可,启动顺序随意没要求。

    三、集群模式

    集群模式就是在不同主机上安装zookeeper然后组成集群的模式;下边以在192.168.220.128/129/130三台主机为例。

    将第1.1到1.3步中安装好的zookeeper打包复制到129和130上,并都解压到同样的目录下。

    3.1 conf/zoo.cfg文件修改

    三个zookeeper的conf/zoo.cfg修改如下:

    复制代码
    tickTime=2000
    dataDir=/usr/myapp/zookeeper-3.4.5/data
    dataLogDir=/usr/myapp/zookeeper-3.4.5/logs
    clientPort=2181
    initLimit=5
    syncLimit=2
    server.1=192.168.220.128:2888:3888
    server.2=192.168.220.129:2888:3888
    server.3=192.168.220.130:2888:3888

    对于129和130,由于安装目录都是zookeeper-3.4.5所以dataDir和dataLogDir不需要改变,又由于在不同机器上所以clientPort也不需要改变

    所以此时129和130的conf/zoo.cfg的内容与128一样即可。

    3.2 data/myid文件修改

    128 data/myid修改如下:

    echo '1' > data/myid

    129 data/myid修改如下:

    echo '2' > data/myid

    130 data/myid修改如下:

    echo '3' > data/myid

    最后使用1.4的命令把三个zookeeper都启动即可,启动顺序随意没要求。

    四、报错及处理

    应用连接zookeepr报错:Session 0x0 for server 192.168.220.128/192.168.220.128:2181,unexpected error,closing socket connection and attempting reconnect;

                                            先看端口能否telnet通,如果通则使用./zkServer.sh status查看zk是否确实已启动,没启查看bin/zookeeper.out中的报错。

    bin/zookeeper.out中报错:“zookeeper address already in use”;显然端口被占用,要么是其他进程占用了配置的端口,要么是上边配置的clientPort和server中的端口有重复。

    bin/zookeeper.out中报错:Cannot open channel to 2 at election address /192.168.220.130:3888;这应该只是组成集群的130节点未启动,到130启动起来zk即会正常。

    五、DUBBO-ADMIN安装

    1.到地址 https://github.com/alibaba/dubbo 下载dubbo源码 

    2.解压缩zip

    3、打包 

    打开命令操作模式   mvn  package -Dmaven.skip.test=true 

    如果编译时报下面的错误,需要修改 D:技术资料zookeeperdubbo-masterdubbo-masterdubbo-admin目录下的pom.xml文件

    [ERROR] Failed to execute goal on project dubbo-admin: Could not resolve dependencies for project com.alibaba:dubbo-admin:war:2.5.4-SNAPSHOT: Could not find artifact com.alibaba:dubbo:jar:2.5.4-SNAPSHOT -> [Help 1]

    将 <version>${project.parent.version}</version> 修改为<version>2.5.3</version>

    <dependency>

       <groupId>com.alibaba</groupId>
       <artifactId>dubbo</artifactId>
       <version>${project.parent.version}</version>
      </dependency>

    <dependency>
       <groupId>com.alibaba</groupId>
       <artifactId>dubbo</artifactId>
       <version>2.5.3</version>
      </dependency>

     4.编译成功 

     6.把这个dubbo-admin-2.5.4-SNAPSHOT.war拷贝到 tomcat下的webapps目录下

      7 修改tomcat的端口为8088,修改方法如下,打到conf下的文件 server.xml,因为zookeeper会用到8080的端口,所以为了不冲突,把Tomcat的端口改一下。记得一定要改!!!

     8 启动tomcat后,tomcat启动命令为 bin下,启动后,dubbo-admin-2.5.4-SNAPSHOT.war包会自动解压,在tomcat/webapps目录下生成一个dubbo-admin-2.5.4-SNAPSHOT文件夹

    修改dubbo-admin-2.5.4-SNAPSHOT/WEB-INF/文件夹下的dubbo.properties文件为如下内容

    9 先启动zookeeper,然后再启动tomcat,在浏览器输入 http://localhost:8088/dubbo-admin-2.5.4-SNAPSHOT/ 

    10、dubbo-admin搭建完毕。把dubbo服务注册至zookeeper下时,会看到相应的服务。dubbo-admin的操作查看相应介绍

    六、dubbo-Monitor 安装

    https://blog.csdn.net/s296850101/article/details/52638020

  • 相关阅读:
    利用PHP SOAP实现WEB SERVICE
    PHP 简单的加密解密算法
    Java 简单的加密解密算法
    去掉php框架CI默认url中的index.php
    PHP 日期计算函数【差异天数】
    PHP生成迅雷、快车、旋风等软件的下载链接代码实例
    转:苹果iphone APP界面设计尺寸官方版
    iOS开发——密码存储之keychain的使用
    Simple iPhone Keychain Access
    View的简单说明
  • 原文地址:https://www.cnblogs.com/J-Cooper/p/8810793.html
Copyright © 2011-2022 走看看