二、spring cloud 注册与发现eureka注册中心

2021-05-09 01:27

阅读:500

标签:cat   main函数   encoding   server   author   apache   依赖管理   api   strong   

基于2.0 Greenwich高可用eureka注册中心搭建

一、单机版

新建MAVEN父工程demo-parent

删掉src

pom.xml

pomorg.springframework.boot
        spring-boot-starter-parent
        2.1.6.RELEASE
?
    org.springframework.cloud
                spring-cloud-dependencies
                Greenwich.RELEASEpomimportorg.springframework.boot
                spring-boot-starter-web
            org.springframework.boot
                spring-boot-starter-logging
            org.springframework.boot
                spring-boot-starter-test
                testorg.projectlombok
                lombok
                1.18.4providedorg.springframework.boot
                spring-boot-starter-actuator
            org.springframework.boot
                spring-boot-devtools
                truecom.sun.xml.bind
                jaxb-core
                2.2.11javax.xml.bind
                jaxb-api
            com.sun.xml.bind
                jaxb-impl
                2.2.11org.glassfish.jaxb
                jaxb-runtime
                2.2.10-b140310.1920javax.activation
                activation
                1.1.1
?
            org.springframework.cloud
                spring-cloud-commons
            
?
    org.apache.maven.plugins
                maven-compiler-plugin
                1111utf-8org.springframework.boot
                spring-boot-maven-plugin
            

单例版eureka注册中心,新建model    demo-eureka-server-8671

pom.xml

org.springframework.cloud
            spring-cloud-starter-netflix-eureka-server
        

启动类 添加 @EnableEurekaServer 表示开启Eureka注册中心

package com.wg.edu;
?
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
?
/**
 * @author Mrwg
 * @date 2020/6/20 21:49
 * @desc
 */
@SpringBootApplication
@EnableEurekaServer
public class CloudEurekaServerApplication8761 {
    public static void main(String[] args) {
        SpringApplication.run(CloudEurekaServerApplication8761.class,args);
    }
}
?

application.yml

#eureka server服务端口
server:
  port: 8761
spring:
  application:
    name: cloud-eureka-server # 应用名称,应用名称会在Eureka中作为服务名称
    # eureka 客户端配置(和Server交互),Eureka Server 其实也是一个Client
eureka:
  instance:
    hostname: localhost  # 当前eureka实例的主机名
    prefer-ip-address: true
    instance-id: ${spring.cloud.client.ip-address}:${spring.application.name}:${server.port}
  client:
    service-url:
      # 配置客户端所交互的Eureka Server的地址(Eureka Server集群中每一个Server其实相对于其它Server来说都是Client)
      # 集群模式下,defaultZone应该指向其它Eureka Server,如果有更多其它Server实例,逗号拼接即可
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
    register-with-eureka: false  # 集群模式下可以改成true
    fetch-registry: false # 集群模式下可以改成true

 

验证

  • 执?启动类CloudEurekaServerApplication的main函数

  • 访问http://127.0.0.1:8761,如果看到如下??(Eureka注册中?后台),则表明EurekaServer 发布成功

技术图片

二、高可用注册中心搭建

在现有单机版注册中心上搭建

1、拷贝一份demo-eureka-server-8671 为 demo-eureka-server-8762

2、配置host

127.0.0.1 CloudEurekaServerA
127.0.0.1 CloudEurekaServerB
  • 修改项目名称

  • pom.xml项目名称,端口

  • .iml名称

导入IDEA,检查修改内容

1、修改demo-eureka-server-8671 中的pom.xml

  • eureka. instance.hostname= CloudEurekaServerA # 当前eureka实例的主机名

  • eureka.client.service-url.defaultZone=http://CloudEurekaServerB:8762/eureka

  • eureka.client.register-with-eureka= true # 单机版为false

  • eureka.client.fetch-registry= true # 单机版为false

#eureka server服务端口
server:
  port: 8761
spring:
  application:
    name: cloud-eureka-server # 应用名称,应用名称会在Eureka中作为服务名称
    # eureka 客户端配置(和Server交互),Eureka Server 其实也是一个Client
eureka:
  instance:
    hostname: CloudEurekaServerA  # 当前eureka实例的主机名
    prefer-ip-address: true
    instance-id: ${spring.cloud.client.ip-address}:${spring.application.name}:${server.port}
  client:
    service-url:
      # 配置客户端所交互的Eureka Server的地址(Eureka Server集群中每一个Server其实相对于其它Server来说都是Client)
      # 集群模式下,defaultZone应该指向其它Eureka Server,如果有更多其它Server实例,逗号拼接即可
      defaultZone: http://CloudEurekaServerB:8762/eureka
    register-with-eureka: true  # 集群模式下可以改成true
    fetch-registry: true # 集群模式下可以改成true

 

1、修改demo-eureka-server-8762 中的pom.xml

  • eureka. instance.hostname= CloudEurekaServerB # 当前eureka实例的主机名

  • eureka.client.service-url.defaultZone=http://CloudEurekaServerA:8761/eureka

  • eureka.client.register-with-eureka= true # 单机版为false

  • eureka.client.fetch-registry= true # 单机版为false

#eureka server服务端口
server:
  port: 8762
spring:
  application:
    name: cloud-eureka-server # 应用名称,应用名称会在Eureka中作为服务名称
?
    # eureka 客户端配置(和Server交互),Eureka Server 其实也是一个Client
eureka:
  instance:
    hostname: CloudEurekaServerB  # 当前eureka实例的主机名
    prefer-ip-address: true
    instance-id: ${spring.cloud.client.ip-address}:${spring.application.name}:${server.port}
  client:
    service-url: # 配置客户端所交互的Eureka Server的地址
      defaultZone: http://CloudEurekaServerA:8761/eureka
    register-with-eureka: true
    fetch-registry: true

验证,启动demo-eureka-server-8671、demo-eureka-server-8672

访问、cloudeurekaservera:8761 、cloudeurekaservera:8762

技术图片

 

技术图片

二、spring cloud 注册与发现eureka注册中心

标签:cat   main函数   encoding   server   author   apache   依赖管理   api   strong   

原文地址:https://www.cnblogs.com/aGboke/p/13174523.html


评论


亲,登录后才可以留言!