吉林省白山市建设厅网站首页大连网站开发 简维科技
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:49
当前位置: 首页 > news >正文
吉林省白山市建设厅网站首页,大连网站开发 简维科技,上海做网站品牌,中山最好的网站建设目录
一 简介
1.1 etcd是什么
1.2. 特点
1.3. 使用场景
1.4 关键字
1.5 工作原理
二 安装
2.1 etcd安装前介绍
2.2 安装
2.3 启动
2.4 创建一个etcd服务
三 常用操作 一 简介
1.1 etcd是什么 etcd是CoreOS团队于2013年6月发起的开源项目#xff0c;它的目标是构建…目录
一 简介
1.1 etcd是什么
1.2. 特点
1.3. 使用场景
1.4 关键字
1.5 工作原理
二 安装
2.1 etcd安装前介绍
2.2 安装
2.3 启动
2.4 创建一个etcd服务
三 常用操作 一 简介
1.1 etcd是什么 etcd是CoreOS团队于2013年6月发起的开源项目它的目标是构建一个高可用的分布式键值(key-value)数据库。
官网上的一段描述 A distributed, reliable key-value store for the most critical data of a distributed system etcd是一个分布式键值对存储系统用于分布式的关键数据的存储。 1.2. 特点 简单的接口通过标准的HTTP API进行调用也可以使用官方提供的 etcdctl 操作存储的数据 键值对存储 有监听机制可以监听特定键的变化并作出响应
1.3. 使用场景
服务发现Service Discovery消息发布与订阅负载均衡分布式通知与协调分布式锁
1.4 关键字
Raftetcd所采用的保证分布式系统强一致性的算法。 Node一个Raft状态机实例。 Member 一个etcd实例。它管理着一个Node并且可以为客户端请求提供服务。 Cluster由多个Member构成可以协同工作的etcd集群。 Peer对同一个etcd集群中另外一个Member的称呼。 Client 向etcd集群发送HTTP请求的客户端。 WAL预写式日志etcd用于持久化存储的日志格式。 snapshotetcd防止WAL文件过多而设置的快照存储etcd数据状态。 Proxyetcd的一种模式为etcd集群提供反向代理服务。 Leader(领导者)Raft算法中通过竞选而产生的处理所有数据提交的节点。 Follower(跟随者)竞选失败的节点作为Raft中的从属节点为算法提供强一致性保证。 Candidate当Follower超过一定时间接收不到Leader的心跳时转变为Candidate开始Leader竞选。 Term某个节点成为Leader到下一次竞选开始的时间周期称为一个Term。 Index数据项编号。Raft中通过Term和Index来定位数据
1.5 工作原理 第1部分是HTTP Server 用于处理用户发送的API请求以及其它etcd节点的同步与心跳信息请求 第2部分是Store用于处理etcd支持的各类功能的事务包括数据索引、节点状态变更、监控与反馈、事件处理与执行等等是etcd对用户提供的大多数API功能的具体实现 第3部分是RaftRaft强一致性算法的具体实现是etcd的核心 第4部分是WALWrite Ahead Log预写式日志是etcd的数据存储方式。除了在内存中存有所有数据的状态以及节点的索引以外etcd就通过WAL进行持久化存储。 在WAL中所有的数据提交前都会事先记录日志。Snapshot是为了防止数据过多而进行的状态快照Entry表示存储的具体日志内容
二 安装
2.1 etcd安装前介绍
etcd在生产环境中一般推荐集群方式部署etcd使用的2个默认端口号2379和2380 2379用于客户端通信(类似于sqlserver的1433/oracle的1521/mysql的3306) 2380用于与集群中的Peer通信因为etcd是go语言编写的安装只需要下载对应的二进制文件并放到合适的路径就行
2.2 安装
1 创建并切换到下载目录
创建一个存储etcd的文件目录并且进入该目录中
mkdir /usr/local/mytools cd /usr/local/mytools2下载
下载的etcd的话可能有点慢小编这就已经下载好了上传即可
wget https://github.com/etcd-io/etcd/releases/download/v3.4.3/etcd-v3.4.3-linux-amd64.tar.gz 3)解压文件到当前目录 tar xzvf etcd-v3.4.3-linux-amd64.tar.gz4切换至etcd根目录中运行查看命令ls里面会有一些文档和2个二进制文件etcd和etcdctl
etcd是server端etcdctl是客户端
cd etcd-v3.4.3-linux-amd64 ls5将这etcd和etcdctl两个二进制文件复制到/usr/local/bin目录, 这样系统中可以直接调用etcd/etcdctl这两个程序
cp etcd etcdctl /usr/local/bin6查看etcd版本
etcd –version7设置etcdctl版本(v2/v3) 注意etct3.4.3默认使用v3命令所以步骤7可省略之前版本此步骤不可少例如v3.3.10 vi /etc/profile
按键盘i键最后一行指定etcdctl命令的版本为v3export ETCDCTL_API3
环境变量配置示意图 按ESC输入:wq保存并退出
刷新环境变量source /etc/profile #查看当前etcdctl的版本信息 #v3查看版本号etcdctl version # 更多命令帮助可以查询 etcdctl –help
2.3 启动 输入命令etcd即可启动一个单节点的etcd服务,ctrlc即可停止服务 etcd 输入后如果出现下图样子证明etcd服务就没问题 1.name表示节点名称默认为default。2.data-dir 保存日志和快照的目录默认为当前工作目录default.etcd/目录下。3.在http://localhost:2380和集群中其他节点通信。4.在http://localhost:2379提供客户端交互。5.heartbeat为100ms该参数的作用是leader多久发送一次心跳到followers默认值是100ms。6.election为1000ms该参数的作用是重新投票的超时时间如果follow在该时间间隔没有收到心跳包会触发重新投票默认为1000ms。7.snapshot count为10000该参数的作用是指定有多少事务被提交时触发截取快照保存到磁盘。8.集群和每个节点都会生成一个uuid。9.启动的时候会运行raft选举出leader 2.4 创建一个etcd服务 1建立etcd相关目录(即数据文件和配置文件的保存位置) /etc目录是整个Linux系统的中心其中包含所有系统管理和维护方面的配置文件所以etcd的配置也放在这里 mkdir -p /var/lib/etcd/ mkdir -p /etc/etcd/2创建etcd.conf配置文件并编辑 vim /etc/etcd/etcd.confetcd.conf内容
节点名称ETCD_NAMEetcd0# 指定数据文件存放位置ETCD_DATA_DIR/var/lib/etcd/
3创建systemd配置文件并编辑 vim /etc/systemd/system/etcd.service systemd内容 [Unit] DescriptionEtcd Server Afternetwork.target Afternetwork-online.target Wantsnetwork-online.target## 对于那些严格要求 必须存在真实可用的网络连接的单元 ## 应该在其单元文件中包含 Wantsnetwork-online.target ## 与 Afternetwork-online.target 指令[Service] Userroot Typenotify WorkingDirectory/var/lib/etcd/## 根据实际情况修改EnvironmentFile和ExecStart这两个参数值## 1.EnvironmentFile即配置文件的位置注意“-”不能少EnvironmentFile-/etc/etcd/etcd.conf## 2.ExecStart即etcd启动程序位置ExecStart/usr/local/bin/etcd Restarton-failure LimitNOFILE65536[Install] WantedBymulti-user.target 4 启动/停止/查看etcd服务
1.重新加载systemd服务
systemctl daemon-reload## 2.设置开机自启动 systemctl enable etcd ## 3.查看etcd运行状态 systemctl status etcd## 4.启动etcd systemctl start etcd 借鉴可不操作
5.停止服务 systemctl stop etcd
6.重启etcd systemctl restart etcd
三 常用操作
如何获取帮助 etcdctl -h2put etcdctl put /testdir/testkey Hello world前面说了etcd是一种分布式键值对关系如上命令进行解释 etcdctl: 这是 etcd 的命令行工具用于与 etcd 集群进行交互。通过 etcdctl用户可以执行各种操作如设置键值对、获取键值对、监听键的变化等。 put: 这是 etcdctl 的一个子命令用于在 etcd 中创建或更新一个键值对。 /testdir/testkey: 这是键key的部分。在 etcd 中键是唯一的并且可以使用斜杠/来创建层次结构或目录。在这个例子中testdir 可以被看作是一个目录而 testkey 是该目录下的一个键。 Hello world: 这是值value的部分。在这个例子中与键 /testdir/testkey 关联的值是字符串 Hello world。 3get 获取键与值 etcdctl get /testdir/testkey–sort 对结果进行排序 –consistent 将请求发给主节点保证获取内容的一致性。 4del 删除清空
清空数据
etcdctl del / –prefix#删除所有/test前缀的节点 etcdctl del /test –prefix5watch 监听 #1. 增加一个key值为hello客户端窗口1 etcdctl put key1 hello#2. 打开一个新的客户端窗口2监听key1的变化 etcdctl watch key1#3. 回到窗口1向key1 中删除原有的值put新值为hello work etcdctl put key1 hello work# 4. 此时可以在窗口2中看到监听输出# 查看版本信息 curl http://127.0.0.1:2379/version 如下的动态图当我开了两个窗口另一个窗口监听到了另一个窗口的键与值
相关文章
-
吉林省白山市建设局官方网站网站怎么做淘宝客
吉林省白山市建设局官方网站网站怎么做淘宝客
- 技术栈
- 2026年03月21日
-
吉林集安市建设局网站宝塔如何搭建网站
吉林集安市建设局网站宝塔如何搭建网站
- 技术栈
- 2026年03月21日
-
吉安做网站企业做网站都购买域名吗
吉安做网站企业做网站都购买域名吗
- 技术栈
- 2026年03月21日
-
吉林省城乡建设部网站网站 搜索 关键字 description
吉林省城乡建设部网站网站 搜索 关键字 description
- 技术栈
- 2026年03月21日
-
吉林省城乡住房建设厅网站养殖场网站模板
吉林省城乡住房建设厅网站养殖场网站模板
- 技术栈
- 2026年03月21日
-
吉林省公司注册网站wordpress树结构插件
吉林省公司注册网站wordpress树结构插件
- 技术栈
- 2026年03月21日
