etcd 集群搭建及常用场景分析

2023-11-17

概述
etcd 是一个分布式一致性k-v存储系统,可用于服务注册发现与共享配置,具有以下优点。
  • 简单 : 相比于晦涩难懂的paxos算法,etcd基于相对简单且易实现的raft算法实现一致性,并通过gRPC提供接口调用
  • 安全:支持TLS通信,并可以针对不同的用户进行对key的读写控制
  • 高性能:10,000 /秒的写性能
1. etcd单机模式
单机模式的etcd运行很简单,只需到官网下载最新的二进制文件,执行即可
./bin/etcd
以上将使用默认配置运行etcd,监听本地的2379端口,用于与client端交互,监听2380用于etcd内部交互,当然,这里单机不会使用到。
  
  
  
./etcdctl set hello world
world
./etcdctl get hello
world
通过etcdctl工具进行测试,以上表示单机可以工作。
2.etcd集群模式
这里的集群模式是指完全集群模式,当然也可以在单机上通过不同的端口,部署伪集群模式,只是那样做只适合测试环境,生产环境考虑到可用性的话需要将etcd实例分布到不同的主机上,这里集群搭建有三种方式,分布是静态配置,etcd发现,dns发现
下面将在以下三台主机上搭建etcd集群,
infra0 10.0.1.111
infra1 10.0.1.109
infra2 10.0.1.110
2.1 配置项说明
--name
etcd集群中的节点名,这里可以随意,可区分且不重复就行 
--listen-peer-urls
监听的用于节点之间通信的url,可监听多个,集群内部将通过这些url进行数据交互(如选举,数据同步等)
--initial-advertise-peer-urls
建议用于节点之间通信的url,节点间将以该值进行通信。
--listen-client-urls
监听的用于客户端通信的url,同样可以监听多个。
--advertise-client-urls
建议使用的客户端通信url,该值用于etcd代理或etcd成员与etcd节点通信。
--initial-cluster-token etcd-cluster-1
节点的token值,设置该值后集群将生成唯一id,并为每个节点也生成唯一id,当使用相同配置文件再启动一个集群时,只要该token值不一样,etcd集群就不会相互影响。
--initial-cluster
也就是集群中所有的initial-advertise-peer-urls 的合集
--initial-cluster-state new
新建集群的标志

2.2 静态配置
静态配置主要预先将集群的配置信息分配好,然后将集群分布启动,集群将根据配置信息组成集群。这里按如下的配置信息分别启动三个etcd。
./etcd --name infra0 --initial-advertise-peer-urls http://10.0.1.111:2380 \
  --listen-peer-urls http://10.0.1.111:2380 \
  --listen-client-urls http://10.0.1.111:2379,http://127.0.0.1:2379 \
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

