ETCD 基本介绍与常见命令的使用

news/2024/7/8 10:38:02 标签: etcd

转载请标明出处:https://blog.csdn.net/donkor_/article/details/140171610

文章目录

  • 一、基本介绍
    • 1.1 参考
    • 1.2 什么是ETCD
    • 1.3 ETCD的特点
    • 1.4 ETCD的主要功能
    • 1.5 ETCD的整体架构
    • 1.6 什么时候用ETCD,什么时候用redis
  • 二、安装
  • 三、使用
    • 3.1 etcdctl
    • 3.2 常用命令
      • 3.2.1 获取一个键值的值
      • 3.2.2 设置一个键值对
      • 3.2.3 删除一个键值对
      • 3.2.4 获取一个目录下的所有键值对
      • 3.2.5 创建一个目录
      • 3.2.6 删除一个目录
      • 3.2.7 监听一个键的变化
      • 3.2.8 列出成员节点
      • 3.2.9 添加一个节点到集群
      • 3.2.10 从集群中删除一个节点


一、基本介绍

1.1 参考

官方文档:https://etcd.io/

1.2 什么是ETCD

EtcdCoreOS基于Raft协议开发的分布式key-value存储,可用于服务发现共享配置以及一致性保障(如数据库选主分布式锁等)。

在分布式系统中,如何管理节点间的状态一直是一个难题,etcd像是专门为集群环境的服务发现注册而涉及,它提供了数据TTL失效数据改变监视多值目录监听分布式锁原子操作等功能,可以方便的跟踪并管理集群节点状态

1.3 ETCD的特点

  • 简单:安装配置简单,而且提供了HTTP API进行交互,使用也很简单
  • 安全:支持SSL证书验证
  • 快速: 根据官方提供的benchmark数据,单实例支持每秒2k+读操作
  • 可靠: 采用raft算法,实现分布式系统数据的可用性和一致性

1.4 ETCD的主要功能

  • 分布式键值存储etcd提供了一个可靠的键值存储系统,可以用于存储和检索数据。它将数据存储为键值对的形式,并支持原子性地读取和修改数据。

  • 分布式锁etcd允许多个进程在分布式环境中协调对共享资源的访问。通过使用etcd提供的分布式锁功能,进程可以协调在同一时间只有一个进程可以访问某个资源。

  • 分布式通知etcd支持订阅和发布事件的功能,可以在数据变化时通知相关的进程。这对于实现发布/订阅模型和实时通知非常有用。

  • 分布式选举etcd可以用于分布式系统中的领导者选举。它提供了一种可靠的机制来选择一个节点作为领导者,并在领导者宕机时选择新的领导者。

  • 分布式配置共享etcd可以用于共享配置信息。多个进程可以读取和修改在etcd中存储的配置信息,从而实现配置的统一管理和动态更新。

1.5 ETCD的整体架构

1.6 什么时候用ETCD,什么时候用redis

使用etcd和redis的选择取决于具体的需求和使用场景。下面是一些常见的考虑因素:

  • 数据一致性etcd是一个高度一致的分布式键值存储系统,它的设计目标是提供强一致性的服务。而redis是一个内存数据库,它强调的是高性能和低延迟,对于一致性要求不高的场景更为适用。

  • 分布式特性etcd是为构建分布式系统而设计的,它提供了分布式锁、选主和发布-订阅等特性,可以方便地实现分布式应用的协调与管理。而redis虽然也支持集群部署,但其分布式特性相对较弱,更适合用作缓存或临时存储。

  • 可靠性和持久化etcd可以将数据持久化到磁盘,并支持数据的备份和恢复。而redis在默认情况下将数据存储在内存中,可以通过配置进行持久化,但相对于etcd来说,其可靠性较低。

  • 生态系统和社区支持etcd作为Kubernetes的核心组件,得到了广泛的使用和社区支持,有丰富的文档和工具链。而redis作为一款老牌的开源数据库,同样具有庞大的用户群体和活跃的社区。

综上所述,如果你的应用需要强一致性分布式特性可靠性,以及与Kubernetes等生态系统的集成,那么etcd是一个更好的选择。而如果你更注重性能和灵活性,可以考虑使用redis

二、安装

安装教程:Docker部署ETCD 3.5.14(保姆级图文教程)

三、使用

etcdctl_50">3.1 etcdctl

etcdctl是一个命令行客户端,它能提供一些简洁的命令,供用户直接跟etcd服务打交道,而无需基于 HTTP API方式。可以方便我们在对服务进行测试或者手动修改数据库内容

