centos7 - 安装etcd的几种方法
简介
etcd内部采用raft协议作为一致性算法,采用Go语言实现。
etcd是用于分布式系统中最关键数据的分布式可靠键值存储,特点:
- 简单:安装配置简单,使用也很简单
- 安全:支持TLS证书验证
- 快速:根据官方提供的benchmark数据,单实例支持每秒10, 000次写入
- 可靠:采用raft算法,实现分布式系统数据的可用性和一致性
etcd项目地址:https://github.com/etcd-io/etcd/
使用yum安装
在CentOS上就对应的软件包
yum -y install etcd
目前罪行版本是3.3的版本。
启动服务和开机启动服务
systemctl start etcd
systemctl enable etcd
二进制安装
在官方release页面可以找到对应的安装脚本,只需要稍微修改一下即可
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
启动测试
# 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
docker部署
最方便的就是使用docker进行部署的,适合用于测试
docker pull quay.io/coreos/etcd
docker run -d -p 2379:2379 -p 2380:2380 --name etcd quay.io/coreos/etcd
测试
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"
- 原文作者:Linux运维菜
- 原文链接:https://www.opcai.top/post/2020/2020-03/install_etcd/
- 版权声明:本作品采用进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。