KIWI'S HOUSE
moeKiwiSAMA
Dec 24, 2018
It takes 3 minutes to read this article.

它是个什么?

etcd是一个分布式高可用的键-值(key-value)存储系统,它侧重于:

  • 简单: 定义明确,面向于用户的API
  • 安全: 自动的TLS和可选的客户端证书验证
  • 快速: 每秒10,000次写入的跑分测试
  • 可靠: 正确得使用Raft算法做到分布式

etcd使用Go编写,并使用Raft算法高可用地管理日志.

那我怎么安装它呢?

下载

etcdrelease里,就能找到它在所有主流平台对应的版本.

需要做的是找到对应的平台下载对应的版本.

最普遍的一个例子,在64位的linux上需要下载的就是etcd-v3.3.10-linux-amd64.tar.gz(文章编写于2018/12/24)

安装

将它解压

tar -zxvf etcd-v3.3.10-linux-amd64.tar.gz

我把它解压在了/home/nyan/etcd-v3.3.10-linux-amd64/这个目录下,按照实际情况修改目录,如果看不懂这里的东西,最好能去温习一下使用linux的基础

接着把etcdetcdctl通过软链写入/usr/bin

ln -s /home/nyan/etcd-v3.3.10-linux-amd64/etcd /usr/bin
ln -s /home/nyan/etcd-v3.3.10-linux-amd64/etcdctl /usr/bin

然后就可以使用etcd指令启动它了

当然,你也可以使用系统自带的包管理器来安装它

配置

etcdctl 要求通过一个环境变量 ETCDCTL_API=3 来使用最新版的API

你可以通过export来设置它

export ETCDCTL_API=3

也可以把它写进你的shell里

如果是bash,那么

echo 'export ETCDCTL_API=3' >> ~/.bashrc

如果跟我一样是zsh,那么

echo 'export ETCDCTL_API=3' >> ~/.zshrc

其他的shell也应该有对应的方法

怎么操作它呢?

建议让etcdscreen或者tmux中运行,然后使用etcdctl来操作它

我们想要存一个"name" 的key和一个”moeKiwiSAMA”的value,要具体怎么实现呢?

etcdctl put "name" "moeKiwiSAMA"

删除"name”这个key

etcdctl del "name"

覆盖掉"name"的value就可以了

etcdctl put "name" "newMoeKiwiSAMA"

使用get来获取"name"这个key对应的value

etcdctl get "name"