etcd的安装与命令行使用

背景

etcd是CoreOS团队于2013年6月发起的一个开源项目,它是一个优秀的高可用分布式键值对存储数据库。etcd内部采用了Raft协议作为一致性算法,且使用Go实现。

这篇文章主要记录etcd在Linux上的单机版安装与简单的命令行使用。主要是供初学者参考。

etcd的安装

etcd的github路径地址为:https://github.com/etcd-io/etcd

我们可以直接从github中将安装压缩包下载到测试机上,使用命令

wget https://github.com/coreos/etcd/releases/download/v3.3.25/etcd-v3.3.25-linux-amd64.tar.gz

其中3.3.25为etcd的版本号,目前etcd主要有v2和v3两个大版本。

我们也可以将版本号改为更早的版本,可以在地址https://github.com/etcd-io/etcd/releases查看etcd的已发布版本信息。

下载之后,我们使用命令:tar xzvf etcd-v3.3.25-linux-amd64.tar.gz进行解压,

然后使用命令mv etcd-v3.3.25-linux-amd64 /opt/etcd把目录移到opt目录下,/opt目录下一般用于存放下载的第三方软件。

到此,etcd就安装完毕了。

etcd服务端启动

如果我们只是在测试环境学习etcd,那么可以直接进入etcd的安装目录/opt/etc,用./etcd启动etcd。

这时etcd服务端会打印出一系列信息:
在这里插入图片描述

包括了etcd、go、git等版本信息,以及raft协议选举出来的leader节点信息等等。

etcd客户端的使用

这时,我们可以再次开启一个终端,然后配置一下环境变量:

/etc/profile文件底部添加一行:export PATH=${PATH}:/opt/etcd

然后运行命令source /etc/profile生效环境变量。

这时可以直接使用etcd提供的命令行操作工具etcdctl了,我们输入命令etcdctl -h可以看到etcdctl简单的使用方法。
在这里插入图片描述
我们演示几个命令行使用:

etcdctl mkdir v  // 创建目录v
etcdctl mkdir v/sub_v  // 在目录v下创建目录sub_v
etcdctl mk v/sub_v/key1 value1  // 在目录v/sub_v下创建键key1以及对应的值value1
etcdctl ls -r  // 查看所有的目录以及键

结果:

/v
/v/sub_v
/v/sub_v/key1

使用etcdctl get查看某个键值:

etcdctl get v/sub_v/key1

结果:

value1

etcdctl还有许多的命令以及可选项,可以参考help中的介绍练习使用。

当然,etcd还提供了REST API的方式让我们可以通过HTTP来访问etcd的存储,HTTP提供的接口操作基本与命令行操作差不多,我们可以用etcdctl来熟悉相关操作。