Eclipse tiempo de ejecución de configuración SpringCloud (+ 2.2.4 Hoxton) Marco + Micro servicios para construir cúmulo alta disponibilidad Eureka y Eureka servidor

springcloud es un maestro de la arquitectura micro-servicio, basado en la construcción springboot, se han integrado una serie de componentes excelentes.
Aquí Insertar imagen Descripción
documento chino: https: //springcloud.cc/
documento oficial: http: //projects.spring.io/spring-cloud/#quick-start

Build Environment

Por favor asegúrese de anotar la relación entre los partidos de la versión de arranque de la primavera y la primavera versión de la nube: https: //spring.io/projects/spring-cloud

software edición
Nube de primavera Hoxton.RELEASE
primavera de arranque 2.2.4.RELEASE
JDK 1.8
Maven 3.6

En primer lugar, crear un registro

Aquí Insertar imagen Descripción
Preparación del archivo de POM para añadir Primavera-Cloud paquete de aplicación básica

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <!-- 模型版本。maven2.0必须是这样写,现在是maven2唯一支持的版本 -->
  <modelVersion>4.0.0</modelVersion>
  <!-- 项目的的唯一标识符,并且配置时生成的路径也是由此生成,maven会将该项目打成的jar包放本地路径:/com/springcloud --> 
  <groupId>com.springcloud</groupId>
  <!-- 构件的标识符,它和group ID一起唯一标识一个构件,一个groupId下面可能多个项目,就是靠artifactId来区分的。
  Maven为项目产生的构件包括:JARs,源码,二进制发布和WARs等 -->
  <artifactId>springcloud-root</artifactId>
  <!-- 项目当前版本号,格式为:主版本.次版本.增量版本-限定版本号 -->
  <version>0.0.1-SNAPSHOT</version>
  <!-- 项目产生的构件类型,如pom,jar, maven-plugin, ejb, war, ear, rar, par,默认为jar -->
  <packaging>pom</packaging>
  <!-- 项目的名称, Maven产生的文档用 --> 
  <name>spring-cloud</name>
  <!-- 项目主页的URL, Maven产生的文档用 -->
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  
  <!-- 父项目的坐标。如果项目中没有规定某个元素的值,那么父项目中的对应值即为项目的默认值。坐标包括group ID,artifact ID和 version。 --> 
  <parent>
    <!-- 被继承的父项目的唯一标识符 -->
    <groupId>org.springframework.boot</groupId>
    <!-- 被继承的父项目的构件标识符 -->
    <artifactId>spring-boot-starter-parent</artifactId>
    <!-- 被继承的父项目的版本 --> 
    <version>2.2.4.RELEASE</version>
  </parent>
  <modules>
    <!--注册中心项目-->
    <module>spring-register</module>
    <module>springcloud-eureka</module>
    <module>springcloud-common</module>
    <module>springcloud-zuul</module>
    <module>springcloud-eureka-cluster</module>
  </modules>
 
  <!-- 该元素描述了项目相关的所有依赖。 这些依赖组成了项目构建过程中的一个个环节。自动从项目定义的仓库中下载。--> 
  <dependencyManagement>
    <dependencies>
      <dependency>
        <!-- 依赖的group ID --> 
        <groupId>org.springframework.cloud</groupId>
        <!-- 依赖的artifact ID -->
        <artifactId>spring-cloud-dependencies</artifactId>
        <!-- 依赖的版本号。 在Maven 2里, 可以配置成版本号的范围。 -->
        <version>Hoxton.RELEASE</version>
        <!-- 依赖类型。 -->
        <type>pom</type>
        <!-- 依赖范围。在项目发布过程中,帮助决定哪些构件被包括进来
           - compile :默认范围,用于编译 
           - provided:类似于编译,但支持你期待jdk或者容器提供,类似于classpath 
           - runtime: 在执行时需要使用 
           - test: 用于test任务时使用 
           - system: 需要外在提供相应的元素。通过systemPath来取得 
           - systemPath: 仅用于范围为system。提供相应的路径 
           - optional: 当项目自身被依赖时,标注依赖是否传递。用于连续依赖时使用 --> 
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <!--使用aliyun镜像-->
  <repositories>
    <repository>
      <id>alimaven</id>
      <name>Maven Aliyun Mirror</name>
      <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
    </repository>
  </repositories>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

En segundo lugar, crear un proyecto de registro springcloud-Eureka

arquitectura de micro-servicio es la parte central de la gestión de servicios, el componente más básico de la gobernabilidad es un centro de servicio registrada. Primavera Nube apoyo Zookeeper, Cónsul y Eureka, la recomendación oficial de Eureka.

Crear un módulo maven, designado por el experto directorio padre

