etcd v3使用示例

2023-05-16

1.简单使用

1.1 增加

  • set

指定某个键的值。例如:

$ etcdctl set /testdir/testkey "Hello world"
Hello world
复制代码

支持的选项包括:

--ttl '0' 该键值的超时时间(单位为秒),不配置(默认为0)则永不超时
--swap-with-value value 若该键现在的值是value,则进行设置操作
--swap-with-index '0'   若该键现在的索引值是指定索引,则进行设置操作
复制代码
  • mk

如果给定的键不存在,则创建一个新的键值。例如:

$ etcdctl mk /testdir/testkey "Hello world"
Hello world
复制代码

当键存在的时候,执行该命令会报错,例如:

$ etcdctl mk /testdir/testkey "Hello world"
Error:  105: Key already exists (/testdir/testkey) [8]
复制代码

支持的选项为:

--ttl '0'  超时时间(单位为秒),不配置(默认为 0)。则永不超时
复制代码
  • mkdir

如果给定的键目录不存在,则创建一个新的键目录。例如:

$ etcdctl mkdir testdir2
复制代码

当键目录存在的时候,执行该命令会报错,例如:

$ etcdctl mkdir testdir2
Error:  105: Key already exists (/testdir2) [9]
复制代码

支持的选项为:

--ttl '0' 超时时间(单位为秒),不配置(默认为0)则永不超时。
复制代码
  • setdir

创建一个键目录。如果目录不存在就创建,如果目录存在更新目录TTL。

$ etcdctl setdir testdir3
复制代码

支持的选项为:

--ttl '0' 超时时间(单位为秒),不配置(默认为0)则永不超时。
复制代码

1.2 删除

  • rm

删除某个键值。例如:

$ etcdctl rm /testdir/testkey
PrevNode.Value: Hello
复制代码

当键不存在时,则会报错。例如:

$ etcdctl rm /testdir/testkey
Error:  100: Key not found (/testdir/testkey) [7]
复制代码

支持的选项为:

--dir 如果键是个空目录或者键值对则删除
--recursive 删除目录和所有子键
--with-value  检查现有的值是否匹配
--with-index '0'检查现有的index是否匹配
复制代码
  • rmdir

删除一个空目录,或者键值对。

$ etcdctl setdir dir1
$ etcdctl rmdir dir1
复制代码

若目录不空,会报错:

$ etcdctl set /dir/testkey hi
hi
$ etcdctl rmdir /dir
Error:  108: Directory not empty (/dir) [17]
复制代码

1.3 更新

  • update

当键存在时,更新值内容。例如:

$ etcdctl update /testdir/testkey "Hello"
Hello
复制代码

当键不存在时,则会报错。例如:

$ etcdctl update /testdir/testkey2 "Hello"
Error:  100: Key not found (/testdir/testkey2) [6]
复制代码

支持的选项为:

--ttl '0' 超时时间(单位为秒),不配置(默认为 0)则永不超时。
复制代码
  • updatedir

更新一个已经存在的目录。

$ etcdctl updatedir testdir2
复制代码

支持的选项为:

--ttl '0' 超时时间(单位为秒),不配置(默认为0)则永不超时。
复制代码

1.4 查询

  • get

获取指定键的值。例如:

$ etcdctl get /testdir/testkey
Hello world
复制代码

当键不存在时,则会报错。例如:

$ etcdctl get /testdir/testkey2
Error:  100: Key not found (/testdir/testkey2) [5]
复制代码

支持的选项为:

--sort 对结果进行排序
--consistent 将请求发给主节点,保证获取内容的一致性。
复制代码
  • ls

列出目录(默认为根目录)下的键或者子目录,默认不显示子目录中内容。

例如:

$ etcdctl ls
/testdir
/testdir2
/dir

$ etcdctl ls dir
/dir/testkey
复制代码

支持的选项包括:

--sort 将输出结果排序
--recursive 如果目录下有子目录,则递归输出其中的内容
-p 对于输出为目录,在最后添加/进行区分
复制代码

1.5 watch

  • watch

监测一个键值的变化,一旦键值发生更新,就会输出最新的值并退出。

例如:用户更新testkey键值为Hello watch。

$ etcdctl get /testdir/testkey
Hello world
$ etcdctl set /testdir/testkey "Hello watch"
Hello watch
$ etcdctl watch testdir/testkey
Hello watch
复制代码

