Linux搭建eureka集群,基于dns搭建eureka集群[通俗易懂]

Linux搭建eureka集群,基于dns搭建eureka集群[通俗易懂]eureka集群方案:1.通常我们部署的eureka节点多于两个,根据实际需求,只需要将相邻节点进行相互注册(eureka节点形成环状),就达到了高可用性集群,任何一个eureka节点挂掉不会受到影响。2.可能会有初学者和我一样,一开始的时候没有完全理解eureka集群的原理,直接把每个eureka节点的url写进配置文件,期望所有的eureka节点进行相互注册。实际上,节点间进行信息同步的时候,…

大家好,又见面了,我是你们的朋友全栈君。

eureka集群方案:

9a569eadcff88b6b9d01706d305ff91d.png

1.通常我们部署的eureka节点多于两个,根据实际需求,只需要将相邻节点进行相互注册(eureka节点形成环状),就达到了高可用性集群,任何一个eureka节点挂掉不会受到影响。

2.可能会有初学者和我一样,一开始的时候没有完全理解eureka集群的原理,直接把每个eureka节点的url写进配置文件,期望所有的eureka节点进行相互注册。实际上,节点间进行信息同步的时候,只会选取配置文件第一个eureka的url,除非发生url错误,才会依次选取有效url进行信息同步。

3.可能有的童鞋有这样的疑问,eureka节点形成环状以后,相隔的多个节点挂掉,eureka节点的数据就会出现不一致的情况。长话短说,要么忍,要么改变方案。

忍其实也是合理的,毕竟挂掉的eureka节点重新启动后会自动同步数据。

改变方案可以把所有的eureka进行相互注册,但把所有的eureka url都写一遍,这个着实有点令人不爽,万一新增节点,所有的节点都需要改一遍!!

所以我们很自然的想到了是否可以通过dns来解决上面的问题?eureka的开发者当然也想到了这种问题,并提供了基于dns的解方案。

一、搭建DNS服务器(unbutun环境)

1.ubuntu需安装bind9软件包来配置dns-server

apt-get install bind9

2.配置dns

2.1添加zone

vim /etc/bind/named.conf.local 加入以下配置,可参考/etc/bind/zones.frc1918中的格式

“eureka.com” { type master; file “/etc/bind/db.eureka.com”; };

2.2创建db.eureka.com文件(需要和2.1添加的file文件同名)

cp db.local db.eureka.com

2.3修改db.eureka.com

添加以下内容

txt.huabei.huabei  IN  TXT “huabei.eureka.com”

txt.huabei   IN TXT “192.168.0.1”  “192.168.0.2”  “192.168.3”

2.4修改named.conf.options配置文件,这里选用循环给出结果的方式

rrset-order { order cyclic; };

3.修改域名解析配置文件

vim /etc/resolv.conf

加入nameserver 192.168.0.1

注意nameserver顶格写 ip可配置本机ip

4.重启服务

/etc/init.d/bind9 restart

二、eureka集群配置

spring:

application:

name: eureka-server

server:

port: 8081

eureka:

environment: alpha

client:

region:  huabei

availability-zones:

huabei: hb10

eureka-server-d-n-s-name: huabei.eureka.com

use-dns-for-fetching-service-urls: true

eureka-server-port: 8081

三、总结

笔者也是首次使用spring-cloud,网上有很多适合入门的使用文档,但在实际项目应用中,我们需要进一步挖掘spring-cloud的特性。后续我继续分享关于eureka的相关知识,比如如何使用region、zone等。

SpringCloud学习之搭建eureka集群,手把手教学,新手教程

一.为什么需要集群 上一篇文章讲解了如何搭建单个节点的eureka,这篇讲解如何搭建eureka集群,这里的集群还是本地不同的端口执行三个eureka,因为条件不要允许,没有三台电脑,所以大家将就一下 …

基于docker搭建elasticsearch集群

es集群的搭建 – 基于单机搭建elasticsearch集群见官网 https://www.elastic.co/guide/en/elasticsearch/reference/current/d …

基于 twemproxy 搭建 redis 集群

概述 由于单台redis服务器的内存管理能力有限,使用过大内存redis服务器的性能急剧下降,且服务器发生故障将直接影响大面积业务.为了获取更好的缓存性能及扩展型,我们将需要搭建redis集群来满足需 …

SpringCloud搭建Eureka集群

第一部分:搭建Eureka Server集群 Step1:新建工程,引入依赖 依赖文件pom.xml如下 <?xml version=”1.0″ encoding=&quot …

搭建Eureka集群

1.pom文件 <?xml version=”1.0″ encoding=”UTF-8″?>

