Spring Cloud Eureka的集羣配置(六)

使用3個Eureka服務搭建集羣

Eureka1:端口爲7001;java

Eureka2:端口爲7002;mysql

Eureka3:端口爲7003;spring

它們之間是兩兩互相註冊的關係sql

 1、Eureka的集羣搭建

一、再次建立2個Eureka工程

工程名:microservicecloud-eureka-7002數據庫

工程名:microservicecloud-eureka-7003mybatis

二、pom.xml文件

<dependencies>
        <!--eureka-server服務端 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-eureka-server</artifactId>
        </dependency>
</dependencies>

三、域名映射

找到 "C:\Windows\System32\drivers\etc\hosts" 文件,並在hosts文件中增長以下內容:app

127.0.0.1 eureka7001.com
127.0.0.1 eureka7002.com
127.0.0.1 eureka7003.com

四、配置文件的修改

(1)工程 microservicecloud-eureka-7001 的 application.yml文件作以下修改:ide

server: port: 7001 eureka: instance: hostname: eureka7001.com #eureka服務端的實例名稱 client: register-with-eureka: false #false表示不向註冊中心註冊本身。Eureka不響本身註冊 fetch-registry: false #false表示本身端就是註冊中心,個人職責就是維護服務實例,並不須要去檢索服務 service-url: defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/

(2)工程 microservicecloud-eureka-7002 的 application.yml文件作以下修改:微服務

server: port: 7002 eureka: instance: hostname: eureka7002.com #eureka服務端的實例名稱 client: register-with-eureka: false #false表示不向註冊中心註冊本身。Eureka不響本身註冊 fetch-registry: false #false表示本身端就是註冊中心,個人職責就是維護服務實例,並不須要去檢索服務 service-url: defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7003.com:7003/eureka/

(3)工程 microservicecloud-eureka-7003 的 application.yml文件作以下修改:fetch

server: port: 7003 eureka: instance: hostname: eureka7003.com #eureka服務端的實例名稱 client: register-with-eureka: false #false表示不向註冊中心註冊本身。Eureka不響本身註冊 fetch-registry: false #false表示本身端就是註冊中心,個人職責就是維護服務實例,並不須要去檢索服務 service-url: defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/

 

2、微服務註冊到Eureka集羣中

(1)建立一個微服務

微服務的啓動類上增長 @EnableEurekaClient 註解;

@SpringBootApplication
@EnableEurekaClient     //本服務啓動後自動註冊到eureka中
@EnableDiscoveryClient  //服務的發現, 暴露出來
public class DeptProvider8001_App
{
    public static void main(String[] args)
    {
        SpringApplication.run(DeptProvider8001_App.class, args);
    }
}

 

(2)微服務註冊到Eureka集羣的全部節點上

微服務yaml文件以下所示:

server:
  port: 8001

mybatis:
  config-location: classpath:mybatis/mybatis.cfg.xml        # mybatis配置文件所在路徑
  type-aliases-package: com.yufeng.springcloud.entities    # 全部Entity別名類所在包
  mapper-locations:
  - classpath:mybatis/mapper/**/*.xml                       # mapper映射文件

spring:
   application:
    name: microservicecloud-dept
   datasource:
    type: com.alibaba.druid.pool.DruidDataSource            # 當前數據源操做類型
    driver-class-name: org.gjt.mm.mysql.Driver              # mysql驅動包
    url: jdbc:mysql://192.168.172.20:3306/cloudDB01              # 數據庫名稱
    username: root
    password: root
    dbcp2:
      min-idle: 5                                           # 數據庫鏈接池的最小維持鏈接數
      initial-size: 5                                       # 初始化鏈接數
      max-total: 5                                          # 最大鏈接數
      max-wait-millis: 200                                  # 等待鏈接獲取的最大超時時間


eureka:
  client:  # 客戶端註冊進eureka內
    service-url:
      defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/,http://eureka7003.com:7003/eureka/
  instance:
    instance-id: microservicecloud-provider-dept-8001
    prefer-ip-address: true  # 訪問路徑能夠顯示IP

info:
  app.name: yufeng-microservicecloud
  company.name: www.yufeng.com
  build.artifactId: $project.artifactId$
  build.version: $project.version$
相關文章
相關標籤/搜索