博客
关于我
spring cloud Eureka 的HA 高可用的实现
阅读量:389 次
发布时间:2019-03-05

本文共 2576 字,大约阅读时间需要 8 分钟。

Spring Cloud Eureka 高可用架构部署指南

项目结构概述

本文将介绍如何配置并部署一个基于 Spring Cloud Eureka 的高可用架构(HA)。该架构将基于三个节点(node1、node2、node3)实现服务注册与发现,确保系统的高可用性和自动化容灾能力。


模块化项目结构

项目主要包含以下几个关键模块:

  • POM文件:配置了必要的依赖项,包括 Eureka 服务服务器和相关组件。
  • 启动类:定义了应用程序的主启动类及其相关配置。
  • 资源配置文件:包含了服务的基础配置信息。
  • 应用配置文件:分为公共配置文件和节点特定配置文件,分别定义了每个节点的运行环境参数和服务注册信息。

  • 1. 项目依赖管理

    在项目的 pom.xml 文件中,主要依赖了以下组件:

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

    此外,项目还依赖了 Spring Boot 核心组件和相关自动化配置模块。


    2. 应用启动类

    启动类 EurekaHaApp 位于 com.ljf.weifuwu.springcloud.ha.eureka 包下,其代码如下:

    package com.ljf.weifuwu.springcloud.ha.eureka;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;@SpringBootApplication@EnableEurekaServerpublic class EurekaHaApp {    public static void main(String[] args) {        SpringApplication.run(EurekaHaApp.class, args);        System.out.println("EurekaHaApp 高可用启动成功了!!!");    }}

    此启动类标注了 @SpringBootApplication@EnableEurekaServer 两个注解,分别表示启用 Spring Boot 的自动化配置和 Eureka 服务注册中心功能。


    3. 资源配置文件

    资源配置文件位于 resources 目录下,主要用于定义服务的基本运行环境参数和服务注册中心相关配置。


    4. 应用配置文件

    系统采用了基于 YAML 格式的配置文件进行管理,具体包括以下几个文件:

  • application.yml:作为公共配置文件,主要定义了服务的基本信息和运行环境参数。
  • application-nodeX.yml(X 为节点编号):每个节点都有对应的配置文件,定义了节点的特定运行参数和服务注册信息。
  • 公共配置文件 application.yml

    spring:    application:        name: ms-eureka-ha-center        profiles:            active: node1

    节点特定配置文件

    application-node1.yml

    server:    port: 2001eureka:    instance:        hostname: node1    client:        serviceUrl:            defaultZone: http://node2:2002/eureka/,http://node3:2003/eureka/

    application-node2.yml

    server:    port: 2002eureka:    instance:        hostname: node2    client:        serviceUrl:            defaultZone: http://node1:2001/eureka/,http://node3:2003/eureka/

    application-node3.yml

    server:    port: 2003eureka:    instance:        hostname: node3    client:        serviceUrl:            defaultZone: http://node1:2001/eureka/,http://node2:2002/eureka/

    5. 节点配置与启动

    5.1 修改主机名

    在 Windows 系统中,需要修改 C:\Windows\System32\drivers\etc\hosts 文件,将以下映射关系添加到 hosts 文件中:

    node1 localhostnode2 localhostnode3 localhost

    5.2 启动节点

    按照以下顺序依次启动三个节点:

  • EurekaHaApp-node1:启动时可能会出现一些依赖错误,可以暂时忽略。
  • EurekaHaApp-node2:与 node1 同样可能会出现依赖错误,暂时忽略。
  • EurekaHaApp-node3:启动时不会出现错误。

  • 6. 访问验证

    访问节点服务

  • 访问 node1:通过浏览器访问 http://localhost:2001
  • 访问 node2:通过浏览器访问 http://localhost:2002
  • 访问 node3:通过浏览器访问 http://localhost:2003

  • 通过以上步骤,可以完成一个基于 Spring Cloud Eureka 的高可用架构的部署与配置。该架构不仅确保了服务的注册与发现功能,还通过节点之间的互相注册和心跳检测机制,实现了服务的高可用性和容灾能力。

    转载地址:http://pouzz.baihongyu.com/

    你可能感兴趣的文章
    Oracle Validated Configurations 安装使用 说明
    查看>>
    oracle where 条件的执行顺序分析1
    查看>>
    oracle 中的 CONCAT,substring ,MINUS 用法
    查看>>
    Oracle 中的 decode
    查看>>
    oracle 中表一对多取多方的最新的一条数据
    查看>>
    oracle 使用 PL/SQL Developer创建表并插入单条、多条数据
    查看>>
    oracle 使用leading, use_nl, rownum调优
    查看>>
    oracle 修改字段类型方法
    查看>>
    Oracle 修改数据库表数据提交之后进行回滚
    查看>>
    UML-总结
    查看>>
    oracle 内存参数示意图
    查看>>
    Oracle 写存储过程的一个模板还有一些基本的知识点
    查看>>
    UML- 配置图(部署图)
    查看>>
    oracle 切割字符串加引号_使用Clean() 去掉由函数自动生成的字符串中的双引号...
    查看>>
    Oracle 创建 DBLink 的方法
    查看>>
    oracle 创建job
    查看>>
    oracle 创建一个用户,只能访问指定的对象
    查看>>
    oracle 创建双向备份,Materialized View 物化视图实现 Oracle 表双向同步
    查看>>
    oracle 创建字段自增长——两种实现方式汇总
    查看>>
    Oracle 升级10.2.0.5.4 OPatch 报错Patch 12419392 Optional component(s) missing 解决方法
    查看>>