转载

etcd 2.0发布,大部分功能已稳定

1月28日,CoreOS官方宣布发布etcd 2.0,这是官方发布的首个稳定版本。etcd是一个开源的用于配置共享和服务发现的高性能的键值存储系统,由CoreOS团队开发,也是CoreOS的核心组件,负责CoreOS的自动安全更新、容器相关的覆盖网络设置等功能。目前etcd在 GitHub 上的Star数量已经超过5000,使用etcd的项目也已经超过500个,包括Kubernetes、Cloud Foundry等大型项目。

据官方博客介绍,etcd团队最近一直致力于改善etcd的稳定性,与最近的0.4.6版本(etcd在0.x版本后直接跳到了2.x版本)相比,2.0版本的亮点如下:

  • 改进了内部etcd协议以防止意外配置错误(比如之前使用etcdname作为标志符,而现在使用Token)
  • 增加 etcdctl backup 命令以恢复集群故障
  • 增加 etcdctl member list/add/remove 命令以管理集群
  • 通过使用循环冗余校验和append-only来改进磁盘数据存储的安全性
  • 可以更严格且更快的对Raft算法实现部分代码进行测试
  • 完善了项目文档
  • IANA 为etcd预留了2379/2380端口

业内很多人都会拿etcd与ZooKeeper做对比,它们确实有些类似。不过相比来说,etcd是一个非常年轻的项目,它使用Go语言编写、部署简单,并使用Raft算法保证强一致性(ZooKeeper使用Paxos算法)。2.0正式版距离上一个RC版本发布仅有一个月的时间,这一个月里,官方团队覆盖了所有的测试并完善了系统文档,目前主要功能都已经稳定,并且在很多大型项目都得到了检验,有相关需求的读者可以一试。另外,InfoQ上也有etcd相关的实战文章,读者可以参考阅读。

正文到此结束
Loading...