etcd Cheat Sheet

etcd Cheat Sheet

This cheat sheet is for etcd v3 only!

Cluster infos

etcdctl get /_etc/machines/<token>        # Details of a host

etcdctl get /_etc/config

Accessing the key space

etcdctl get "" --prefix --keys-only          # Get full tree

etcdctl get "" --prefix                      # Get full tree keys and values



etcdctl get <key path>                      # Get key details

etcdctl get <key path> --print-value-only   # Get key value only

etcdctl get <key path> --rev=<number>       # Get older revision of a key

etcdctl -o extended get <key path>          # Get key and metadata

etcdctl get <key path> -w=json              # Output in JSON with metadata

Batch queries

etcdctl get key1 key10                      # Get all keys key1, key2, key3, ..., key10

etcdctl get --prefix key                    # Get all keys matching ^key

etcdctl get --prefix key --limit=10         # Get max 10 keys matching ^key

Creating a path

etcdctl mkdir /newpath

etcdctl rmdir /newpath     # Removes only empty paths

Manipulate keys

etcdctl mk     /path/newkey some-data       # Create key

etcdctl set    /path/newkey some-data       # Create or update key

etcdctl update /path/key new-data           # Update key

etcdctl put    /path/key new-data

etcdctl rm     /path/key

etcdctl rm     /path --recursive

Make data and paths expire by passing –ttl when creating paths

etcdctl mkdir     /path --ttl 120     # Path with expiration

etcdctl updatedir /path --ttl 120     # Reset path expiration

Monitoring paths

etcdctl watch /path

etcdctl watch / --prefix              # Recursive watch



# Trigger command on event

etcdctl watch /path --prefix -- printf "Path /path was changed.\n"

Compacting revisions

etcdctl compact <number>     # Drop all revisions older than <number>