etcd 集群搭建及常用场景分析 的相关文章

  • Arthas 定位CPU跑满问题,源头竟是Apache Beanutils

    一 背景 大早上 线上k8s 机子 某个机子 cpu 飙高 导致k8s 健康检查失败 线上环境会自动执行jstack 上传到oss 通知到 钉钉告警群 直接分析锁 cpu 高的线程 二 过程分析 2 1 排查cpu 占用最高的线程 使用js
  • linux上zookeeper单机搭建伪集群

    Zookeeper 一 下载zookeeper 解压到指定文件夹下 tar zxvf apache zookeeper 3 5 8 bin tar gz C home zk 改个名字 这个随意 mv apache zookeeper 3 5
  • dubbo zookeeper spring mvc简单整合的工程例子demo

    该demo只是简单的集成 包括了5个工程 都是maven结构的 如下图所示 服务端 dubbo demo server api 服务接口定义工程 dubbo demo server biz 服务接口实现工程 web dubbo server
  • 如何启动单节点zookeeper以及注意事项

    1 安装jdk 因为zookeeper是基于java进行开发的 2 将zookeeper解压之后 再zookeeper目录下conf目录下有一个zoo sample cfg 将它改名成zoo cfg 因为zookeeper启动时自动加载的是
  • CAP和BASE

    CAP概念 Consistency 一致性 所有节点在同一时间具有相同的数据 Availability 可用性 保证每个请求不管成功或者失败都有响应 Partition Tolerance 分区容错性 系统中任意信息的丢失或失败不会影响系统
  • 大数据课程C5——ZooKeeper的应用组件

    文章作者邮箱 yugongshiye sina cn 地址 广东惠州 本章节目的 掌握Zookeeper的Canal消费组件 掌握Zookeeper的Dubbo分布式服务框架 掌握Zookeeper的Metamorphosis消息中间件 掌
  • zookeeper看这一篇就够了

    第一章 zookeeper简介 第1节 zookeeper的由来 1 2 3 4 1 zookeeper最早起源于雅虎研究院的一个研究小组 2 在雅虎内部很多大型系统基本都需要依赖一个类似的系统来进行分布式协调 并且这个系统还有单点问题 3
  • ZooKeeper系统模型之集群间消息通信。

    ZooKeeper的消息类型大体上可以分为四类 分别是 数据同步型 服务器初始化型 请求处理型和会话管理型 数据同步型 数据同步型消息是指在Learner和Leader服务器进行数据同步的时候 网络通信所用到的消息 通常有DIFF TRUN
  • 手把手带你撸zookeeper源码系列目录

    手把手带你撸zookeeper源码 前言 手把手带你撸zookeeper源码 配置文件 手把手带你撸zookeeper源码 如何启动一个zookeeper服务 手把手带你撸zookeeper源码 从源码角度分析zookeeper启动时都做了
  • 大数据开发教程——ZooKeeper分布式协调组件

    ZooKeeper是什么 ZooKeeper是一个分布式的 开放源码的分布式应用程序协调服务 是Google的Chubby一个开源的实现 是Hadoop和Hbase Flink的重要组件 中文名 动物管理员 它是一个为分布式应用提供一致性服
  • ZooKeeper(六)权限管理机制

    一 ZooKeeper权限管理机制 1 1 权限管理ACL Access Control List ZooKeeper 的权限管理亦即ACL 控制功能 使用ACL来对Znode进行访问控制 ACL的实现和Unix文件访问许可非常相似 它使用
  • 搭建zookeeper集群的时候报: JAVA_HOME is not set and java could not be found in PATH.错误

    我在搭建zookeeper集群的时候总是报 JAVA HOME is not set and java could not be found in PATH 的错误 但是我的java环境是没问题的 这个问题困扰我两天了 终于解决了 在此记录
  • kafka + zookeeper下载/安装/使用(超详细)

    kafka是需要zk来支持 所以先下载zk 1 下载安装zookeeper 下载地址 选择不带source的 下载下来解压2次 进入到 D zookeeper apache zookeeper 3 6 1 bin conf 目录下 把zoo
  • Centos7下安装Zookeeper

    一 配置java环境 1 安装JDK yum install y java 1 8 0 openjdk 2 查看版本 root zookeeper java version openjdk version 1 8 0 362 OpenJDK
  • go-zero使用Etcd进行服务注册代码分析

    代码分析 github com tal tech go zero v1 2 3 core discov publisher go package discov import github com tal tech go zero core
  • Nacos、ZooKeeper和Dubbo的区别

    Nacos ZooKeeper和Dubbo是三个不同的分布式系统组件 它们之间有以下几点区别 功能定位 Nacos主要提供服务发现 配置管理和服务治理等功能 而ZooKeeper主要是分布式协调服务 提供了分布式锁 分布式队列等原语 Dub
  • 从zookeeper官方文档系统学习zookeeper

    从zookeeper官方文档系统学习zookeeper 1 zookeeper 2 zookeeper 文档 3 zookeeper 单机版 3 1 配置 3 2 启动 3 3 验证 4 zookeeper 集群版 4 1 配置 4 2 启
  • 微服务框架

    微服务框架 1 SOA思想 面向服务的架构 SOA 是一个组件模型 它将应用程序的不同功能单元 称为服务 进行拆分 并通过这些服务之间定义良好的接口和协议联系起来 接口是采用中立的方式进行定义的 它应该独立于实现服务的硬件平台 操作系统和编
  • Zookeeper 和 Dubbo 的关系?

    Zookeeper的作用 zookeeper用来注册服务和进行负载均衡 哪一个服务由哪一个机器来提供必需让调用者知道 简单来说就是ip地址和服务名称的对应关系 当然也可以通过硬编码的方式把这种对应关系在调用方业务代码中实现 但是如果提供服务
  • 终于找到了最新版的Zookeeper入门级教程,建议收藏!

    小熊学Java https javaxiaobear cn 1 分布式一致性 1 CAP 理论 CAP 理论指出对于一个分布式计算系统来说 不可能同时满足以下三点 一致性 在分布式环境中 一致性是指数据在多个副本之间是否能够保持一致的特性

