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)
blank

相关推荐

  • js indexOf()用法

    js indexOf()用法&lt;1&gt;indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置。语法stringObject.indexOf(searchvalue,fromindex)参数 描述 searchvalue 必需。规定需检索的字符串值。 fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是0到stringObj…

  • Java读取pkl文件_theano csv到pkl文件

    Java读取pkl文件_theano csv到pkl文件我正在尝试将一个pkl文件从csv起点加载到theano中importnumpyasnpimportcsvimportgzip,cPicklefromnumpyimportgenfromtxtimporttheanoimporttheano.tensorasT#OpencsvfileandreadindatacsvFile=”filename.csv”my…

  • leetcode-148. 排序链表(链表排序)

    leetcode-148. 排序链表(链表排序)给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。进阶:你可以在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序吗?示例 1:输入:head = [4,2,1,3]输出:[1,2,3,4]示例 2:输入:head = [-1,5,3,4,0]输出:[-1,0,3,4,5]示例 3:输入:head = []输出:[] 提示:链表中节点的数目在范围 [0, 5 * 104] 内-105 <= Node.val &lt

  • 基于MAX31865的温度控制系统

    基于MAX31865的温度控制系统系统介绍这是之前写的关于MAX31865测温相关的文章,本次在此基础上又实现了一些新功能。总结——STM32F103C8T6通过MAX31865读取PT100电阻值STM32控制max31865,利用pt100测温度,利用0.96OLED液晶显示屏显示温度值。温度过高控制风扇开启,温度过低控制加热膜加热。后续需要增加温度过高或过低蜂鸣器响且液晶有提示报警类型。系统组成STM32F103C8T6小系统板单片机核心板STM32开发板学习板实验板(升级版)MAX31865RTD铂电阻温度检测器

  • android退出app的方法,Android 实现彻底退出自己APP 并杀掉所有相关的进程[通俗易懂]

    android退出app的方法,Android 实现彻底退出自己APP 并杀掉所有相关的进程[通俗易懂]彻底杀掉App相关进程的代码publicvoidkillAppProcess(){//注意:不能先杀掉主进程,否则逻辑代码无法继续执行,需先杀掉相关进程最后杀掉主进程ActivityManagermActivityManager=(ActivityManager)CurrentActivity.this.getSystemService(Context.ACTIVITY_SERVIC…

  • 算法练习:排列组合之组合和

    算法练习:排列组合之组合和

发表回复

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

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