支持的选项包括:

--forever  一直监测直到用户按CTRL+C退出
--after-index '0' 在指定index之前一直监测
--recursive 返回所有的键值和子键值
复制代码
  • exec-watch

监测一个键值的变化,一旦键值发生更新,就执行给定命令。

例如:用户更新testkey键值。

$ etcdctl exec-watch testdir/testkey -- sh -c 'ls'
config	Documentation  etcd  etcdctl  README-etcdctl.md  README.md  READMEv2-etcdctl.md
复制代码

支持的选项包括:

--after-index '0' 在指定 index 之前一直监测
--recursive 返回所有的键值和子键值
复制代码

1.6 备份

备份etcd的数据。

$ etcdctl backup --data-dir /var/lib/etcd  --backup-dir /home/etcd_backup
复制代码

支持的选项包括:

--data-dir  etcd的数据目录
--backup-dir 备份到指定路径
复制代码

1.7 member

通过listaddremove命令列出、添加、删除etcd实例到etcd集群中。

查看集群中存在的节点

$ etcdctl member list
8e9e05c52164694d: name=dev-master-01 peerURLs=http://localhost:2380 clientURLs=http://localhost:2379 isLeader=true
复制代码

删除集群中存在的节点

$ etcdctl member remove 8e9e05c52164694d
Removed member 8e9e05c52164694d from cluster
复制代码

向集群中新加节点

$ etcdctl member add etcd3 http://192.168.1.100:2380
Added member named etcd3 with ID 8e9e05c52164694d to cluster

2.使用示例


                									
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

