Etcd单节点安装
通常情况下Etcd在生产环境中一般推荐集群方式部署。但是为了方便和初学者使用这里讲述的是单节点Etcd安装和基本使用。 Etcd目前默认使用2379端口提供HTTP API服务,2380端口和Peer通信(这两个端口已经被IANA官方预留给Etcd);在之前的版本中可能会分别使用4001和7001,在使用的过程中需要注意这个区别。
由于Etcd 基于Go语言实现,因此,用户可以从Etcd项目主页下载源代码自行编译,也可以下载编译好的二进制文件,甚至直接使用制作好的Docker镜像文件来体验。
这里我用二进制文件来安装,编译好的二进制文件都在Etcd页面,用户可以选择需要的版本,或通过下载工具下载。
使用 curl 工具下载压缩包,并解压。
> curl -L https://github.com/coreos/etcd/releases/download/v3.2.10/etcd-v3.2.10-linux-amd64.tar.gz -o etcd-v3.2.10-linux-amd64.tar.gz
> tar xzvf etcd-v3.2.10-linux-amd64.tar.gz
> cd etcd-v3.2.10-linux-amd64
解压后,可以看到文件包括:
> ls
Documentation README-etcdctl.md README.md READMEv2-etcdctl.md etcd etcdctl
其中etcd服务端,etcdctl是提供给用户的命令客户端,其他文件是支持文档。
下面将 etcd etcdctl 文件放到系统可执行目录(例如 /usr/local/bin/)。
> sudo cp etcd* /usr/local/bin/
默认 2379 端口处理客户端的请求,2380 端口用于集群各成员间的通信。启动 etcd 显示类似如下的信息:
启动etcd:
> ./etcd
2018-06-26 11:06:04.345228 I | etcdmain: etcd Version: 3.2.10
2018-06-26 11:06:04.345271 I | etcdmain: Git SHA: 694728c
2018-06-26 11:06:04.345296 I | etcdmain: Go Version: go1.8.5
2018-06-26 11:06:04.345303 I | etcdmain: Go OS/Arch: linux/amd64
2018-06-26 11:06:04.345310 I | etcdmain: setting maximum number of CPUs to 4, total number of available CPUs is 4
...
可以使用 etcdctl 命令进行测试,设置和获取键值 testkey: “first use etcd”,检查 etcd 服务是否启动成功:
> etcdctl member list
65388a54a71622c7: name=keke peerURLs=http://localhost:2380 clientURLs=http://localhost:2379 isLeader=true
> etcdctl set testkey "first use etcd"
first use etcd
> etcdctl get testkey
first use etcd
这样单节点Etcd就启动成功了!