写点什么

Consul 0.7 新增原子键 / 值更新和 ACL 复制特性,提升了协议健壮性

  • 2016-09-27
  • 本文字数:945 字

    阅读完需:约 3 分钟

9 月 14 日, Hashicorp 发布了其开源分布式服务发现和配置工具 Consul 的 0.7 版本。该版本号称是一个“非常重大的版本”,引入了键 / 值更新事务、跨数据中心复制 ACL,并改进了其 Raft Gossip 协议实现,优化了相应的计时方式。

Consul 已经成为现代分布式应用程序和数据中心的重要组成部分。据 Hashicorp 介绍,“这个版本的重点是简化 Consul 集群操作,为未来版本不断地改善操作打下重要的基础。”变更日志列出了该版本带来的特性、改进和 Bug 修复,下面是其中一些最重要的变化。

原子键 / 值更新

新的 /v1/txn 端点可以在单个原子事务中处理 Consul 键 / 值配置数据存储上的多个更新。单个更新可以包含多达 64 个键 / 值操作及一系列可能的动作。除了一般的读取、设置和删除动作外,它还支持锁操作、检查和条件修改(检查 - 设置)。成组的更新被作为一个 JSON 数组传入。如果有任何操作没有成功,则整个事务都会回滚,结果和错误都通过一个数组返回。

多数据中心 ACL 复制

在多数据中心 Consul 配置中,新的 ACL 复制特性允许用户将整套的 ACL 从 ACL 数据中心同步到非授权的数据中心,防止网络分区。在 0.7 版本之前,非授权数据中心的 ACL 只是一份缓存,在 WAN 故障时可能会导致 ACL 不完整。

改进健壮性、性能和操作

  • 更新后的 Raft 库改进了集群成员变化后的处理过程以及仲裁失败后的恢复过程。而且现在,默认的 Raft 计时据称在性能较低的服务器上更有效了。

  • 通过一个名为 Lifeguard 特性扩展了 Gossip 协议,可以防止不能满足软实时性要求的退化节点“导致其他健康节点的 serfHealth 波动”。

  • 为了重新分配查询负载,Consul 代理会定期连接可用的 Consul 服务器。

  • Consul 操作员可以使用 consul operator命令管理 Raft 配置,如查看 Raft 配置:

    consul operator raft -list-peers

    或者不停机手动删除对等节点中的过期服务器:

    consul operator raft -remove-peer -address=“127.0.0.1:8300”

Consul 升级指南详细介绍了如何从特定的版本升级到 0.7。由于不再支持 Consul 协议 v1,所以新版本和 0.3 之前的版本是不兼容的。

在此次更新之前,Consul 今年(3 月 16 日)还增加了支持模板的预处理查询和一个官方Docker Consul 镜像

查看英文原文 Consul 0.7 Adds Atomic K/V Updates, ACL Replication and Improved Protocol Robustness

2016-09-27 19:001853
用户头像

发布了 1008 篇内容, 共 389.3 次阅读, 收获喜欢 344 次。

关注

评论

发布
暂无评论
发现更多内容

《原则》(十二)

Changing Lin

6月日更

「SQL数据分析系列」1. SQL背景知识介绍

Databri_AI

数据库 sql

【21-5】Grafana 时间Panel 如何使用

耳东@Erdong

Grafana 6月日更 panel clock

【通俗易懂】虚拟DOM,如何更高效DIFF

蛋先生DX

Diff 6月日更

Python——数值列表

在即

6月日更

MySQL基础之十:union与limit

打工人!

myslq 6月日更

提升代码格调——JavaScript 数组的 reduce() 方法入门

编程三昧

JavaScript 大前端 数组 js ES6

贪心算法最优装载问题(Java代码实现)

若尘

数据结构 贪心算法 6月日更

【Vue2.x 源码学习】第十二篇 - 生成 ast 语法树-流程说明

Brave

源码 vue2 6月日更

【Flutter 专题】105 图解自定义 ACEPageMenu 滑动菜单 (一)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 6月日更

模块六作业 - 拆分电商系统为微服务

张大彪

【LeetCode】重复的DNA序列Java题解

Albert

算法 LeetCode 6月日更

redis分布式锁原理

Skysper

redis 分布式锁

架构实战营-作业六

大可

未来,能源枯竭可以逆转吗?

脑极体

雪花算法的原理及实现

架构精进之路

算法 6月日更

分享8个可以提高开发效率的JavaScript库

devpoint

node.js axios 6月日更

立flag(第………………次)

凯迪

随笔杂谈

HTTP 长连接和短连接

看山

TCP/IP HTTP协议 6月日更

Scrum Patterns : MetaScrum(译)

Bruce Talk

敏捷开发 译文 Agile Scrum Patterns

职场礼仪之坐车礼仪

石云升

6月日更 职场礼仪

【译】JavaScript 中几种循环遍历方式对比

KooFE

6月日更

内卷的出路是躺平?

Qien Z.

创新 内卷 6月日更 躺平

一文带你深入了解 Java 字节码

mghio

技术 后端 Java 25 周年 基础

并发王者课-黄金2:行稳致远-如何让你的线程免于死锁

MetaThoughts

Java 多线程 并发

TempDB 的使用和性能问题

悟空聊架构

sql 性能调优 6月日更 TempDB

话题讨论|如何看待腾讯试点强制6点下班

石云升

话题讨论 加班文化 6月日更

Windows 10 如何设置网络属性为私有

HoneyMoose

网络攻防学习笔记 Day43

穿过生命散发芬芳

网络攻防 6月日更

SpringCloud Gateway 路由数量对性能的影响研究

黄仲辉

性能优化 动态路由 SpringCloud Gateway JMH性能基准测试

未来,能源枯竭可以逆转吗?

白洞计划

Consul 0.7新增原子键/值更新和ACL复制特性,提升了协议健壮性_DevOps & 平台工程_Grischa Ekart_InfoQ精选文章