首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Etcd-常用命令

Etcd-常用命令

作者头像
运维小路
发布2026-02-28 18:22:27
发布2026-02-28 18:22:27
550
举报
文章被收录于专栏:运维小路运维小路

作者介绍:简历上没有一个精通的运维工程师,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

数据库是一个系统(应用)最重要的资产之一,所以我们的数据库将从以下几个数据库来进行介绍。

MySQL

PostgreSQL

MongoDB

Redis

Etcd(本章节)

Etcd数据库对于运维来说,最重要的是就集群状态的维护,但是etcd不光有集群维护的命令,还有其他想的命令,本小节做个简单介绍。

etcd 的操作主要通过命令行工具 etcdctl 完成。在使用 v3 版本的命令前,建议通过以下方式设置环境变量,以确保使用的是 v3 API:

代码语言:javascript
复制
export ETCDCTL_API=3

集群运维与管理

这类命令用于查看集群状态、成员信息以及进行性能维护。

命令

功能描述

常用示例

member list

列出集群所有成员的信息,包括 ID、状态、名称和地址。

etcdctl member list --write-out=table

endpoint status

查看指定端点的状态,如版本、数据量大小、是否为 Leader。

etcdctl endpoint status --write-out=table

endpoint health

检查端点的健康状态。

etcdctl endpoint health

snapshot save

创建 etcd 数据库的快照(备份)。

etcdctl snapshot save snapshot.db

snapshot restore

从快照文件恢复数据。

etcdctl snapshot restore snapshot.db

defrag

整理 etcd 后端存储的碎片,释放磁盘空间(通常在对大量键进行删除或压缩后执行)。

etcdctl defrag

alarm list

列出所有告警,如 NOSPACE(空间不足)警告。

etcdctl alarm list

alarm disarm

解除所有告警。

etcdctl alarm disarm

compaction

压缩所有键值数据的历史修订版本,以释放存储空间。

etcdctl compaction <revision>

键值对操作(增删改查)

这是 etcd 最核心的数据操作功能。

命令

功能描述

常用示例

put

写入或更新一个键的值。

etcdctl put /path/key "value"

get

获取指定键的值。

etcdctl get /path/key

get (前缀)

获取所有以指定前缀开头的键。

etcdctl get --prefix /path

get (从...开始)

获取所有大于或等于指定键字节值的键。

etcdctl get --from-key b

del

删除一个键。

etcdctl del /path/key

del (前缀)

删除所有以指定前缀开头的键。

etcdctl del --prefix /path

put (带租约)

设置一个带租约(有效期)的键,租约到期后键自动删除。

etcdctl put key value --lease=<lease_id>

租约、锁与选举

这些命令用于实现分布式协调。

命令

功能描述

常用示例

lease grant

创建一个新的租约,并指定其存活时间(TTL,单位为秒)。

etcdctl lease grant 300

lease keep-alive

续约一个租约,使其保持有效。

etcdctl lease keep-alive <lease_id>

lease revoke

撤销一个租约,与其绑定的键将被立即删除。

etcdctl lease revoke <lease_id>

lease list

列出所有活跃的租约。

etcdctl lease list

lock

创建一个分布式锁。如果锁已被占用,命令会阻塞直到获取到锁。

etcdctl lock mutex1

elect

参与领导者选举。

etcdctl elect election-name

监控与事务

用于监听数据变化和执行条件式操作。

命令

功能描述

常用示例

watch

监视一个键的变化,当键被更新或删除时实时输出事件。

etcdctl watch /path/key

watch (前缀)

监视所有以指定前缀开头的键的变化。

etcdctl watch --prefix /path

watch (带版本)

从指定修订版本开始监视键的历史变化。

etcdctl watch --rev=<revision> key

txn

在事务中执行多个操作(if-else 逻辑)。

etcdctl txn --interactive

用户认证与权限

用于管理 etcd 的安全访问控制(RBAC)。

命令

功能描述

常用示例

user add

添加一个新用户。

etcdctl user add root

user list

列出所有用户。

etcdctl user list

role add

添加一个新角色。

etcdctl role add rolename

role grant-permission

授予角色对某个键范围的读写权限。

etcdctl role grant-permission rolename readwrite /path

user grant-role

授予用户一个角色。

etcdctl user grant-role username rolename

auth enable

开启 etcd 的身份验证功能。

etcdctl auth enable

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-02-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维小路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MongoDB
    • Etcd数据库对于运维来说,最重要的是就集群状态的维护,但是etcd不光有集群维护的命令,还有其他想的命令,本小节做个简单介绍。
    • etcd 的操作主要通过命令行工具 etcdctl 完成。在使用 v3 版本的命令前,建议通过以下方式设置环境变量,以确保使用的是 v3 API:
    • 集群运维与管理
    • 键值对操作(增删改查)
    • 租约、锁与选举
    • 监控与事务
    • 用户认证与权限
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档