Linux单机部署

Linux单机部署

注: 参考 etcd releases页面 的说明

下载

执行下面的命令,下载(大概10M)解压即可,无需安装:

curl -L https://github.com/coreos/etcd/releases/download/v3.0.6/etcd-v3.0.6-linux-amd64.tar.gz -o etcd-v3.0.6-linux-amd64.tar.gz
tar xzvf etcd-v3.0.6-linux-amd64.tar.gz
mv etcd-v3.0.6-linux-amd64 etcd
cd etcd
./etcd --version

etcd Version: 3.0.6
Git SHA: 9efa00d
Go Version: go1.6.3
Go OS/Arch: linux/amd64

注: 以 etcd-v3.0.6 为例,后续更新版本时可能细节有所不同。

安装目录文件列表如下:

$ ls
default.etcd   etcd     README-etcdctl.md  READMEv2-etcdctl.md
Documentation  etcdctl  README.md

运行

直接运行命令 ./etcd 就可以启动了,非常简单:

$ ./etcd
2016-08-29 15:25:10.987041 W | flags: unrecognized environment variable ETCDCTL_API=3
2016-08-29 15:25:10.987143 I | etcdmain: etcd Version: 3.0.6
2016-08-29 15:25:10.987160 I | etcdmain: Git SHA: 9efa00d
2016-08-29 15:25:10.987177 I | etcdmain: Go Version: go1.6.3
2016-08-29 15:25:10.987192 I | etcdmain: Go OS/Arch: linux/amd64
2016-08-29 15:25:10.987216 I | etcdmain: setting maximum number of CPUs to 8, total number of available CPUs is 8
2016-08-29 15:25:10.987232 W | etcdmain: no data-dir provided, using default data-dir ./default.etcd
2016-08-29 15:25:10.987588 I | etcdmain: listening for peers on http://localhost:2380
2016-08-29 15:25:10.987651 I | etcdmain: listening for client requests on localhost:2379
2016-08-29 15:25:10.990811 I | etcdserver: name = default
2016-08-29 15:25:10.990843 I | etcdserver: data dir = default.etcd
2016-08-29 15:25:10.990859 I | etcdserver: member dir = default.etcd/member
2016-08-29 15:25:10.990874 I | etcdserver: heartbeat = 100ms
2016-08-29 15:25:10.990888 I | etcdserver: election = 1000ms
2016-08-29 15:25:10.990904 I | etcdserver: snapshot count = 10000
2016-08-29 15:25:10.990934 I | etcdserver: advertise client URLs = http://localhost:2379
2016-08-29 15:25:10.990952 I | etcdserver: initial advertise peer URLs = http://localhost:2380
2016-08-29 15:25:10.990975 I | etcdserver: initial cluster = default=http://localhost:2380
2016-08-29 15:25:10.995843 I | etcdserver: starting member 8e9e05c52164694d in cluster cdf818194e3a8c32
2016-08-29 15:25:10.996018 I | raft: 8e9e05c52164694d became follower at term 0
2016-08-29 15:25:10.996238 I | raft: newRaft 8e9e05c52164694d [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
2016-08-29 15:25:10.996271 I | raft: 8e9e05c52164694d became follower at term 1
2016-08-29 15:25:11.013314 I | etcdserver: starting server... [version: 3.0.6, cluster version: to_be_decided]
2016-08-29 15:25:11.014091 I | membership: added member 8e9e05c52164694d [http://localhost:2380] to cluster cdf818194e3a8c32
2016-08-29 15:25:11.197323 I | raft: 8e9e05c52164694d is starting a new election at term 1
2016-08-29 15:25:11.197377 I | raft: 8e9e05c52164694d became candidate at term 2
2016-08-29 15:25:11.197388 I | raft: 8e9e05c52164694d received vote from 8e9e05c52164694d at term 2
2016-08-29 15:25:11.197408 I | raft: 8e9e05c52164694d became leader at term 2
2016-08-29 15:25:11.197420 I | raft: raft.node: 8e9e05c52164694d elected leader 8e9e05c52164694d at term 2
2016-08-29 15:25:11.197820 I | etcdserver: published {Name:default ClientURLs:[http://localhost:2379]} to cluster cdf818194e3a8c32
2016-08-29 15:25:11.197845 I | etcdmain: ready to serve client requests
2016-08-29 15:25:11.197979 I | etcdserver: setting up the initial cluster version to 3.0
2016-08-29 15:25:11.198202 N | etcdmain: serving insecure client requests on localhost:2379, this is strongly discouraged!
2016-08-29 15:25:11.199390 N | membership: set the initial cluster version to 3.0
2016-08-29 15:25:11.199458 I | api: enabled capabilities for version 3.0

默认使用2379端口为客户端提供通讯, 并使用端口2380来进行服务器间通讯。

查看当前安装的版本:

$ ./etcd --version
etcd Version: 3.0.6
Git SHA: 9efa00d
Go Version: go1.6.3
Go OS/Arch: linux/amd64

配置

为了方便使用,将 etcd 加入 PATH,另外设置 ETCDCTL_API 为3(后面解释)。

/etc/profile 中加入以下内容:

# etcd
export PATH=/home/sky/work/soft/etcd:$PATH
export ETCDCTL_API=3

然后执行 source /etc/profile 重新加载。

客户端访问

配置etcdctl

etcdctl 是 etcd 的客户端命令行。

特别提醒:使用 etcdctl 前,**务必设置环境变量 ETCDCTL_API=3 **!

注意:如果不设置 ETCDCTL_API=3,则默认是的API版本是2:

$ ./etcdctl --version
etcdctl version: 3.0.6
API version: 2

正确设置后,API版本变成3:

$ etcdctl version
etcdctl version: 3.0.6
API version: 3.0

使用etcdctl

通过下面的put和get命令来验证连接并操作etcd:

$ ./etcdctl put aaa 1
OK
$ ./etcdctl get aaa
aaa
1

总结

上面操作完成之后,就有一个可运行的简单 etcd 服务器和一个可用的 etcdctl 客户端。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

墨痕_777

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值