etcdctl是一个命令行的客户端,它提供了一下简洁的命令,可理解为命令工具集,可以方便我们在对服务进行测试或者手动修改数据库内容。etcdctl与其他xxxctl的命令原理及操作类似(例如kubectl,systemctl)。
用法:etcdctl [global options] command [command options][args...]
etcd 在键的组织上采用了层次化的空间结构(类似于文件系统中目录的概念),数据库操作围绕对键值和目录的 CRUD [增删改查](符合 REST 风格的一套操作:Create, Read, Update, Delete)完整生命周期的管理。
具体的命令选项参数可以通过 etcdctl command --help来获取相关帮助。
-
etcdctl backup
-
etcdctl watch key
-
etcdctl exec-watch key --sh -c "ls"
-
etcdctl member list;etcdctl member add 实例;etcdctl member remove 实例;etcdctl member update 实例。
设置配置文件,默认为/etc/etcd/etcd.conf。
配置参数 | 参数说明 |
---|---|
配置参数 | 参数说明 |
-name | 节点名称 |
-data-dir | 保存日志和快照的目录,默认为当前工作目录,指定节点的数据存储目录 |
-addr | 公布的ip地址和端口。 默认为127.0.0.1:2379 |
-bind-addr | 用于客户端连接的监听地址,默认为-addr配置 |
-peers | 集群成员逗号分隔的列表,例如 127.0.0.1:2380,127.0.0.1:2381 |
-peer-addr | 集群服务通讯的公布的IP地址,默认为 127.0.0.1:2380. |
-peer-bind-addr | 集群服务通讯的监听地址,默认为-peer-addr配置 |
-wal-dir | 指定节点的was文件的存储目录,若指定了该参数,wal文件会和其他数据文件分开存储 |
-listen-client-urls | |
-listen-peer-urls | 监听URL,用于与其他节点通讯 |
-initial-advertise-peer-urls | 告知集群其他节点url. |
-advertise-client-urls | 告知客户端url, 也就是服务的url |
-initial-cluster-token | 集群的ID |
-initial-cluster | 集群中所有节点 |
-initial-cluster-state | -initial-cluster-state=new 表示从无到有搭建etcd集群 |
-discovery-srv | 用于DNS动态服务发现,指定DNS SRV域名 |
-discovery | 用于etcd动态发现,指定etcd发现服务的URL [https://discovery.etcd.io/],用环境变量表示 |