Aquí Insertar imagen Descripción

Agregar archivo dependencias pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.springcloud</groupId>
    <artifactId>springcloud-root</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>springcloud-eureka</artifactId>
  <name>springcloud-eureka</name>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
      <version>2.2.1.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-webflux</artifactId>
      <version>2.2.4.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
primavera-nube-arranque-Eureka-servidor: Tarro falta 错误
Project build error: 'dependencies.dependency.version' for org.springframework.cloud:spring-cloud-starter-eureka-server:jar is missing.

cambiar: primavera-nube-motor de arranque-Eureka-servidor para primavera-nube-motor de arranque-netflix-Eureka-servidor

Agregar clase de arranque del registro

Aquí Insertar imagen Descripción

package org.springcloud.eureka;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication //spring-boot 启动注解
@EnableEurekaServer // spring-cloud 服务注解

public class RegisterMain 
{
    public static void main( String[] args )
    {
    	SpringApplication.run(RegisterMain.class, args);
    }
}

archivo de configuración Application.yml

Aquí Insertar imagen Descripción

spring:
  application:
    # 当前服务名
    name: springcloud-eureka
  freemarker:
    prefer-file-system-access: false
server:
  # 端口号
  port: 8899
---
eureka:
  instance:
    hostname: localhost
  client:
    # 检索服务
    fetch-registry: false
    # 是否将自己注册到eureka
    register-with-eureka: false
    # 客户端默认去这个地址找注册中心
    service-url:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
  server:
    # 当eureka启动时,不能从集群节点中获取到instance注册信息,应该等多久
    wait-time-in-ms-when-sync-empty: 0
    enable-self-preservation: true
    # eureka多长时间更新一次数据
    peer-eureka-nodes-update-interval-ms: 100000
ERROR org.springframework.boot.SpringApplication - Ejecutar la aplicación no 错误
15:02:33.112 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>([Ljava/lang/Object;)V
	at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:157)
	at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:98)
	at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:64)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:127)
	at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:76)
	at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:53)
	at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:345)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
	at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:140)
	at org.springcloud.eureka.RegisterMain.main(RegisterMain.java:16)

arranque de primavera compatibilidad de la versión causó modificar el archivo de configuración en pom.xml, versión springcloud corresponde con springboot de ellos pueden ser resueltos.

relación combina con el modelo y la primavera de arranque resorte versiones nube:
https://spring.io/projects/spring-cloud

Nube de primavera primavera de arranque
hoxton 2.2.x
Greenwich 2.1.x
Finchley Compatible 2.0.x primavera de arranque, no es compatible con 1.5.x primavera de arranque
Dalston 和 Edgware Compatible 1.5.x primavera de arranque, no es compatible con 2.0.x primavera de arranque
Camden Compatible 1.4.x primavera de arranque, también compatible con 1.5.x primavera de arranque
Brixton Compatible 1.3.x primavera de arranque, también compatible con 1.4.x primavera de arranque
Error al iniciar 错误
***************************
APPLICATION FAILED TO START
***************************

Description:

An attempt was made to call a method that does not exist. The attempt was made from the following location:

    org.springframework.cloud.client.discovery.health.DiscoveryCompositeHealthIndicator.<init>(DiscoveryCompositeHealthIndicator.java:41)

The following method did not exist:

    org.springframework.boot.actuate.health.CompositeHealthIndicator.<init>(Lorg/springframework/boot/actuate/health/HealthAggregator;)V

The method's class, org.springframework.boot.actuate.health.CompositeHealthIndicator, is available from the following locations:

    jar:file:/E:/SpringBoot/Maven-Repository/org/springframework/boot/spring-boot-actuator/2.2.4.RELEASE/spring-boot-actuator-2.2.4.RELEASE.jar!/org/springframework/boot/actuate/health/CompositeHealthIndicator.class

It was loaded from the following location:

    file:/E:/SpringBoot/Maven-Repository/org/springframework/boot/spring-boot-actuator/2.2.4.RELEASE/spring-boot-actuator-2.2.4.RELEASE.jar

La versión con springboot de springcloud de la correspondencia puede ser resuelto.

No se puede iniciar el servidor web reactiva 错误
org.springframework.context.ApplicationContextException: Unable to start reactive web server; nested exception is org.springframework.context.ApplicationContextException: Unable to start ReactiveWebApplicationContext due to missing ReactiveWebServerFactory bean.
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.onRefresh(ReactiveWebServerApplicationContext.java:81) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:544) ~[spring-context-5.2.3.RELEASE.jar:5.2.3.RELEASE]
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:747) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:315) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:140) [spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springcloud.eureka.RegisterMain.main(RegisterMain.java:15) [classes/:na]
Caused by: org.springframework.context.ApplicationContextException: Unable to start ReactiveWebApplicationContext due to missing ReactiveWebServerFactory bean.
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.getWebServerFactoryBeanName(ReactiveWebServerApplicationContext.java:100) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.createWebServer(ReactiveWebServerApplicationContext.java:88) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]
	at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.onRefresh(ReactiveWebServerApplicationContext.java:78) ~[spring-boot-2.2.4.RELEASE.jar:2.2.4.RELEASE]

