etcd分布式键-值对存储系统
什么是分布式系统:
业务量的迅速增大,普通的单机系统无法满足要求,要么垂直扩展升级机器硬件,要么水平扩展堆廉价服务器。目前互联网领域选择了后者 水平扩展
etcd介绍:
1、etcd是CoreOS基于Raft开发的分布式key-value存储,可用于服务发现、共享配置以及一致性保障(如数据库选注、分布式锁等)
2、etcd是一个go语言编写的分布式、高可用的一致性键值存储系统
3、etcd基于Raft协议,通过日志复制的方式来保证数据的强一致性
4、etcd默认数据一经更新就落盘持久化,数据持久化存储使用WAL(write ahead log,预写式日志)格式。WAL记录了数据变化的全过程,在etcd中所有数据在提交之前都要先写入WAL中;etcd的snapshot(快照)文件存储了某一时刻etcd的所有数据,默认设置为每10000条记录做一次快照,经过快照后WAL文件即可删除
etcd的优势
1、etcd更加稳定可靠,他的唯一目标就是把分布式一致性键值存储做到极致,其更注重稳定性和扩展性
2、在服务发现的实现上,etcd使用的是节点租约(Lease),并且Group(多key);而zookeeper使用的是临时节点,临时节点存在不少问题。
3、etcd支持MVCC多版本并发控制
etcd分布式键-值对存储系统(controller)
一、安装、配置服务器
yum -y install etcd
vim /etc/etcd/etcd.conf
二、启动、检查服务器运行情况
systemctl enable/restart etcd
netstat -tnlip|grep etcd (2379、2380)
三、etcd服务管理
etcdctl是管理etcd服务的工具,利用它可以实现数据的存储。
向etcd中存入一个键-值对,键为‘testkey’,值为‘liupanming’;从etcd中读取键‘testkey’所对应的值
etcdctl set testkey liupanming
etcdctl get testkey
‘set’表示执行存入键-值对操作;‘get’表示读取操作,通过键来读取其对应的值。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器