美文网首页
使用Zookeeper实现服务注册中心

使用Zookeeper实现服务注册中心

作者: 沁园Yann | 来源:发表于2020-08-06 14:20 被阅读0次

    一、在服务器上安装Zookeeper

    1、将下载好的Zookeeper程序压缩包上传到服务器 “/usr/local” 目录下


    image.png

    2、解压程序包

    tar -zxvf zookeeper-3.4.13.tar.gz
    

    3、重命名 zookeeper 程序包文件夹

    mv zookeeper-3.4.13 zookeeper
    

    4、在zookeeper文件夹下创建数据和日志文件夹

    mkdir -p data
    mkdir -p logs
    

    5、进入到conf目录中,复制zoo_sample.cfg文件的并命名为 zoo.cfg

    cp zoo_sample.cfg zoo.cfg
    

    6、编辑 zoo.cfg 文件(vi zoo.cfg),在文件中添加或修改下面配置

    # 修改配置项
    dataDir=/usr/local/zookeeper/dataDir
    # 添加配置项
    dataLogDir=/usr/local/zookeeper/dataLogDir
    

    7、配置zookeeper环境变量(vi /etc/profile)

    export ZOOKEEPER_HOME=/usr/local/zookeeper
    export PATH=$PATH:$ZOOKEEPER_HOME/bin:$JAVA_HOME/bin:$JRE_HOME/bin:/usr/tomcat9/bin
    

    8、zookeeper常用管理命令
    服务管理命令:zkServer.sh start|stop|restart|status
    客户端连接:zkCli.sh -server ip:port
    客户端关闭:quit 或者按 Ctrl + C

    ./zkServer.sh start //启动
    ./zkServer.sh stop //停止
    ./zkServer.sh restart //重启
    ./zkServer.sh status //查看状态,Mode:standalone 表明当前是单机模式,也表明部署成功。
    ./zkCli.sh -server ip:port  //客户端连接,zkCli.sh不输入后面的可以连接本地zookeeper
    //连上zookeeper客户端后的命令
    ls /    //查看连上zookeeper服务端的服务
    

    二、在项目配置Zookeeper

    1、在pom文件中添加需要用到的依赖包

            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
                <!--先排除自带的zookeeper3.5.3-->
                <exclusions>
                    <exclusion>
                        <groupId>org.apache.zookeeper</groupId>
                        <artifactId>zookeeper</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>  
    

    上面依赖包默认包含zookeeper3.5.3,如果服务器上安装的zookeeper版本高于3.5.3,那么需要另外添加zookeeper依赖包,并且依赖包要比服务器上的zookeeper版本要高,否则启动项目时会报错

    <!--添加zookeeper3.4.9版本-->
            <dependency>
                <groupId>org.apache.zookeeper</groupId>
                <artifactId>zookeeper</artifactId>
                <version>3.4.9</version>
            </dependency>
    

    2、修改application.yml配置文件

    #服务别名----注册zookeeper到注册中心名称
    spring:
      application:
        name: cloud-provider-payment
      cloud:
        zookeeper:
          connect-string: *.*.*.*:2181  //这里写上zookeeper的服务器ip和端口号,服务器需要先开放该端口号
    

    3、在启动类中添加 @EnableDiscoveryClient 注解

    @SpringBootApplication
    @EnableDiscoveryClient //该注解用于向使用consul或者zookeeper作为注册中心时注册服务
    public class PaymentMain8004
    {
        public static void main(String[] args) {
                SpringApplication.run(PaymentMain8004.class, args);
        }
    }
    

    4、启动项目,如果可以在服务器上的zookeeper客户端看到该服务,说明项目已经注册到zookeeper上了


    image.png

    相关文章

      网友评论

          本文标题:使用Zookeeper实现服务注册中心

          本文链接:https://www.haomeiwen.com/subject/omicrktx.html