etcd v3使用示例 的相关文章

  • log4net 使用示例 asp.net + winform

    log4net 是 apache org 在 log4j的基础上推出的针对 NET程序的开源的日志组件 log4net目前的最新版本是 1 2 10 xff0c log4net支持的日志保存方式 xff0c 可谓丰富之极 xff0c 包括
  • etcd重启

    k8s启动etcd数据库 在这个主机上面 systemctl stop etcd k8s lib systemd system etcd k8s service 修改配置new修改为existing xff0c 其他不改动并保存清理数据 r
  • Etcd 使用总结

    1 简介 Etcd API 特性 xff1a 原子性 xff1a 一个操作要么全部执行 xff0c 要么全部不执行一致性 xff1a 不论客户端请求的是哪个etcd服务器 xff0c 它都能读取到相同的事件 xff0c 而且这些事件的顺序也
  • FluentValidation使用示例

    FluentValidation 是一个 NET 平台下的验证库 xff0c 用于验证对象的属性是否符合预期的规则 它提供了一种简洁的方式来编写验证规则 xff0c 支持链式编程 xff0c 可以轻松地构建复杂的验证逻辑 在 NET 6 中
  • etcd v3使用示例

    1 简单使用 1 1 增加 set 指定某个键的值 例如 etcdctl span class token builtin class name set span testdir testkey span class token strin
  • 【Spring】aop的使用示例

    场景 去饭店吃饭的时候 xff0c 在进入饭店时门卫会为你开门 xff0c 并问候说 欢迎光临 xff0c 当你吃完离开时 xff0c 门卫会说 请慢走 xff0c 欢迎下次光临 此场景下涉及如下两个角色 xff1a 顾客 xff08 cu
  • FutureTask的使用示例

    今天看书 xff0c 有关于 FutureTask 的介绍 xff0c 感觉还蛮有意思的 xff0c 可以用它来做一些比较花时间的事情 下面打个通俗的比方来说明一下它的用处 xff1a 比如 xff0c 早上一大早的去公交站台等公交 xff
  • roslaunch使用示例

    本文是看了学长ROS 的 roslaunch 中 xml 相关要点 文章之后做了小改动 xff0c 主要是对 roslaunch 文件的简单总结 需要完成的前序工作是已经创建了 catkin 工作空间 xff1b 创建了 catkin 程序
  • k8s docker集群搭建

    一 Kubernetes系列之介绍篇 Kubernetes介绍 1 背景介绍 云计算飞速发展 IaaS PaaS SaaS Docker技术突飞猛进 一次构建 到处运行 容器的快速轻量 完整的生态环境 2 什么是kubernetes 首先
  • k8s集群搭建(二进制方式)

    k8s集群搭建 二进制方式 1 安装要求 2 准备环境 3 操作系统初始化配置 4 部署 Etcd 集群 4 1 准备 cfssl 证书生成工具 4 2 生成 Etcd 证书 4 3 从 Github 下载二进制文件 4 4 部署 Etcd
  • kubernetes-ETCD

    etcd 是CoreOS团队于2013年6月发起的开源项目 它的目标是构建一个高可用的分布式键值数据库 etcd内部采用raft协议作为一致性算法 etcd基于Go语言实现 官方网址 https etcd io github地址 https
  • ETCD 详解

    一 ETCD简介 etcd是一个Go言编写的分布式 高可用的一致性键值存储系统 用于提供可靠的分布式键值存储 配置共享和服务发现等功能 具有以下特点 简单 易使用 基于HTTP JSON的API让你用curl就可以轻松使用 易部署 使用Go
  • etcd常用命令与备份恢复-Day03

    1 etcd简介 官方网站 etcd io 官方文档 etcd io docs v3 5 op guide maintenance 官方硬件推荐 etcd io docs v3 5 op guide hardware github地址 gi
  • SaltStack实现etcd自动扩容

    一 ETCD 概述 1 ETCD 简介 ETCD是用于共享配置和服务发现的分布式 一致性的KV存储系统 该项目目前最新稳定版本为2 3 0 ETCD是CoreOS公司发起的一个开源项目 授权协议为Apache 提供配置共享和服务发现的系统比
  • K8s二进制部署-flanneld报(Couldn‘t fetch network config)

    1 报错提示 将网络配置信息写入了ETCD中 启动flanneld测试时一直报错 具体报错如下 root master1 tail 100f var log messages Dec 15 23 39 22 localhost flanne
  • etcd安装

    ETCD安装 windows版本 下载 下载地址https github com etcd io etcd releases 安装 其实也不用安装 下载解压后 得到如下 选中etcd exe 右键 属性 兼容性 以管理员身份运行此程序勾上
  • patroni+etcd+antdb高可用

    patroni etcd antdb高可用架构图 Patroni组件功能 自动创建并管理主备流复制集群 并且通过api接口往dcs Distributed Configuration Store 通常指etcd zookeeper cons
  • 可自动扩展的高可用Swarm集群EdgeScaler的搭建

    项目简介 应用场景 集群架构 组件描述 集群搭建 环境准备 Swarm工作节点搭建 Swarm管理节点搭建 ConfdHAProxy节点搭建 小结 项目简介 随着虚拟化和容器技术的日趋成熟 Docker越来越受到人们的关注 目前Docker
  • etcd键值操作

    etcd 删除键值 1 查询所有键值 curl http 10 0 2 255 9001 v2 keys services recursive true 2 删除键值 curl http 10 0 22 39 9001 v2 keys ke
  • minikube:无法连接本地部署的 nginx 服务

    我已经在我的 ubuntu 16 04 机器上安装了 minikube 并启动了一个集群 并显示一条消息 Kubernetes is available at https 192 168 99 100 443 接下来 我使用以下命令部署了

