安装etcd的几种方法

简介

etcd内部采用raft协议作为一致性算法,采用Go语言实现。

etcd是用于分布式系统中最关键数据的分布式可靠键值存储,特点:

  • 简单:安装配置简单,使用也很简单
  • 安全:支持TLS证书验证
  • 快速:根据官方提供的benchmark数据,单实例支持每秒10, 000次写入
  • 可靠:采用raft算法,实现分布式系统数据的可用性和一致性

etcd项目地址:https://github.com/etcd-io/etcd/


centos7 - 安装etcd的几种方法


使用yum安装

在CentOS上就对应的软件包

<code>yum -y install etcd
/<code>

目前罪行版本是3.3的版本。

启动服务和开机启动服务

<code>systemctl start etcd
systemctl enable etcd
/<code>

二进制安装


centos7 - 安装etcd的几种方法

在官方release页面可以找到对应的安装脚本,只需要稍微修改一下即可

<code>ETCD_VER=v3.4.4
# choose either URL
MIRROR_URL=https://mirrors.huaweicloud.com/etcd/

DOWNLOAD_URL=${MIRROR_URL}

rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz

rm -rf /tmp/etcd-download-test && mkdir -p /tmp/etcd-download-test

curl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz

tar xzvf /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /tmp/etcd-download-test --strip-components=1

rm -f /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz

mv /tmp/etcd-download-test /usr/local/etcd

/usr/local/etcd/etcd --version

/usr/local/etcd/etcdctl version

/<code>

启动测试

<code># start a local etcd server
/usr/local/etcd/etcd

# write,read to etcd
/usr/local/etcd/etcdctl --endpoints=localhost:2379 put foo bar

/usr/local/etcd/etcdctl --endpoints=localhost:2379 get foo
/<code>

docker部署


centos7 - 安装etcd的几种方法

最方便的就是使用docker进行部署的,适合用于测试

<code>docker pull quay.io/coreos/etcd

docker run -d -p 2379:2379 -p 2380:2380 --name etcd quay.io/coreos/etcd
/<code>

测试

<code>docker exec etcd /bin/sh -c "/usr/local/bin/etcd --version"

docker exec etcd /bin/sh -c "export ETCDCTL_API=3 ; /usr/local/bin/etcdctl version"

docker exec etcd /bin/sh -c "export ETCDCTL_API=3 ; /usr/local/bin/etcdctl endpoint health"

docker exec etcd /bin/sh -c "export ETCDCTL_API=3 ; /usr/local/bin/etcdctl put foo bar"

docker exec etcd /bin/sh -c "export ETCDCTL_API=3 ; /usr/local/bin/etcdctl get foo"
/<code>


分享到:


相關文章: