1.下载linux版本的zookeper,将conf下的配置文件改成zoo.cf。确保jdk不是openjdk如果是openjdk的话在官网上下载对应的linux版本的jdk。
2.在conf文件下启动zookeper, ./zkServer.sh start
3.测试zookeper,./zkCli.sh
4.spring boot整合zookepper,这里要注意zookeper的依赖要与装的版本相对应。这里存在版本依赖冲突的问题,首先是zookeeper自身带的版本与虚拟机装的版本冲突,还有的是zk中的sflp日志相关的依赖冲突问题,需要先排除掉,需要添加新的以来的加上自己需要的版本依赖。
<dependencies>
<dependency>
<groupId>com.shuai.springcloud2</groupId>
<artifactId>cloud-coment</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
<exclusions>
<exclusion>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.5.8</version>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--jdbc-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
</dependencies>
5.zk的节点是临时节点,它没有eureka的自我保护机制,当服务挂掉之后如果没有心跳就会清除服务。
网友评论