随机推荐

  • 云计算基础入门

    文章目录 前言 一 大数据 1 大数据技术 基础技术 2 大数据技术的产生 3 大数据 4 大数据对科学研究产生的影响 第四范式 四种范式 5 大数据的4V特征 二 云计算 1 云计算模式 2 云计算定义 2 云计算的主要服务模式 3 三种
  • 【MySQL中对表的常见操作】 —— 第四天

    1 删除表的基础语法 drop table 表名 普通删除 drop table if exists 表名 先判断该表是否存在 2 向表中插入数据的基础语法 insert into 表名 字段1 字段2 字段n values 字段值 字段值
  • Python中的包管理方法

    在Python开发中 包管理与依赖问题一直是开发者头疼的问题之一 随着项目规模的增大和复杂性的增加 管理各种依赖包和解决版本冲突变得尤为重要 本文将分享解决Python中的包管理与依赖问题的方法和工具 帮助开发者更好地管理项目中的依赖关系
  • 单片机c语言的指针,单片机C语言指针的指针

    指针的指针 一个指针变量内部可以存储一个值 这个值是另外一个对象的地址 所以我们说一个指针变量可以指向一个普通变量 同样这个指针变量也有一个地址 也就是 说有一个东西可以指向这个指针变量 然后再通过这个指针变量指向这个对象 那么如何来指向这
  • 右值引用 右值 左值和 左值引用

    首先注意lvalue 和rvalue 中的l r 不是 left和right 而是 l locator value 可以寻址的数据 明确一定是一个地址容纳一个数据 可以在该条语句后面再找到这个值 r read value 不可寻址数据或者用
  • FileZilla出现Failed to convert command to 8 bit charset 

    FileZilla这款FTP客户端软件 自从华哥使用以来 采用其默认的设置 一直用得很顺畅 没有出现过什么问题 但是今天碰到了一个问题 如图 错误信息为 Failed to convert command to 8 bit charset
  • linux 常用指令

    发布java jar程序 后台运行 输出日志文件 nohup java jar jar gt log log 列出后台执行的作业 jobs 列出作业 fg 123 将编号为123的作业调回前台 查看端口占用的线程的pid netstat n
  • Android MediaPlayer播放本地音频

    reference Android 第一行代码 MediaPlayer类常用的方法 setDataSource 设置要播放的音频文件的路径 prepare 开始播放之前调用这个方法完成准备工作 start 开始或继续播放 pause 暂停播
  • 基于SSM的图书馆借阅管理系统

    全网粉丝20W csdn特邀作者 博客专家 CSDN新星计划导师 java领域优质创作者 博客之星 掘金 华为云 阿里云 InfoQ等平台优质作者 专注于Java技术领域和毕业项目实战 文末获取项目下载方式 一 项目背景介绍 随着社会的发展
  • 重新梳理DeepFaceLab(DeepFake)最近动态:简要且全面的信息

    DeepFaceLab相关文章 一 简单介绍DeepFaceLab DeepFake 的使用以及容易被忽略的事项 二 继续聊聊DeepFaceLab DeepFake 不断演进的2 0版本 三 如何翻译DeepFaceLab DeepFak
  • 外置USB供电与内置锂电池供电自动切换电路

    外置USB供电与内置锂电池供电自动切换电路 便携电子设备常用 经典电路必须掌握 本文要分析的电路 很多内置有锂电池的便携电子设备 比如手机 通常采用这样的供电方式 1 没有插入USB电源时 使用内置的锂电池供电 2 当插入USB电源时 切换
  • JAVA体系书籍大全

    二哥 能不能给一套 Java 电子书的链接啊 最好是成体系的 我现在就想好好的学习 感觉和公司的一些同事差距有点大 想追赶上 纸质书有点沉 天天带在手边很不方便 尤其是上下班坐地铁的时候 都感觉看纸质书不太好意思 电子书不仅携带方便 还能不
  • 安装Tensorflow教程

    安装Tensorflow教程 1 环境要求 pychon3 5 可以在cmd下查看python3版本号 要求必须是3 5以及以上 python3 version Python 3 9 8 2 anaconda安装 打开anaconda en
  • Pyqt5 在线/离线安装教程

    在线安装 在线安装很简单 两行命令搞定 pip3 install PyQt5 pip install PyQt5 tools 如果访问外网不是很顺畅建议使用豆瓣的镜像下载 pip install PyQt5 i https pypi dou
  • window.open完美替代window.showModalDialog

    var url http www baidu com var name 百度 var iWidth 1100 弹窗宽度 var iHeight 700 弹窗高度 var iTop window screen availHeight 30 i
  • 组件化学习-3-源码分析ARouter

    之前我们学习了Arouter的使用 今天分析下源码实现原理 主要分3步 生成路由表 加载路由表 使用路由表 生成路由表 RouteProcessor负责生产路由表 ARouter框架使用编译时注解工具 Annotation Processi
  • 【项目:坦克大战】

    v1 25 新增功能 1 音效的处理 import pygame time random display pygame display COLOR BLACK pygame Color 0 0 0 COLOR RED pygame Colo
  • 华为OD机试 - 处理器问题(Java)

    题目描述 某公司研发了一款高性能AI处理器 每台物理设备具备8颗AI处理器 编号分别为0 1 2 3 4 5 6 7 编号0 3的处理器处于同一个链路中 编号4 7的处理器处于另外一个链路中 不通链路中的处理器不能通信 如下图所示 现给定服
  • msvcp140.dll丢失的详细修复教程

    打开电脑上的浏览器在顶部网址栏目输入 dll修复程序 site 然后按下键盘的回车键打开 电脑 dll中文简称动态链接库 把下载好的修复工具右键压缩文件进行解压操作 解压完成打开修复工具 修复工具中可以看到修复工具右侧中的检测与修复的项目
  • etcd 集群搭建及常用场景分析

    概述 etcd 是一个分布式一致性k v存储系统 可用于服务注册发现与共享配置 具有以下优点 简单 相比于晦涩难懂的paxos算法 etcd基于相对简单且易实现的raft算法实现一致性 并通过gRPC提供接口调用 安全 支持TLS通信 并可