《Spring Cloud Netflix》-- 服务注册和服务发现-Eureka的服务认证和集群

一、 Eureka的服务认证

1、 服务端添加依赖

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

2、 服务端添加配置

  服务认证
security.basic.enabled=true
security.user.name=roncoo
security.user.password=123456

3、 修改服务端和客户端的配置

eureka.client.serviceUrl.defaultZone=http://roncoo:123456@localhost:8761/eureka/

建议:
能在内网的,尽量在内网,这样既可以保障安全,也能降低复杂度。

二、 Eureka的集群


说明:启动3个注册中心,我们将roncoo1、roncoo2、roncoo3各自都将serviceUrl指向另外两个节点,即是roncoo1、roncoo2、roncoo3是两两互相注册的。

步骤:
1、设置hosts:C:WindowsSystem32driversetchosts;

# Cluster hosts
127.0.0.1roncoo1
127.0.0.1roncoo2
127.0.0.1roncoo3

2、修改配置
每个服务都需要相应的修改,服务-01

spring.application.name=spring-cloud-server-01
eureka.instance.hostname=roncoo1
eureka.client.serviceUrl.defaultZone=http://roncoo:123456@roncoo2:8762/eureka/,http://roncoo:123456@roncoo3:8763/eureka/

同理:服务-02,服务-03都做相对应的修改

3、配置修改
这里是为了测试,生产应该保持默认值:30s

eureka.instance.lease-renewal-interval-in-seconds=5

剔除失效服务的检测时间,默认值:60000,即60s

eureka.server.eviction-interval-timer-in-ms=5000

另一种集群方式(不可用):

说明:注册中心1指向注册中心2, 注册中心2指向注册中心3,那么当服务向注册中心1注册时,注册中心2中会有该服务的注册信息,但是注册中心3中没有。

结论:服务注册信息不会被二次传播。

证实:PeerAwareInstanceRegistryImpl类

// If it is a replication already, do not replicate again as this will create a poison replication
如果该注册信息是其它Eureka同步过的则不会再继续传播给自己的peer节点
// If the url represents this host, do not replicate to yourself.
如果是本机的,不要向自己发同步请求

参考内容:Spring Cloud 第一季

时间: 2024-09-18 16:34:42

《Spring Cloud Netflix》-- 服务注册和服务发现-Eureka的服务认证和集群的相关文章

8.2. Spring Cloud Netflix

8.2.1. Eureka Server 8.2.1.1. Maven <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/mave

Spring Cloud Netflix

Spring Cloud Netflix 官方文档

《Spring Cloud Netflix》 -- 服务注册和服务发现-Eureka的常用配置

一.版本的说明 Angel版本对应Spring Boot 1.2.x,可以使用Spring Boot 1.3.x: Brixton版本对应Spring Boot 1.3.x,可以使用Spring Boot 1.4.x: Camden版本对应Spring Boot 1.4.x,可以使用Spring Boot 1.5.x: Dalston版本对应Spring Boot 1.5.x 二.应用进行热部署 添加依赖: <dependency> <groupId>org.springframe

spring cloud 学习(9) - turbine stream无法在eureka注册的解决办法

turbine是啥就不多解释了,初次接触的可以移步spring cloud 学习(4) -

Spring Cloud连载(4)第一个Eureka程序

本站小福利 点我获取阿里云优惠券 原文作者:杨大仙的程序空间 4 微服务发布与调用       要点              认识Eureka框架              运行Eureka服务器              发布微服务              调用微服务         本章将讲述Spring Cloud中Eureka的使用,包括在Eureka服务器上发布.调用微服务,Eureka的配置以及Eureka集群等内容. 4.1 Eureka介绍         Sprin

Spring cloud--服务注册和服务发现-Eureka 的使用

一.Spring Cloud Netflix 该项目是Spring Cloud的核心子项目,是对Netflix公司一系列开源产品的封装.它为Spring Boot应用提供了自配置的整合,只需要通过一些简单的注解,就可以快速地在Spring Cloud的应用中使用起来. 它主要提供的模块包括: 服务发现注册(Eureka) 客户端负载均衡(Ribbon) 断路器(Hystrix) 智能路由(Zuul)   开源地址: http://netflix.github.io/ https://github

Spring Cloud 接入 EDAS 之服务发现篇

目前 EDAS 已经完全支持 Spring Cloud 应用的部署了,您可以直接将 Spring Cloud 应用部署到 EDAS 中. 同时,为了更好地将阿里中间件的功能以云服务的方式提供给大家,我们也对 Spring Cloud 中的一些组件进行了加强或替换的工作. 让我们先来聊聊服务发现.我们知道原生的 Spring Cloud 支持多种服务注册与发现的方式,Eureka . Consul . Zookeeper 等,目前使用最多最广的就是 Eureka了,那我们就先从一个简单的 Eure

《Spring Cloud与Docker微服务架构实战》配套代码

不才写了本使用Spring Cloud玩转微服务架构的书,书名是<Spring Cloud与Docker微服务架构实战> - 周立,已于2017-01-12交稿.不少朋友想先看看源码,现将代码放出. 本次放出的代码: 共计70+个DEMO 覆盖Eureka.Ribbon.Feign.Hystrix.Zuul.Spring Cloud Config.Spring Cloud Bus.Spring Cloud Sleuth.Docker.Docker Compose等. 1-11章代码地址: ht

使用 Eureka 实现服务注册与发现

Eureka 是 Netflix 出品的用于实现服务注册和发现的工具. Spring Cloud 集成了 Eureka,并提供了开箱即用的支持.其中, Eureka 又可细分为 Eureka Server 和 Eureka Client. 本例子将演示如何通过 Spring Cloud Eureka 来快速实现服务的注册和发现. 开发环境 Gradle 4.0 Spring Boot 2.0.0.M3 Spring Cloud Netflix Eureka Server Finchley.M2