当前位置: 首页 > news >正文

【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

http://www.lryc.cn/news/495362.html

相关文章:

  • Cadence基础语法
  • GAMES101虚拟机使用教程与探讨
  • 王道考研编程题总结
  • 算法2--滑动窗口
  • pycharm或conda中配置镜像源
  • C#基础之方法
  • JVM 性能调优 -- JVM常用调优工具【jps、jstack、jmap、jstats 命令】
  • PostgreSQL 三种关库模式
  • 《运放秘籍》第二部:仪表放大器专项知识点总结
  • C++STL之vector(超详细)
  • ubuntu环境下安装electron环境,并快速打包
  • 【Pytorch】优化器(Optimizer)模块‘torch.optim’
  • API平台建设之路:从0到1的实践指南
  • 【Flink-scala】DataStream编程模型之窗口计算-触发器-驱逐器
  • 信号灯集以及 P V 操作
  • 在 Flutter app 中,通过视频 URL 下载视频到手机相册
  • Nature Methods | 人工智能在生物与医学研究中的应用
  • Axure PR 9 随机函数 设计交互
  • 【人工智能基础05】决策树模型
  • 【人工智能基础03】机器学习(练习题)
  • HarmonyOS(60)性能优化之状态管理最佳实践
  • 数据库课程设计报告 超市会员管理系统
  • C++算法练习-day54——39.组合总和
  • 计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
  • Linux的文件系统
  • 【Vue3】从零开始创建一个VUE项目
  • 9)语法分析:半倒装和全倒装
  • Scala关于成绩的常规操作
  • 使用Java实现度分秒坐标转十进制度的实践
  • 根据后台数据结构,构建搜索目录树