随机推荐

  • 十大经典排序算法总结(C语言版本)

    前言 xff1a 排序算法 是最经典的算法知识 xff0c 也是每个合格程序员应该需要掌握的知识点 考虑到排序算法通常代码简短 xff0c 逻辑思维强和应用范围广等特性 xff0c 排序算法题目便成为了面试中的常客 在面试中最常考的是快速排
  • Unicode、UTF-8、UTF-16 终于懂了

    计算机起源于美国 xff0c 上个世纪 xff0c 他们对英语字符与二进制位之间的关系做了统一规定 xff0c 并制定了一套字符编码规则 xff0c 这套编码规则被称为ASCII编码 ASCII 编码一共定义了128个字符的编码规则 xff
  • Prometheus 的优雅关闭

    1 方法1 xff1a 用 pgrep f prometheus 找到运行的 Prometheus 进程号 使用 kill TERM 1234 来关闭 2 方法2 需要通过 web enable lifecycle 参数开启 lifecyc
  • Ceph运维操作

    1 操控集群 1 1 UPSTART Ubuntu系统下 xff0c 基于ceph deploy部署集群后 xff0c 可以用这种方法来操控集群 列出节点上所有Ceph进程 xff1a start ceph all 启动节点上特定类型的Ce
  • k8s部署Ceph

    1 Helm部署 1 1 简介 为了将Ceph部署到K8S集群中 xff0c 可以利用ceph helm项目 目前此项目存在一些限制 xff1a public和cluster网络必须一样如果Storage的用户不是admin xff0c 你
  • Ceph性能调优

    1 最佳实践 1 1 基本 监控节点对于集群的正确运行非常重要 xff0c 应当为其分配独立的硬件资源 如果跨数据中心部署 xff0c 监控节点应该分散在不同数据中心或者可用性区域日志可能会让集群的吞吐量减半 理想情况下 xff0c 应该在
  • Ceph常见问题

    1 CephFS问题诊断 1 1 无法创建 创建新CephFS报错Error EINVAL pool rbd ssd already contains some objects Use an empty pool instead xff0c
  • 镜像仓库 Harbor 对接 MinIO 对象存储

    Harbor 的部署之前使用的存储是 NFS xff0c 虽然可以使用 rsync 43 inotify 做数据同步做解决单点问题 xff0c 但是 NFS 效率 性能有限 xff0c 没有对象存储那么强大 xff0c 所以一般使用对象存储
  • thanos prometheus 的高可用、长期存储二进制部署

    1 简介 http thanos io thanos 是具有长期存储功能的开源 高可用性 Prometheus的集群组件 全局查询视图 跨多个 Prometheus 服务器和集群查询指标 无限保留 使用对象存储扩展系统 xff0c 不限时间
  • prometheus基本介绍

    001 基本介绍 1 主要功能 多维数据模型 xff08 时序由metric名字和k v的labels构成 xff09 灵活的查询语句无依赖存储 xff0c 支持local和remote不同的模型采用http协议 xff0c 使用pull模
  • prometheus基本概念

    基本概念 1 数据模型 prometheus存储的是时序数据 xff0c 即按照相同时序 xff08 相同名字和标签 xff09 xff0c 以时间维度存储的连续数据集合 时序是由名字以及key value标签定义 xff0c 具有相同的名
  • prometheus标签

    004 标签 1 作用 Prometheus中存储的数据为时间序列 xff0c 是由Metric的名字和一系列的标签 键值对 唯一标识的 不同的标签代表不同的时间序列 xff0c 即 通过指定标签查询指定数据 指标 43 标签实现了查询条件
  • 基于FreeRTOS的CPU利用率计算教程详解(STM32版)

    前言 xff1a FreeRTOS 是一个 RTOS 类的嵌入式实时操作系统 xff0c 作为实时操作系统其必定拥有任务调度的属性 通过系统自身的任务调度算法实现任务安全且高效的切换 xff0c 这就不可避免的引出了各个任务对 CPU 的利
  • kubelet残留孤儿pod(Orphaned pod)无法删除

    记录kubelet残留孤儿pod Orphaned pod 无法删除的问题分析和解决方法 问题 查看kubelet日志 xff0c 错误信息如下 xff1a E0823 10 31 01 847946 1303 kubelet volume
  • kubelet无法启动:more than 8 NUMA Nodes

    现象 xff1a kubelet启动报错 unsupported on machines with more than v NUMA Nodes 原因 xff1a maxAllowableNUMANodes specifies the ma
  • openshfit etcd备份恢复

    1 找到etcd的leader节点 xff1a 随机进入一个etcd的pod xff1b 使用 etcdctl endpoint status xff0c 返回值有true的就是etcd leader节点 2 进入etcd leader节点
  • 性能调优之 ETCD

    磁盘 IOPS 调整 etcd 对磁盘写入延迟非常敏感 xff0c 通常需要 50 顺序写入 IOPS 例如 7200RPM 磁盘 对于负载较重的集群 xff0c 建议使用 500 顺序写入 IOPS 例如 xff0c 典型的本地 SSD
  • etcd概述

    本文主要介绍了 etcd 相关概念 xff0c 以及 etcd 的主要使用场景 1 介绍 etcd 是云原生架构中的基础组件 xff0c 由 CNCF 孵化托管 etcd 在微服务和 kubernetes 集群中不仅可以作为服务注册中心用于
  • etcd启动过程梳理

    源码地址 xff1a https github com etcd io etcd 1 入口 scripts build sh run build echo Running 34 1 34 if 1 then log success 34 S
  • etcd v3使用示例

    1 简单使用 1 1 增加 set 指定某个键的值 例如 etcdctl span class token builtin class name set span testdir testkey span class token strin