• linux下配置zookeeper注册中心及运行dubbo服务


    dubbo和zookeeper的关系

    简单来说打个比方:dubbo就是动物园的动物,zookeeper是动物园。如果游客想看动物的话那么就去动物园看。比如你要看老虎,那么动物园有你才能看到。换句话说我们把很多不同的dubbo(动物)放到zookeeper(动物园中)提供给我们游客进行观赏。这个过程中三个关键:场所、供给者、消费者。

    1.   Zookeeper的作用:

            zookeeper用来注册服务和进行负载均衡,哪一个服务由哪一个机器来提供必需让调用者知道,简单来说就是ip地址和服务名称的对应关系。当然也可以 通过硬编码的方式把这种对应关系在调用方业务代码中实现,但是如果提供服务的机器挂掉调用者无法知晓,如果不更改代码会继续请求挂掉的机器提供服务。 zookeeper通过心跳机制可以检测挂掉的机器并将挂掉机器的ip和服务对应关系从列表中删除。至于支持高并发,简单来说就是横向扩展,在不更改代码 的情况通过添加机器来提高运算能力。通过添加新的机器向zookeeper注册服务,服务的提供者多了能服务的客户就多了。
     

    2.  dubbo:

          是管理中间层的工具,在业务层到数据仓库间有非常多服务的接入和服务提供者需要调度,dubbo提供一个框架解决这个问题。

          注意这里的dubbo只是一个框架(项目),至于你架子上放什么是完全取决于你的,就像一个汽车骨架,你需要配你的轮子引擎。这个框架中要完成调度必须要有一个分布式的注册中心,储存所有服务的元数据,你可以用zk,也可以用别的,只是大家都用zk。

    zookeeper运行环境

      ZooKeeper服务器是用Java编写创建,它运行在JVM。
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    配置说明

      1:文件下载:

      zookeeper-3.4.8.tar.gz包,

      jdk-7u80-linux-x64.tar.gz包,

      apache-tomcat-7.0.68.tar.gz包,

      dubbo-admin-2.5.3.war管理项目,

      注意Zookeeper版本要与jdk版本兼容

      2:通过Filezilla或别的工具连接Linux,并将以上下载的文件放入路径/usr/local/tmp下

      3:打开Xshell连接linux

      跳转:cd /usr/local/tmp

      4:jdk及tomcat安装配置:

        解压--->移动--->配置环境变量

        tar zxvf jdk-7u80-linux-x64.tar.gz 

        cp -r jdk-7u80-linux-x64 ../jdk

        tar zxvf apache-tomcat-7.0.68.tar.gz 

        cp -r apache-tomcat-7.0.68 ../tomcat

        vim /etc/profile

          在profile文件中配置jdk及Tomcat环境变量

          export JAVA_HOME=/usr/local/jdk

          export PATH=$JAVA_HOME/bin:$PATH

          export TOMCAT_HOME=/usr/local/tomcat

          export CATALINA_HOME=/usr/local/tomcat

        :wq保存退出后使修改的文件生效

        source /etc/profile

      5:Zookeeper安装配置

        tar zxvf zookeeper-3.4.8.tar.gz

        cp -r zookeeper-3.4.8 ../zookeeper

        5.1 到zookeeper目录创建一个data文件夹

          cd /usr/local/zookeeper

          mkdir data

        5.2 在zookeeper下的conf目录下复制一份zoo_sample.cfg并改为zoo.cfg

          cp -r zoo_sample.cfg zoo.cfg

        5.3 修改zoo.cfg配置文件中dataDir属性为dataDir=/usr/local/zookeeper/data

          vim zoo.cfg

          dataDir=/usr/local/zookeeper/data

          留意:clientPort=2181为zookeeper端口号

          保存退出

      6:设置防火墙放行2181及8080的端口(后面Tomcat启动使用的是8080端口)

        vim /etc/sysconfig/iptables

        -A INPUT -m state --state NEW -m tcp -p tcp --dport 2181 -j ACCEPT

        -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

        :wq回车

        server iptables restart  重启防火墙服务

      7:启动zookeeper服务

        cd /usr/local/zookeeper/bin

        ./zkServer.sh start(查看启动状态./zkServer.sh status)

      8:启动Tomcat服务

        cd /usr/local/tomcat/bin

        ./startup.sh  

      9:部署管理项目到Tomcat下

        cd /usr/local/tmp

        cp -r dubbo-admin-2.5.3.war ../tomcat/webapps

        此时Tomcat会自动创建一个dubbo-admin-2.5.3文件夹

      10:关闭Tomcat,删除war包,将dubbo-admin-2.5.3改名为dubbo

        [root@192 tmp]# ../tomcat/bin/shutdown.sh

        cd ../tomcat/webapps

        mv -r dubbo-admin-2.5.3 dubbo

      11:修改项目的注册中心地址

        cd /usr/local/tomcat/webapps/WEB-INF

        vim dubbo.properties

        dubbo.registry.address=zookeeper://127.0.0.1:2181

        :wq退出

      12:重启Tomcat,访问dubbo管理项目地址

        cd /usr/local/tomcat/bin

        ./startup.sh

        http://192.168.48.130:8080/dubbo

        用户名密码均为 root

  • 相关阅读:
    CSS之链接
    CSS之文本
    CSS之定位
    django 第四天
    django第三天
    django 第二天
    django第一天
    国庆贺礼
    珂朵莉树(ODT)笔记
    20190927
  • 原文地址:https://www.cnblogs.com/erfsfj-dbc/p/10618009.html
Copyright © 2020-2023  润新知