Añadir la dependencia webflux

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-webflux</artifactId>
  <version>2.2.4.RELEASE</version>
</dependency>

Ejecutar el inicio de clases, visite http: // localhost: 8899 a la figura siguiente
Aquí Insertar imagen Descripción
registro se ha completado.

En tercer lugar, la configuración de contraseña de registro

Aumento de pom.xml en:

   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-security</artifactId>
      <version>2.2.4.RELEASE</version>
    </dependency>

En este sitio web puede versión:
https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-security

archivo de configuración aumento application.yml

spring:
  application:
    name: springcloud-eureka
  freemarker:
    prefer-file-system-access: false
  security:
    basic: 
      enable: true
    user: 
      name: admin
      password: 123456
server:
  port: 8899
---
eureka:
  instance:
    hostname: localhost
  client:
    fetch-registry: false
    register-with-eureka: false
    service-url:
      defaultZone: http://${security.user.name}:${security.user.password}@${eureka.instance.hostname}:${server.port}/eureka/
  server:
    wait-time-in-ms-when-sync-empty: 0
    enable-self-preservation: true
    peer-eureka-nodes-update-interval-ms: 100000

Después de arrancar de nuevo en la dirección http: // localhost: 8899, la siguiente figura
Aquí Insertar imagen Descripción
introduzca el nombre de usuario y contraseña para acceder a la página

En cuarto lugar, para crear un registro de servicios de registro

Crear un proyecto de módulo experto
Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción

Agregar archivo dependencias pom.xml

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.springcloud</groupId>
    <artifactId>springcloud-root</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>springcloud-common</artifactId>
  <name>springcloud-common</name>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
      <version>2.2.1.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-webflux</artifactId>
      <version>2.2.4.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

Agregar la clase de cliente de inicio

package org.springcloud.common;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;

@SpringBootApplication
@EnableEurekaClient //Eureka Client

public class CommonClient 
{
    public static void main( String[] args )
    {
    	SpringApplication.run(CommonClient.class, args);
    }
}

archivo de configuración Application.yml

spring:
  application:
    name: springcloud-common
  freemarker:
    prefer-file-system-access: false
  security:
    user:
      name: admin
      password: 123456
    
server:
  port: 8001
  
eureka:
  instance:
    hostname: localhost
  client:
    service-url:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@${eureka.instance.hostname}:8899/eureka/

El cliente se ejecuta la clase de arranque, se puede ver que el cliente se ha registrado en el servidor, como se muestra a continuación
Aquí Insertar imagen Descripción

no puede ejecutar ninguna solicitud en cualquier servidor know 错误

Añadir un servicio de clase de certificación de seguridad en eurka
Aquí Insertar imagen Descripción

package org.springcloud.eureka;

import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.config.http.SessionCreationPolicy;

@EnableWebSecurity
@Configuration
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        // Configure HttpSecurity as needed (e.g. enable http basic).
        http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.NEVER);
        http.csrf().disable();
        //为了可以使用 http://${user}:${password}@${host}:${port}/eureka/ 这种方式登录,所以必须是httpBasic,
        http.authorizeRequests().anyRequest().authenticated().and().httpBasic();
    }
}

Vuelva a ejecutar.

Cinco, Eureka alta disponibilidad Cluster

Aquí Insertar imagen Descripción
Los application.yml tercios de copia de archivo de aplicaciones peer1.yml, aplicación peer2.yml , aplicación peer3.yml.
Aquí Insertar imagen Descripción
CI se añadieron como sigue:

  • aplicación peer1.yml
spring:
  application:
    name: springcloud-eureka-cluster
  freemarker:
    prefer-file-system-access: false
  security:
    user: 
      name: admin
      password: 123456
server:
  port: 8897
---
eureka:
  instance:
    hostname: eureka-peer1.com
    instance-id: eureka-peer1
  client:
    fetch-registry: true
    register-with-eureka: true
    service-url:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer2.com:8898/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer3.com:8899/eureka/
  • aplicación peer2.yml
spring:
  application:
    name: springcloud-eureka-cluster
  freemarker:
    prefer-file-system-access: false
  security:
    user: 
      name: admin
      password: 123456
server:
  port: 8898