etcd项目二进制发行包中已经包含了etcdctl工具etcdctl支持的命令大体上分为数据库操作非数据库操作两类

3.2 常用命令

3.2.1 获取一个键值的值

etcdctl get <key>

3.2.2 设置一个键值对

etcdctl put <key> <value>

3.2.3 删除一个键值对

etcdctl del <key>

3.2.4 获取一个目录下的所有键值对

etcdctl get --prefix <directory>

3.2.5 创建一个目录

etcdctl mkdir <directory>

3.2.6 删除一个目录

etcdctl rmdir <directory>

3.2.7 监听一个键的变化

etcdctl watch <key>

3.2.8 列出成员节点

etcdctl member list

3.2.9 添加一个节点到集群

etcdctl member add <name> <peer-url>

3.2.10 从集群中删除一个节点

etcdctl member remove <member-id>

这些是一些常用的etcdctl命令,还有其他更高级的命令可以用于集群管理配置。你可以通过运行etcdctl --help命令来获取更详细的帮助信息,了解etcdctl支持的所有命令和选项


完成ヾ(◍°∇°◍)ノ゙


http://www.niftyadmin.cn/n/5537040.html

相关文章

k8s-第八节-Helm

Helm & 命名空间 介绍 Helm类似 npm,pip,docker hub, 可以理解为是一个软件库,可以方便快速的为我们的集群安装一些第三方软件。使用 Helm 我们可以非常方便的就搭建出来 MongoDB / MySQL 副本集群,YAML 文件别人都给我们写好了,直接使用。官网 https://helm.sh/zh/ …

Vue2中跨组件共享公共属性的方法、优缺点与实现

一、vuex&#xff08;最常用&#xff09; 优缺点 优点&#xff1a;集中管理状态&#xff0c;组件间解耦&#xff0c;易于调试和测试。缺点&#xff1a;学习成本较高&#xff0c;对于小项目可能过于复杂。 适用场景 大型、复杂的单页面应用&#xff08;SPA&#xff09;。需要全局…

【等保2.0是什么意思?等保2.0的基本要求有哪些? 】

一、等保2.0是什么意思&#xff1f; 等保2.0又称“网络安全等级保护2.0”体系&#xff0c;它是国家的一项基本国策和基本制度。在1.0版本的基础上&#xff0c;等级保护标准以主动防御为重点&#xff0c;由被动防守转向安全可信&#xff0c;动态感知&#xff0c;以及事前、事中…

《昇思25天学习打卡营第7天|函数式自动微分》

文章目录 今日所学&#xff1a;一、函数与计算图二、微分函数与梯度计算三、Stop Gradient四、Auxiliary data五、神经网络梯度计算总结 今日所学&#xff1a; 今天我学习了神经网络训练的核心原理&#xff0c;主要是反向传播算法。这个过程包括将模型预测值&#xff08;logit…

【抽代复习笔记】25-群(十九):一个关于循环群的重要定理以及三道证明例题

定理&#xff1a;G (a)是n阶循环群&#xff0c;则&#xff1a; &#xff08;1&#xff09;|a^r| n/(r,n)&#xff08;(r,n)是r和n的最大公因数&#xff09;&#xff1b; &#xff08;2&#xff09;当(r,n) 1时&#xff0c;a^r也是一个生成元&#xff1b; &#xff08;3&a…

第二十九天 第八章 贪心算法 part03 134. 加油站 135. 分发糖果 860.柠檬水找零 406.根据身高重建队列

134. 加油站 两种情况讨论&#xff0c;(容量-消耗量)的累加和小于0时不可环绕一周&#xff0c;反之即可&#xff0c;同时如果当前容量-消耗量小于0&#xff0c;那么当前加油站也不是加油站&#xff0c;往后推一站&#xff0c;但是我们一定能找到一个加油站作为开始加油站环绕…

字节跳动 AML 前端 一面

时长55mins 1. 自我介绍 1. 怎么接触的前端&#xff1f;学了多久&#xff1f; 1. 问项目 1. 为什么要做组件库&#xff1f; 1. 问到我的组件库和AntD之类的有什么区别&#xff0c;我说区别可能就是我的功能更少&#xff1f;hhhh 1. 设计一个组件的思路&#x…

LeetCode:3047. 求交集区域内的最大正方形面积(Java 枚举)

目录 3047. 求交集区域内的最大正方形面积 题目描述&#xff1a; 原理思路&#xff1a; 3047. 求交集区域内的最大正方形面积 题目描述&#xff1a; 在二维平面上存在 n 个矩形。给你两个下标从 0 开始的二维整数数组 bottomLeft 和 topRight&#xff0c;两个数组的大小都是…