kubeadm搭建K8s集群及Pod初体验

基于Kubeadm 搭建K8s集群: 通过上一篇博客,我们已经基本了解了 k8s 的基本概念,也许你现在还是有些模糊,说真的我也是很模糊的.只有不断地操作去熟练,强化自己对他的认知,才能提升境界. 我 …

docker 搭建zookeeper集群和kafka集群

docker 搭建zookeeper集群 安装docker-compose容器编排工具 Compose介绍 Docker Compose 是 Docker 官方编排(Orchestration)项目之 …

随机推荐

PAT练习题目录

点题号就能查看题解了,另外代码也放在了开源中国码云上: 甲级:代码集合:https://git.oschina.net/firstmiki/PAT-Advanced-Level-Practise 10 …

slick for play 使用原生sql查询以及拼接sql

在play中用函数式框架slick来操作数据库是一件很爽的事情.但有时因为某些特殊场景又不得不用原生的sql了. 还好slick支持这种写法,可以看看slick官方文档,Slick Plain SQL …

Linux&lowbar;Shell&lowbar;grep

grep [选项] “搜索内容”  文件名 选项列表: -i 忽略大小写      -n 输出行号 -v 反向查找 –color=auto 搜索出的关键字用颜色显示   ll|g …

POJ 3255 Roadblocks(A&ast;求次短路)

Roadblocks Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 12167   Accepted: 4300 Descr …

OK335xS Linux kernel check clock 24M hacking

/****************************************************************************** * OK335xS Linux kern …

如何让Gridview在没有数据的时候显示表头&lpar;asp&period;net&rpar;

原文:如何让Gridview在没有数据的时候显示表头(asp.net) 1.前言 当对GridView控件进行数据绑定时,如果绑定的记录为空,网页上就不显示GridView,造成页面部分空白,页面布局 …

1113&colon; 零起点学算法20——输出特殊值II

1113: 零起点学算法20–输出特殊值II Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lldSubmitted: 207 …

Java泛型知识点全方位总结

前言 我一直认为泛型是编程语言设计中一个非常基本和重要的概念.Java中的泛型是什么?他们为什么在那里?他们是如何发展的?在学习基础知识时,对仿制药的透彻理解是非常重要的.因此,我阅读了

ES6的一些基本用法

● let ● variable hoisting ● arrow Function, Lambda表达式 ● Destructuring Assignments 解构赋值 ● 默认参数值 Defau …

解决 nfs挂载错误wrong fs type&comma; bad option&comma; bad superblock

yum install nfs-utils mount -t nfs 192.168.1.153:/taimei /taimei

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/135255.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • SpringBoot整合RabbitMQ之 典型应用场景实战一「建议收藏」

    SpringBoot整合RabbitMQ之 典型应用场景实战一「建议收藏」实战前言RabbitMQ作为目前应用相当广泛的消息中间件,在企业级应用、微服务应用中充当着重要的角色。特别是在一些典型的应用场景以及业务模块中具有重要的作用,比如业务服务模块解耦、异步通信、高并发限流、超时业务、数据延迟处理等。其中课程的学习链接地址:https://edu.csdn.net/course/detail/9314RabbitMQ官网拜读首先,让我们先拜读Ra…

  • 关闭eslint检测[通俗易懂]

    关闭eslint检测[通俗易懂]bulid>webpack.base.config.js将createLintingRule方法内容注释转载文章关闭eslint检测

  • SpringMVC-@RequestMapping的参数和用法

    SpringMVC-@RequestMapping的参数和用法RequestMapping里面的注解包含的参数如图:RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。@RequestMapping除了修饰方法,还可来修饰类:类定义处:提供初步的请求映射信息。相对于WEB应用的根目录;方法处:提供进一步的细分映射信息。相对于类定义处的URL。若类定义处未

  • Oracle获取字符串的最后几位

    Oracle获取字符串的最后几位substr(字符串,-10)Oracle字符串函数substr(字符串,截取开始位置,截取长度)1.如果最后一个截取长度参数为空,则表示从截取开始位置起截到最末2.如果截取开始位置为大于0的数字,则表示从字符串左数几位开始3.如果截取开始位置为小于0的数字,则表示从字符串右数几位开始……

    2022年10月27日
  • 一个不简单的Procedure body例子

    一个不简单的Procedure body例子1createorreplacepackagebodyCountBankData_20150617is2typecursorCommonisrefcursor;–游标类型3strSQLvarchar2(7000);–sql语句变量4strTemp…

  • 青苹果论坛重新开放[通俗易懂]

    青苹果论坛重新开放[通俗易懂]青苹果论坛重新开放

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号