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

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VUE(相关简介及初始)

    1.什么是vueVue是一个数据驱动页面的一个框架,基于MVVM模式,M指的是数据,V值得是视图,VM是视图模型,将数据绑定视图上(双向绑定)这个框架着重于VM部分2.VUE诞生的背景近几年来

    2022年3月29日
    41
  • months_between的使用

    months_between的使用months_between用于计算两个日期之间相差的月数语法:months_between(date1,date2)举例a20210201与20210301selectmonths_bet

    2022年6月30日
    28
  • allure 报告[通俗易懂]

    allure 报告[通俗易懂]一、简介二、下载安装三、报告生成四、环境配置五、Python使用allure方法一、简介官方文档:https://docs.qameta.io/allure/二、下载安装1、linux下载安装先检查是否安装npm:whichnpm 未安装npm的话:curl–silent–locationhttps://rpm.nodesource.com/setup_10.x|bash- 安装:yuminstall-ynodejs …

    2022年7月26日
    22
  • pycharm控制台不见了_pycharm中文注释乱码

    pycharm控制台不见了_pycharm中文注释乱码修改远程服务器编码为UTF-8修改本地服务器编码为UTF-8IDE设置工程编码等为UTF-8设置本地环境变量修改pycharm64.exe.vmoptions文件,添加一行:-Dfile.encoding=UTF-8单个文件修改默认编码为utf-8在文件的最顶部添加代码:#!/usr/bin/envpython#-*-encoding:utf-8-*-…

    2022年8月25日
    9
  • 简单理解伽马校正

    简单理解伽马校正伽马校正相关的资料说明很多,但其中不少内容都写的比较繁杂,令人难以理解,本文尝试简单解释一下伽马校正的相关内容~早期的CRT显示器存在非线性输出的问题,简单来说,你给CRT显示器输入(input)一个0.5(**注意,输入范围为[0,1]),CRT显示器的输出(output)并不是0.5,而是约等于0.218,输入与输出间存在一个指数大概为2.2的幂次关系:outp…

    2022年9月25日
    4
  • linux p2v步骤,P2V操作完整步骤,物理机转换openstack虚拟机

    linux p2v步骤,P2V操作完整步骤,物理机转换openstack虚拟机注意:P2V之前系统盘要给足够,迁移会出现根目录空间不足情况。本次实验根目录有800G,virshpool池用的是/var/lib/glance的空间1.8T。迁移中出现问题,参考本博客《P2V问题汇总》文章。1、文件上传virtio和p2v安装包上传更新YUM源,参考本博客里面《Centos更新源.docx》再安装:yum-yinstallqemu-kvmlibvirtpyth…

    2022年7月26日
    15

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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