欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 幼教 > 【ETCD】etcd简单入门之单节点部署etcd

【ETCD】etcd简单入门之单节点部署etcd

2025/1/19 4:54:57 来源:https://blog.csdn.net/zhangshenglu1/article/details/144115797  浏览:    关键词:【ETCD】etcd简单入门之单节点部署etcd

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

  • 简单:具有明确的、面向用户的 API(gRPC)

  • 安全:自动 TLS 支持,并可选的客户端证书认证

  • 快速:经过基准测试,支持每秒 10,000 次写入

  • 可靠:使用 Raft 算法进行适当分布

    etcd 使用 Go 语言编写,并利用 Raft 共识算法来管理高度可用的复制日志。

​ 许多公司在生产环境中使用 etcd,开发团队在关键部署场景中支持它,etcd 经常与 Kubernetes、locksmith、vulcand、Doorman 等应用程序配合使用。通过严格的健壮性测试,进一步确保了系统的可靠性。

一、在linux下使用二进制安装单节点etcd

1、下载etcd二进制包

​ 首先,你需要从etcd的官方GitHub仓库或其他可信源下载etcd的二进制包。确保选择与你的系统架构(如linux-amd64)和etcd版本(如3.4.14)相匹配的包。

​ 使用wget命令下载,例如:

cd /soft  
wget https://github.com/etcd-io/etcd/releases/download/v3.4.14/etcd-v3.4.14-linux-amd64.tar.gz
2、解压etcd二进制包

下载完成后,使用tar命令解压下载的压缩包。

tar -zxvf etcd-v3.4.14-linux-amd64.tar.gz

解压后,你会看到一个包含etcd二进制文件和相关文件的目录。

3、移动etcd二进制文件

为了方便使用,你可以将etcd二进制文件移动到系统的某个可执行路径下,如

/usr/local/bin
mv etcd-v3.4.14-linux-amd64/etcd /usr/local/bin/

注意:如果你需要etcdctl或其他相关工具,也可以将它们移动到相同的路径下。

4、启动etcd

​ 使用命令行启动etcd。你可以通过指定不同的命令行参数来更改etcd的行为。

etcd --data-dir=/var/lib/etcd/data --listen-client-urls=http://0.0.0.0:2379 --advertise-client-urls=http://0.0.0.0:2379

--data-dir指定了etcd的数据目录,--listen-client-urls--advertise-client-urls指定了etcd监听的客户端URL。

5、测试etcd

使用etcdctl或其他工具来测试etcd是否正常运行。例如,你可以使用etcdctl来设置一个键值对,并检查其是否已经被正确设置。

# 写入一个键为foo 值为 hello world数据
[root@localhost etcd]# ./etcdctl put foo "hello world"
OK

此外也可以直接通过运行下面的脚本进行etcd下载和安装

运行下面的脚本来下载etcd包

ETCD_VER=v3.4.32# choose either URL
GOOGLE_URL=https://storage.googleapis.com/etcd
GITHUB_URL=https://github.com/etcd-io/etcd/releases/download
DOWNLOAD_URL=${GITHUB_URL}rm -f /home/etcd-${ETCD_VER}-linux-amd64.tar.gz
rm -rf /home/etcd && mkdir -p /home/etcdcurl -L ${DOWNLOAD_URL}/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VER}-linux-amd64.tar.gz
tar xzvf /home/etcd-${ETCD_VER}-linux-amd64.tar.gz -C /home/etcd --strip-components=1
rm -f /home/etcd-${ETCD_VER}-linux-amd64.tar.gz/home/etcd/etcd --version
/tmp/etcd/etcdctl version

运行并启动etcd

# start a local etcd server
/home/etcd/etcd  --listen-client-urls 'http://0.0.0.0:2379'  --advertise-client-urls 'http://0.0.0.0:2379'# write,read to etcd
/home/etcd/etcdctl --endpoints=localhost:2379 put foo bar
/home/etcd/etcdctl --endpoints=localhost:2379 get foo

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com