---
eureka:
  instance:
    hostname: eureka-peer2.com
    instance-id: eureka-peer2
  client:
    fetch-registry: true
    register-with-eureka: true
    service-url:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer1.com:8897/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer3.com:8899/eureka/
  • aplicación peer3.yml
spring:
  application:
    name: springcloud-eureka-cluster
  freemarker:
    prefer-file-system-access: false
  security:
    user: 
      name: admin
      password: 123456
server:
  port: 8899
---
eureka:
  instance:
    hostname: eureka-peer3.com
    instance-id: eureka-peer3
  client:
    fetch-registry: true
    register-with-eureka: true
    service-url:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer1.com:8897/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer2.com:8898/eureka/

Modificar C: \ Windows \ System32 \ drivers \ etc \ hosts

127.0.0.1 eureka-peer1.com eureka-peer2.com eureka-peer3.com

Maven instalar el paquete frasco de generación, para iniciar los servidores a través de tres propiedades spring.profiles.active fueron:

cd E:\SpringBoot\SpringCloud\springcloud-root\springcloud-eureka-cluster\target
java -jar springcloud-eureka-cluster-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer1
java -jar springcloud-eureka-cluster-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer2
java -jar springcloud-eureka-cluster-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer3

También se puede configurar para empezar Ejecutar configuraciones
Aquí Insertar imagen Descripción

  • acceso http://eureka-peer1.com:8897/
    Aquí Insertar imagen Descripción

  • acceso http://eureka-peer2.com:8898/
    Aquí Insertar imagen Descripción

  • acceso http://eureka-peer3.com:8899/
    Aquí Insertar imagen Descripción

Eureka nodos de clúster están registrados error de servicio en los no disponibles-réplicas

  1. Cada nombre de la aplicación nodo debe ser idéntico
  2. Cuando una prueba local de cada nodo en la misma máquina, el nombre de host necesidad de llenar en el host local, cada nodo utiliza su propio anfitrión
  3. prefieren dirección-ip-predeterminado se establece en relleno cierto o no.
  4. register-con-Eureka a buscar el registro son verdad
  5. defaultzone no utiliza localhost, necesidad de utilizar su propio nombre de dominio configurado en el huésped en unos elementos de configuración de clúster distintas de las propias en todos los nodos.

Sin compilador se proporciona en este entorno. Tal vez se están ejecutando en un JRE en lugar de un JDK? 错误

https://blog.csdn.net/lslk9898/article/details/73836745

En sexto lugar, los proveedores de servicios a lanzar varias instancias

Start pluralidad ejemplo-Eureka-proveedor springcloud, puertos 8001,8002 y 8003, respectivamente
Aquí Insertar imagen Descripción

  • aplicación provider1.yml
spring:
  application:
    name: springcloud-eureka-provider
  freemarker:
    prefer-file-system-access: false
  security:
    user:
      name: admin
      password: 123456
    
server:
  port: 8001
  
eureka:
  instance:
    hostname: eureka-provider1.com
    instance-id: eureka-provider1
  client:
    service-url:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer1.com:8897/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer2.com:8898/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer3.com:8899/eureka/
  • aplicación provider2.yml
spring:
  application:
    name: springcloud-eureka-provider
  freemarker:
    prefer-file-system-access: false
  security:
    user:
      name: admin
      password: 123456
    
server:
  port: 8002
  
eureka:
  instance:
    hostname: eureka-provider2.com
    instance-id: eureka-provider2
  client:
    service-url:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer1.com:8897/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer2.com:8898/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer3.com:8899/eureka/
  • aplicación provider3.yml
spring:
  application:
    name: springcloud-eureka-provider
  freemarker:
    prefer-file-system-access: false
  security:
    user:
      name: admin
      password: 123456
    
server:
  port: 8003
  
eureka:
  instance:
    hostname: eureka-provider3.com
    instance-id: eureka-provider3
  client:
    service-url:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer1.com:8897/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer2.com:8898/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@eureka-peer3.com:8899/eureka/

Modificar C: \ Windows \ System32 \ drivers \ etc \ hosts

127.0.0.1 eureka-provider1.com eureka-provider2.com eureka-provider3.com

Configuración de iniciado por Ejecutar configuraciones
Aquí Insertar imagen Descripción

Ver registro de Eureka

http://eureka-peer1.com:8897/
Aquí Insertar imagen Descripción
http://eureka-peer2.com:8898/,http://eureka-peer3.com:8899/ resultados anteriores.
Tres instancia proveedor de servicios se ha registrado correctamente.

Publicado 72 artículos originales · ganado elogios 66 · Vistas de 150.000 +

Supongo que te gusta

Origin blog.csdn.net/miaodichiyou/article/details/104160284
Recomendado
Clasificación