zoukankan      html  css  js  c++  java
  • 构建第一个Spring Boot2.0应用之集成dubbo上---环境搭建(九)

    一、环境:

         Windows:

         IDE:IntelliJ IDEA 2017.1.1

         JDK:1.8.0_161

          Maven:3.3.9

          springboot:2.0.2.RELEASE

          Linux(CentOS Linux release 7.2.1511 (Core)):

          dubbo:dubbo-admin-2.0.0

           zookeeper:zookeeper-3.4.10

    二、部署zookeeper(集群方式)

       准备三台机器或虚拟机,IP为192.168.254.3(节点1)、192.168.254.4(节点2)、192.168.254.5(节点3)。

        1.下载zookeeper-3.4.10.tar.gz

         地址:http://mirror.bit.edu.cn/apache/zookeeper/

       2.解压zookeeper

         解压gz文件,在下载的zookeeper-3.4.10.tar.gz存放目下,执行tar -zxvf zookeeper-3.4.10.tar.gz,等待命令运行完成,则生成解压后的目录为zookeeper-3.4.10,进入文件夹,文件列表如下。

        设置zookeeper的安装目录为/usr/local,则将解压后的目录文件夹移动到此,即执行mv  zookeeper-3.4.10 /usr/local 

       3.安装配置

        (1)进入/usr/local/zookeeper/conf,复制zoo_sample.cfg文件的并命名为 zoo.cfg

       (2)编辑zoo.cfg

         vim zoo.cfg

         

        添加dataLogDir,设置日志目录;修改数据目录dataDir。

         zookeeper有三个重要端口,默认分别为2181、2888、3888,分别是为客户端服务端口、集群内部通信端口、选举leader使用端口。这三个端口可以根据实际情况自行修改,只要是端口未被其他一个用占用都可以使用,此处故意修改三个端口为3181、12888、13888。

    修改完成后保存zoo.cfg。

       (3)复制zookeeper-3.4.10目录到其他服务器

            scp -r root@ zookeeper-3.4.10/ 192.168.254.4:/usr/local

            scp -r root@ zookeeper-3.4.10/ 192.168.254.5:/usr/local

          如果直接复制需要输入其他机器帐户密码,则需要在集群机器之间配置SSH免密登录。

       (4)集群各节点配置myid 

          将zookeeper目录复制到集群各节点后,按照上面zoo.cfg中配置的dataDir、dataLogDir中配置的实际路径,在zookeeper-3.4.10根目录下建立data、logs目录(mkdir data、mkdir logs)。

         配置后,在集群节点1进入data目录,建立myid文件,并在文件中输入1,保存

         节点1(192.168.254.3)                                              

       同理在集群节点2、节点3中分别进入data目录,建立myid文件,在文件中分别输入2、3,保存。

      节点1(192.168.254.4)                                              

       节点1(192.168.254.5)                               

       这里各节点myid文件中设置的数字,与zoo.cfg中配置集群节点的数字对应。          

       

     (5)集群节点启动和验证

         在节点1,启动集群# ./bin/zkServer.sh start

         

         同样,在节点2、节点3启动zookeeper。

         在三个节点都启动完成后,分别查看状态: 

           节点1:   ./bin/zkServer.sh status               

           节点2:   ./bin/zkServer.sh status               

            节点3:   ./bin/zkServer.sh status               

         可以看出,集群节点启动后,节点2被选举为leader。

      对于集群,也可以通过编写脚本批量一键启动集群节点。

          在任意一个节点zookeeper的安装目录下,新建zkBatchServer.sh,打开并编写如下内容: 

    #!/bin/bash
    #参数传递
    usage="Usage: $0 (start|stop|status)"
    if [ $# -lt 1 ]; then
        echo $usage
        exit 1
    fi
    behave=$1
    echo "$behave zkServer cluster"
    
    #主机名称
    SERVERS="master1-hadoop master2-hadoop slave1-hadoop"
    for SERVER in $SERVERS
    do
    #使用ssh进行启动
         echo "当前"$SERVER "正在"$behave"-----------------------"
         ssh root@$SERVER "source /etc/profile; /usr/local/zookeeper-3.4.10/bin/zkServer.sh $behave"
         echo $SERVER $behave "结束------------------------------"
    done

    设置完后,修改权限 chmod u+x  zkBatchServer.sh

    zookeeper目录文件如下

    批量启动集群 

    # ./zkBatchServer.sh start

    启动后,查看集群节点状态

    # ./zkBatchServer.sh status

        (6)连接ZooKeeper的集群     

          通过192.168.254.3连接zookeeper集群,

            # ./bin/zkCli.sh -r -server 192.168.254.3:3181

    上面是通过zkCli.sh连接指定的节点ip和端口连接到zookeeper集群。  

    二、部署dubbo

     (1)下载编译     

    dubbo项目地址https://github.com/apache/incubator-dubbo,最新的源码项目为2.6.2,不过从2.6.1后dubbo-admin已经被分离出去了,因此要部署dubbo-admin则需在           https://github.com/apache/incubator-dubbo-ops下载 。

         下载解压后,进入项目录下(即incubator-dubbo-ops-master),项目工程结构如下

         

       打开dubbo-adminsrcmainwebappWEB-INF下的dubbo.properties,内容为:

    dubbo.registry.address=zookeeper://127.0.0.1:2181
    dubbo.admin.root.password=root
    dubbo.admin.guest.password=guest

    将注册中心的地址更改为上面配置的zookeeper集群的地址,即

    dubbo.registry.address=zookeeper://192.168.254.3:3181?backup=192.168.254.4:3181,192.168.254.5:3181
    dubbo.admin.root.password=root
    dubbo.admin.guest.password=guest

        

      导入项目到idea

       或直接在项目目录控制台执行命令:mvn package -Dmaven.skip.test=true

      

    执行成功后,进入incubator-dubbo-ops-masterdubbo-admin arget目录,

     

     (2)安装dubbo-admin

        将上面生成的war包拷贝到tomcat的webapps目录

        启动tomcat后,自动解压war,生成项目目录

        

         通过URL即可访问dubbo-admin

          http://192.168.254.3:8686/dubbo-admin-2.0.0/

        登录用户名密码参考dubbo.properties,其里面配置的两个账户,每个账户的用户名与密码一样

    登录后可以看到管理界面如下

        这篇主要学习了一下结成dubbo的环境配置,为真正集成应用做一些准备工作,下篇通过具体的代码实例学习编写服务如何注册、调用。

          

  • 相关阅读:
    分布式文件存储系统-HDFS
    Java中的常用类
    分布式协调框架ZooKeeper
    【Redis】Redis慢查询
    kubectl工具管理应用
    kubectl命令管理
    To check your hdfs port use the following command in linux
    hadoop HDFS常用文件操作命令
    在scala中关于split以及正则表达式
    pandas入门之Series
  • 原文地址:https://www.cnblogs.com/EggKiller/p/9165620.html
Copyright © 2011-2022 走看看