eureka 级群搭建- 踩坑- 2020 - win10 - ieda

在自己的win10系统下搭建eureka级群

问题说明

项目对应git 地址—> gitee
简单来说,就是启动三个erreka服务,让他们相互连。

前提条件

  • 配置好自己的本地的host
    eureka 级群搭建- 踩坑- 2020 - win10 - ieda_第1张图片
  • 我这里用的 cloud 是 Hoxton.SR4版本, boot是2.2.1.RELEASE版本

代码说明

引入maven依赖

        
    
        org.springframework.cloud
        spring-cloud-starter-eureka-server
        1.4.7.RELEASE
    

application.yml 编写

这里编写了三个eureka服务配置,对应的端口分别为 7001,7002,7003

  • 7001
server:
  port: 7001

# Eureka 配置
eureka:
  instance:
    hostname: eureka7001.com # eureka服务示例名称
  client:
    register-with-eureka: false # 是否将自己注册到eureka中
    fetch-registry: false # false 表示自己就是服务端,职责是维护服务示例,并不需要去检索服务
    service-url:
      # 设置与eureka sever交互的地址查询服务和注册服务都要依赖这个defaultZone地址
#      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
      defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
  • 7002
server:
  port: 7002

# Eureka 配置
eureka:
  instance:
    hostname: eureka7002.com # eureka服务示例名称
  client:
    register-with-eureka: false # 是否将自己注册到eureka中
    fetch-registry: false # false 表示自己就是服务端,职责是维护服务示例,并不需要去检索服务
    service-url:
      # 设置与eureka sever交互的地址查询服务和注册服务都要依赖这个defaultZone地址
#      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
      defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7003.com:7003/eureka/
  • 7003
server:
  port: 7003

# Eureka 配置
eureka:
  instance:
    hostname: eureka7003.com # eureka服务示例名称
  client:
    register-with-eureka: false # 是否将自己注册到eureka中
    fetch-registry: false # false 表示自己就是服务端,职责是维护服务示例,并不需要去检索服务
    service-url:
      # 设置与eureka sever交互的地址查询服务和注册服务都要依赖这个defaultZone地址
#      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
      defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/

到此着三个eureka就联系提来了

启动类

以7001举例,其他一样,需要启动erreka服务端注解

@SpringBootApplication
@EnableEurekaServer // 注意别忘记启动
public class EurekaServer7001 {
    public static void main(String[] args) {
        SpringApplication.run(EurekaServer7001.class,args);
    }
}

注册服务

此时可以写个服务,将他注册到级群中去,服务就是正常的写法,这里只说明重要的注册部分

  • application.yml
# eureka 配置
eureka:
  client:
    service-url:
    # 这里这个defaultZone 千万别写错了,emm我第一次写错了 排查好久
      defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
  • pom.xml
        
        <dependency>
            <groupId>org.springframework.cloudgroupId>
            <artifactId>spring-cloud-starter-eurekaartifactId>
            <version>1.4.7.RELEASEversion>
        dependency>
  • 启动类
@SpringBootApplication
@EnableEurekaClient // 本服务启动之后会自动注册进Eureka中!
public class DeptProvider8001 {
    public static void main(String[] args) {
        SpringApplication.run(DeptProvider8001.class,args);
    }
}

效果展示

不论是在7001 7002 7003 中都可以看到,就表示搭建成功了
eureka 级群搭建- 踩坑- 2020 - win10 - ieda_第2张图片

注意点

  1. 本地一定要设置好host的映射,不然不好用
  2. 关于这个名字eureka.instance.hostname设置,之前用的localhost1,localhost2,localhost3 去配置不好使,望谨慎!

下接 :Ribbon+Rureka级群实现负载均衡

你可能感兴趣的:(Springcloud,java)