百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

kafka抄书04 kafkapdf

bigegpt 2024-10-19 02:48 8 浏览

原文地址:https://kafka.apache.org/documentation/#gettingStarted

欢迎点赞收藏+关注 比心


1.5从以前版本升级

升级到3.6.1,从0.8.x到3.5.x

改进基于Zaukeeper的集群

如果您是在2.1.X之前从一个版本升级的,请参阅下文步骤5中的说明,说明对用于存储消费者补偿的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.5 ,3.4 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.5 ,3.4 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在3.6 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

改进以裂缝为基础的集群

如果您正在从3.3.0之前的版本升级,请参见下文步骤3中的注。一旦你改变了梅塔达塔。版本到了最新版本,就不可能降级到3.3-IV0之前的版本。

滚动升级:

  1. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。
  2. 一旦集群的行为和性能得到验证,通过运行来撞击元模型。 ./bin/kafka-features.sh upgrade --metadata 3.6
  3. 注意,这个版本不支持集群元数据降级,因为它有元数据更改。每一个 厌恶元计算 在3.2.X之后,有一个布尔参数,表示是否有元数据变化(即。IBP_3_3_IV3(7, "3.3", "IV3", true) 意味着这个版本有元数据更改)。鉴于您的当前版本和目标版本,只有在版本之间没有元数据变化的情况下才有可能降级。

3.6.0的显著变化

  • 阿帕奇卡夫卡现在支持在同一端口同时拥有IPv4和IPv6监听器。此更改只适用于未公布的监听器(已公布的监听器有此功能)
  • 阿帕奇动物园饲养员的附属关系已升级到3.8.1,因为已经到了3.6年。把你的卡夫卡和动物园管理员集群带到最新版本:>=2.4 卡夫卡集群可以直接更新。动物园管理员集群是运行与卡夫卡2.4或以上版本捆绑在一起的二进制文件,可以直接更新。<2.4 卡夫卡集群首先需要更新为大于2.4和小于3.6的版本。运行与2.4以下卡夫卡版本捆绑的二进制文件的动物园管理员集群需要更新为与2.4以上、3.6以下卡夫卡版本绑定的任何二进制文件。然后你可以跟着第一点。有关详情,请参阅 KIP-902 .
  • 配置log.message.timestamp.difference.max.ms 反对。两个新配置,log.message.timestamp.before.max.mslog.message.timestamp.after.max.ms ,加了。详情请参阅 KIP-937 .
  • 卡夫卡·克里斯蒂尔引入了一个新的任务分配人,RackAwareTaskAssignor ,用于计算在特定条件下可以最小化交叉架流量的任务分配。它与现有的StickyTaskAssignorHighAvailabilityTaskAssignor .看 KIP-925 和 卡夫卡流开发指南 更多的细节。
  • 为了解释3.1.0版本引入的兼容性中断,镜像制造者2增加了一个新的 replication.policy.internal.topic.separator.enabled 财产。如果升级为3.0.X或更早,可能需要将该属性设置为false ;请参阅 文件 更多的细节。
  • 可及早访问分层存储功能,不建议在生产环境中使用。欢迎对其进行测试,并提供任何反馈。有关早期存取分层存储功能的更多信息,请查询 KIP-405 和 分层存储早期存取说明 .
  • 事务分区验证( KIP-890 )已添加到数据分区,以防止挂起事务。有压缩的工作负载可以经历暂停记录和不知道记录.此功能可通过设置来禁用transaction.partition.verification.enable 为了假的。请注意,3.6的默认值是正确的。配置也可以动态更新,并应用于代理。这将在3.6.1中修正。看 KAFKA-15653 更多的细节。

升级到3.5.2,从0.8.X至3.4.X任何版本

所有升级步骤保持不变 升级至3.5.0

3.5.2的显著变化

  • 当将生产者身份证块从ZK迁移到卡夫时,可能会有重复的生产者身份证提供给事务或等离子生产者。这可能会导致长期的问题,因为生产者身份证将被持久化并被长期重用。看 KAFKA-15552 更多的细节。
  • 在3.5.0和3.5.1中,可能会出现一个问题,即在滚动升级期间,在改变分配请求之后,从控制器返回空的ISR。这个问题将影响主题分区的可用性。看 KAFKA-15353 更多的细节。

升级到3.5.1,从0.8.X到3.4.X任何版本

所有升级步骤保持不变 升级至3.5.0

3.5.1的显著变化

  • 升级的依赖,斯纳佩-Java,一个不脆弱的版本 CVE-2023-34455. 你可以在 卡夫卡简历。
  • 修正了3.3.0中引入的回归,它导致了security.protocol 配置值仅限于最上层。在修复之后,security.protocol 值不区分大文本。看 KAFKA-15053 关于细节。

升级到3.5.0,从任何0.8.X到3.4.X版本

改进基于Zaukeeper的集群

如果您是在2.1.X之前从一个版本升级的,请参阅下文步骤5中的说明,说明对用于存储消费者补偿的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.4 ,3.3 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.4 ,3.3 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在3.5 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

改进以裂缝为基础的集群

如果您正在从3.3.0之前的版本升级,请参见下文步骤3中的注。一旦你改变了梅塔达塔。版本到了最新版本,就不可能降级到3.3-IV0之前的版本。

滚动升级:

  1. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。
  2. 一旦集群的行为和性能得到验证,通过运行来撞击元模型。 ./bin/kafka-features.sh upgrade --metadata 3.5
  3. 注意,这个版本不支持集群元数据降级,因为它有元数据更改。每一个 厌恶元计算 在3.2.X之后,有一个布尔参数,表示是否有元数据变化(即。IBP_3_3_IV3(7, "3.3", "IV3", true) 意味着这个版本有元数据更改)。鉴于您的当前版本和目标版本,只有在版本之间没有元数据变化的情况下才有可能降级。

3.5.0的显著变化

  • 卡夫卡流引入了一种新的状态存储类型,即版本键值存储,用于存储每个键的多个记录版本,从而使具有时间戳的检索操作能够在指定时间戳时返回最新记录(每个键)。看 KIP-889 和 KIP-914 更多的细节。如果DSL中使用了新的存储类型,则将改进的处理语义应用于DSL中。 KIP-914 .
  • 通过 KIP-904 ,现在避免虚假的中间结果。
  • 卡夫卡河ProductionExceptionHandler 是通过 KIP-399 ,现在也覆盖序列化错误。
  • 镜像制造商现在默认情况下使用增量交换协议API来同步主题配置,而不是使用被弃用的Alter孔协议API。一种新的设置叫做use.incremental.alter.configs 引入允许用户控制使用哪个API。此新设置被标记为反对使用,并将在下一次主要发布时删除,此时将始终使用增量更改支持API。看 KIP-894 更多的细节。
  • 已将JMXX工具、端到滞、流显示器、用户性能和集群工具迁移到工具模块。卡夫卡工具包被弃用,并将在下一次的主要发行中改为"或者"。看 KAFKA-14525 更多的细节。

升级到3.4.0,从任何0.8.X到3.3.X版本

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.3 ,3.2 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.3 ,3.2 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在3.4 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到了0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

将任何版本的3.0.X至3.3.X基于变形的集群升级为3.4.0

如果您正在从3.3.0之前的版本升级,请参阅下面的说明。一旦你改变了梅塔达塔。版本到了最新版本,就不可能降级到3.3-IV0之前的版本。

滚动升级:

  1. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。
  2. 一旦集群的行为和性能得到验证,通过运行来撞击元模型。 ./bin/kafka-features.sh upgrade --metadata 3.4
  3. 注意,这个版本不支持集群元数据降级,因为它有元数据更改。每一个 厌恶元计算 在3.2.X之后,有一个布尔参数,表示是否有元数据变化(即。IBP_3_3_IV3(7, "3.3", "IV3", true) 意味着这个版本有元数据更改)。鉴于您的当前版本和目标版本,只有在版本之间没有元数据变化的情况下才有可能降级。

3.4.0的显著变化

  • 自阿帕奇卡夫卡3.4.0以来,我们添加了一个系统属性("Org.apache.kafka.),以禁用SSAJAS配置中有问题的登录模块使用。在默认情况下,阿帕奇卡夫卡3.4.0禁用了"安全性"。

升级到3.3.1,从0.8.X到3.2.X任何版本

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.2 ,3.1 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.2 ,3.1 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在3.3 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

将任何版本的3.0.X至3.2.X基于变形的集群升级为3.3.1

如果您正在从3.3.1之前的版本升级,请参阅下面的说明。一旦你改变了梅塔达塔。版本到了最新版本,就不可能降级到3.3-IV0之前的版本。

滚动升级:

  1. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。
  2. 一旦集群的行为和性能得到验证,通过运行来撞击元模型。 ./bin/kafka-features.sh upgrade --metadata 3.3
  3. 注意,这个版本不支持集群元数据降级,因为它有元数据更改。每一个 厌恶元计算 在3.2.X之后,有一个布尔参数,表示是否有元数据变化(即。IBP_3_3_IV3(7, "3.3", "IV3", true) 意味着这个版本有元数据更改)。鉴于您的当前版本和目标版本,只有在版本之间没有元数据变化的情况下才有可能降级。

3.3.1的显著变化

  • 克拉夫特模式正在生产新的集群。看 KIP-833 详情(包括限制)。
  • 在默认情况下用于无键记录的分割器已经改进,以避免在一个或多个经纪人缓慢时出现病态行为。新的逻辑可能会影响到批处理行为,这种行为可以通过batch.size 和/或linger.ms 配置设置。通过设置可以恢复先前的行为partitioner.class=org.apache.kafka.clients.producer.internals.DefaultPartitioner .看 KIP-794 更多的细节。
  • 如上文所述,卡夫集群目前的升级流程与ZK集群略有不同。
  • 介绍了一种新的APIaddMetricIfAbsentMetrics 如果不存在,将创建一个新的度量,如果已经注册,则返回相同的度量。注意到这种行为不同于addMetric 把一个IllegalArgumentException 当试图创建一个已经存在的度量时。(见 KIP-843 更多详情)。

升级到3.2.0,从任何0.8.X到3.1.X版本

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.1 ,3.0 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.1 ,3.0 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在3.2 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

3.2.0的显著变化

  • 如果没有设置冲突的配置,则默认启用生产者的等值性。当生产给2.08岁以上的经纪人时,IDEMPOTENT_WRITE 必须获得许可。检查兼容性部分 KIP-679 关于细节。在3.0.0和3.1.0中,一个错误阻止了该默认值的应用,这意味着除非用户明确设置,否则等离子性仍然无效。enable.idempotence (见 KAFKA-13598 更多详情)。这一问题已经解决,在3.1.1、3.1.1和3.2.0中适当适用了默认情况。
  • 一个值得注意的例外是连接,在默认情况下,它的所有生产者都禁用了等位性行为,以便使用广泛的卡夫卡代理版本一致支持。用户可以通过连接工作人员和/或连接器配置,改变这种行为,为部分或所有生产者启用等离子。连接可以在默认情况下,在未来的主要版本中使等离子生产商。
  • 卡夫卡出于安全考虑,已经用重新设计的4J替换了LO4J。这只会影响到指定记录后端的模块(connect-runtimekafka-tools 这是两个例子)。一些模块,包括kafka-clients ,让应用程序指定日志后端。详情请浏览 重新部署4j .依赖卡夫卡项目受影响模块的项目应使用 1.7.35或以上版本 或以避免 伐木框架可能引起的兼容性问题 .
  • 例如连接器,FileStreamSourceConnectorFileStreamSinkConnector ,已从默认类路径中删除。要在卡夫卡连接独立或分布式模式中使用它们,需要显式添加,例如CLASSPATH=./libs/connect-file-3.2.0.jar ./bin/connect-distributed.sh .

升级到3.1.0,从任何0.8.X到3.0.X版本

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.0 ,2.8 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.3.0 ,2.8 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在3.1 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

3.1.1的显著变化

  • 如果没有设置冲突的配置,则默认启用生产者的等值性。当生产给2.08岁以上的经纪人时,IDEMPOTENT_WRITE 必须获得许可。检查兼容性部分 KIP-679 关于细节。一个错误阻止了生产者等功能默认应用,这意味着它仍然是禁用的,除非用户明确设置enable.idempotence 为了真实。看 KAFKA-13598 更多的细节。这个问题已经解决了,默认的应用是正确的。
  • 一个值得注意的例外是连接,在默认情况下,它的所有生产者都禁用了等位性行为,以便使用广泛的卡夫卡代理版本一致支持。用户可以通过连接工作人员和/或连接器配置,改变这种行为,为部分或所有生产者启用等离子。连接可以在默认情况下,在未来的主要版本中使等离子生产商。
  • 卡夫卡出于安全考虑,已经用重新设计的4J替换了LO4J。这只会影响到指定记录后端的模块(connect-runtimekafka-tools 这是两个例子)。一些模块,包括kafka-clients ,让应用程序指定日志后端。详情请浏览 重新部署4j .依赖卡夫卡项目受影响模块的项目应使用 1.7.35或以上版本 或以避免 伐木框架可能引起的兼容性问题 .

3.1.0的显著变化

  • 阿帕奇卡夫卡支持Java17。
  • 以下指标被否决:bufferpool-wait-time-total ,io-waittime-total ,以及iotime-total .请使用bufferpool-wait-time-ns-total ,io-wait-time-ns-total ,以及io-time-ns-total 相反。看 KIP-773 更多的细节。
  • IBM3.1将主题ID作为请求的一部分 KIP-516 .

升级到3.0.1,从任何0.8.X到2.8.X版本

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.8 ,2.7 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.8 ,2.7 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在3.0 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

3.0.1的显著变化

  • 如果没有设置冲突的配置,则默认启用生产者的等值性。当生产给2.08岁以上的经纪人时,IDEMPOTENT_WRITE 必须获得许可。检查兼容性部分 KIP-679 关于细节。一个错误阻止了生产者等功能默认应用,这意味着它仍然是禁用的,除非用户明确设置enable.idempotence 为了真实。看 KAFKA-13598 更多的细节。这个问题已经解决了,默认的应用是正确的。

3.0.0的显著变化

  • 生产商在默认情况下有更强的交货保证:idempotence 已经启用acks 准备好all 代替1 .看 KIP-679 关于细节。在3.0.0和3.1.0中,一个错误阻止了应用等离子默认值,这意味着它仍然是禁用的,除非用户明确设置 enable.idempotence 为了真实。注意,这个错误并没有影响到acks=all 变了。看 KAFKA-13598 更多的细节。这一问题已经解决,在3.1.1、3.1.1和3.2.0中适当适用了默认情况。
  • 自阿帕奇卡夫卡3.0以来,jav8和scala2.12的支持被否决,并将在阿帕奇卡夫卡4.0中删除。看 KIP-750 和 KIP-751 更多的细节。
  • 动物饲养员已经升级到3.6.3版本。
  • 虽然无法从2.8早期访问版本升级到卡夫模式,但是可以提供预览。看到 克拉夫特区 关于细节。
  • 释放的柏油球不再包括测试,来源,javadOC和测试来源罐。这些内容仍然发布到MAVIN中央存储库。
  • 一些执行依赖罐 现在可用运行时类路径代替编译和运行时类路径 .升级后的编译错误可以通过显式添加缺失的依赖性JAR或更新应用程序而不使用内部类来修正。
  • 使用者配置的默认值session.timeout.ms 从10秒增加到45秒。看 KIP-735 更多的细节。
  • 代理配置log.message.format.version 和主题配置message.format.version 已经被拒绝了。两种配置的价值总是假定为3.0 如果inter.broker.protocol.version3.0 或者更高。如果log.message.format.versionmessage.format.version 我们建议你在清理文件的同时 inter.broker.protocol.version 升级至3.0。这将避免潜在的兼容性问题,如果inter.broker.protocol.version 已经降级了。看 KIP-724 更多的细节。
  • 流API删除了在2.5.0版本或更早版本中被弃用的所有已弃用的API。完整的删除API列表比较详细的卡夫卡流升级笔记。
  • 卡夫卡流不再依赖于"连接:JSON"模块( 卡夫卡-5146 )。依赖于这种传递依赖的项目将不得不明确地声明它。
  • 通过principal.builder.class 现在必须实施 KafkaPrincipalSerde 接口允许经纪人之间的转发。看 KIP-590 欲了解更多关于卡夫卡普林普塞尔德使用的细节。
  • 一些被弃用的类、方法和工具已经从clients ,connect ,coretools 模块:
    • 斯卡拉河Authorizer ,SimpleAclAuthorizer 相关课程也被取消了。请使用爪哇AuthorizerAclAuthorizer 相反。
    • Metric#value() 移除方法( KAFKA-12573 ).
    • SumTotal 取消课程( KAFKA-12584 )。请使用WindowedSumCumulativeSum 相反。
    • CountSampledTotal 学校被取消了。请使用WindowedCountWindowedSum 分别的。
    • PrincipalBuilder ,DefaultPrincipalBuilderResourceFilter 学校被取消了。
    • 不同的常数和构造函数从SslConfigs ,SaslConfigs ,AclBindingAclBindingFilter .
    • Admin.electedPreferredLeaders() 方法被删除。请使用Admin.electLeaders 相反。
    • kafka-preferred-replica-election 命令行工具被移除。请使用kafka-leader-election 相反。
    • --zookeeper 备选办法被从kafka-topicskafka-reassign-partitions 命令行工具。请使用--bootstrap-server 相反。
    • 在…中kafka-configs 命令行工具--zookeeper 只支持更新备选办法 语法证书配置 和 描述/更新动态经纪人确认当经纪人不运行时 .请使用--bootstrap-server 用于其他配置操作。
    • ConfigEntry 建筑物已移走( KAFKA-12577 )。请使用剩余的公共构造函数。
    • 配置值default 客户端配置client.dns.lookup 已经移走了。在不太可能明确设置此配置的情况下,我们建议不要设置配置(use_all_dns_ips 默认使用)。
    • ExtendedDeserializerExtendedSerializer 班级已经取消。请使用DeserializerSerializer 相反。
    • close(long, TimeUnit) 方法从生产者、消费者和管理员客户端删除。请使用 close(Duration) .
    • ConsumerConfig.addDeserializerToConfigProducerConfig.addSerializerToConfig 方法被删除。这些方法的目的不是公共API,也没有替代方法。
    • NoOffsetForPartitionException.partition() 方法被删除。请使用partitions() 相反。
    • 默认的partition.assignment.strategy 改为"[范围转让人,合作转让人]",在违约情况下将使用范围转让人,但只允许一次滚动反弹,将范围转让人从清单中删除。请检查客户端升级路径指南 在这里 更多的细节。
    • 斯卡拉河kafka.common.MessageFormatter 已经移走了。请使用爪哇org.apache.kafka.common.MessageFormatter .
    • MessageFormatter.init(Properties) 方法被删除。请使用configure(Map) 相反。
    • checksum() 方法已经删除ConsumerRecordRecordMetadata .消息格式v2自0.11以来一直是默认的,它将检查和从记录移到记录批处理。因此,这些方法没有意义,没有替代物。
    • ChecksumMessageFormatter 上课被取消了。它不是公共空气污染指数的一部分,但它可能被用于kafka-console-consumer.sh .它报告了每个记录的检查和,自消息格式V2以来一直没有支持这些记录。
    • org.apache.kafka.clients.consumer.internals.PartitionAssignor 班级被取消了。请使用 org.apache.kafka.clients.consumer.ConsumerPartitionAssignor 相反。
    • quota.producer.defaultquota.consumer.default 配置被删除( KAFKA-12591 )。必须使用动态配额默认值。
    • porthost.name 配置被删除。请使用listeners 相反。
    • advertised.portadvertised.host.name 配置被删除。请使用advertised.listeners 相反。
    • 不受欢迎的工人配置rest.host.namerest.port 已移走( KAFKA-12482 )来自卡夫卡连接工人配置。请使用listeners 相反。
  • Producer#sendOffsetsToTransaction(Map offsets, String consumerGroupId) 方法被反对。请使用 Producer#sendOffsetsToTransaction(Map offsets, ConsumerGroupMetadata metadata) 相反,在哪里ConsumerGroupMetadata 可透过KafkaConsumer#groupMetadata() 更有力的语义。请注意,只有经纪人或2.5版本或更高版本才能理解完整的消费者群体元数据集,因此必须升级您的卡夫卡集群以获得更强的语义。否则,你可以随便进去new ConsumerGroupMetadata(consumerGroupId) 与老经纪人合作。看 KIP-732 更多的细节。
  • 连接internal.key.converterinternal.value.converter 所有的财产 远离的 .自从2.0.0版本以来,这些连接工人属性的使用就被弃用了。现在工人们使用JSON转换器schemas.enable 开始false .如果您的集群使用了不同的内部键或值转换器,则可以遵循以下概述的迁移步骤: KIP-738 安全地将您的连接集群升级到3.0.
  • 基于连接的镜像制造器(MM2)包括支持的更改IdentityReplicationPolicy ,在不重命名主题的情况下启用复制。现有的DefaultReplicationPolicy 在默认情况下仍然使用,但是身份复制可以通过 replication.policy 配置属性。这对于从旧的镜像制造器(MM1)迁移的用户特别有用,对于使用简单的单向复制拓扑的用户也特别有用,因为在这种情况下,主题重命名是不可取的。注意IdentityReplicationPolicy ,不像 DefaultReplicationPolicy ,无法阻止基于主题名称的复制周期,所以在构造复制拓扑时要注意避免循环。
  • 原来的镜像制造器(MM1)和相关的类已被弃用。请使用连结式镜子制造器(MM2),如 地理复制科 .

升级到2.8.1,从0.8.x到2.7.x

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.7 ,2.6 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.7 ,2.6 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在2.8 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

2.8.0的显著变化

  • 2.8.0发布版增加了一种新的方法,使授权人界面上引入了 KIP-679 .动机是解除我们的未来计划,在默认情况下启用最强的消息传递保证。定制授权者应该考虑提供一个更有效的实现,支持审计日志记录和任何定制确认或访问规则。
  • 将主题ID作为主题的一部分引入到主题中。 KIP-516 .使用动物园管理员时,这些信息存储在主题节点中。如果集群被降级为以前的IBP或版本,未来的主题将不会得到主题ID,并且不能保证主题会在动物园管理员中保留它们的主题ID。这意味着在再次升级时,一些主题或所有主题将被分配给新的ID。
  • 卡夫卡流介绍了一种类型安全的split() 操作符代替被弃的操作符KStream#branch() 方法(参见。 KIP-418 ).

从0.8.X到2.6.X升级到2.7.0

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.6 ,2.5 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.6 ,2.5 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在2.7 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

2.7.0的显著变化

  • 2.7.0版本包括在 KIP-595 .有一个单独的"筏"模块包含大部分逻辑。在与控制器的集成完成之前,有一个独立的服务器,用户可以使用它来测试LAP实现的性能。详细信息请参阅木筏模块中的阅读材料
  • KIP-651 补充支助 用于键和信任存储中使用PEM文件。
  • KIP-612 补充支助 执行经纪人和每个听众的连接创造利率。2.7.0版本包含KIP-612的第一部分,动态配置在2.8.0版本中出现。
  • 抑制主题和分区创建或主题删除的能力,以防止集群受到损害。 KIP-599
  • 当卡夫卡出现新的功能时,有两个主要问题:卡夫卡客户是如何意识到经纪人的能力的?经纪人如何决定要启用哪些功能?KIP-584 为客户端发现提供了一个灵活且操作简单的解决方案,它使用一个重新启动功能来实现主控和滚动升级。
  • 打印记录的能力抵消和标题ConsoleConsumer 现在可以通过 KIP-431
  • 增加 KIP-554 继续推进动物园管理员远离卡夫卡的目标。增加KIP-554意味着您不再需要直接连接到动物园管理员来管理斯拉姆凭证。
  • 改变现有听众的不可重构承诺InvalidRequestException .相比之下,以前的(意想不到的)行为会导致持续更新配置,但在重新启动代理之前不会生效。看 KAFKA-10479 为了更多的讨论。看DynamicBrokerConfig.DynamicSecurityConfigsSocketServer.ListenerReconfigurableConfigs 对于现有的侦听器支持的可重构的约定。
  • 卡夫卡流补充支持 滑动窗口聚合 在克兰兹DSL。
  • 在状态存储上进行反向迭代,使最新的更新搜索更有效率。 KIP-617
  • 卡夫卡蒸汽中的端到端延迟度量 KIP-613 欲知详情
  • 卡夫卡流增加了度量,报告默认的Rosdb属性 KIP-607
  • 更好的支持者 KIP-616

升级到2.6.0,从0.8.X到2.5.X

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.5 ,2.4 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.5 ,2.4 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在2.6 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。

2.6.0的显著变化

  • 卡夫卡流添加了一种新的处理模式(需要代理2.5或更新),它使用精确的一旦保证(CF)提高了应用程序的可伸缩性。 KIP-447 )
  • Tlsv1.3默认情况下启用了Java11或较新的.如果客户机和服务器都支持Tlsv1.3,并支持Tlsv1.2,那么它们将进行谈判。看 KIP-573 更多的细节。
  • 的默认值client.dns.lookup 结构已经从defaultuse_all_dns_ips .如果主机名解析到多个IP地址,客户机和经纪人现在将尝试按顺序连接到每个IP,直到成功地建立连接。看 KIP-602 更多的细节。
  • NotLeaderForPartitionException 已被否决,代之以NotLeaderOrFollowerException .如果代理不是复制品,则获取请求和其他仅为领导者或追随者返回的请求,而不是复制(9),确保所有客户机将重新分配期间的这个短暂错误作为可检索异常处理。

升级到2.5.0,从任何0.8.X到2.4.X版本

如果您是在2.1.X之前从一个版本升级的,请参阅下面的说明,说明对用于存储消费者抵消的模式的更改。一旦你改变了内部.经纪人.协议书.版本到了最新版本,就不可能降级到在2.1之前的版本。

滚动升级:

  1. 更新所有经纪人的属性并添加下列属性。是指你正在升级的版本。当前的信息格式是指当前使用的消息格式版本。如果您先前已经覆盖了消息格式版本,那么您应该保留其当前值。或者,如果您是在0.11.0.X之前从一个版本升级的,那么应该将当前_消息_格式_文本设置为与当前_卡夫卡_文本匹配。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.4 ,2.3 , etc.)log.message.format.version=CURRENT_MESSAGE_FORMAT_VERSION (See 升级后的潜在业绩影响 关于此配置的细节。)如果您是从0.11.0.X或以上版本升级的,而且您没有覆盖消息格式,那么您只需要覆盖内部BRK协议版本。inter.broker.protocol.version=CURRENT_KAFKA_VERSION (e.g.2.4 ,2.3 , etc.)
  2. 一次升级经纪人:关闭经纪人,更新代码,并重新启动它。一旦您这样做了,经纪人将运行最新版本,您可以验证集群的行为和性能符合预期。如果出现任何问题,此时仍有可能下调评级。
  3. 一旦集群的行为和性能被验证,通过编辑来改变协议版本 inter.broker.protocol.version 把它放在2.5 .
  4. 重新启动经纪人一个接一个的新协议版本生效。一旦经纪人开始使用最新的协议版本,就再也不可能将集群降级为旧版本了。
  5. 如果您已按上面的指示重写了消息格式版本,那么您需要再进行一次滚动重新启动,以将其升级到最新版本。一旦所有(或大多数)消费者都升级到0.11.0或更晚,请更改日志。注意,不再维护的老的scala客户机不支持0.11中引入的消息格式,以避免转换成本(或利用 一旦语义学 ),必须使用较新的Java客户端。
  6. 改派工具有若干显著变化kafka-reassign-partitions.sh 完成后 KIP-455 .这个工具现在需要--additional 当更换主动重新分配的节流阀时提供旗。现在可以使用 --cancel 指挥官。最后,调到--zookeeper 已经被反对了--bootstrap-server .详情请参阅"基普"。

2.5.0的显著变化

  • 何时RebalanceProtocol#COOPERATIVE 已经被使用了,Consumer#poll 仍然可以返回数据,而它是在重新平衡那些仍然由消费者拥有的分区的中间; Consumer#commitSync 现在可以扔一个非致命的RebalanceInProgressException 将这类事件通知使用者,以便区别于致命事件。CommitFailedException 并允许用户完成正在进行的重新平衡,然后重新尝试为那些仍然拥有的分区提交补偿。
  • 为了提高典型网络环境中的弹性, zookeeper.session.timeout.ms 从6分增加到18分 replica.lag.time.max.ms 从10岁到30岁。
  • 新的DSL操作员cogroup() 为同时聚合多个流而添加。
  • 增加了一个新的KStream.toTable() 将输入事件流转换为KTAD.
  • 增加了一种新的服务类型Void 从输入主题中表示空键或空值.
  • 反对UsePreviousTimeOnInvalidTimestamp 把它换成UsePartitionTimeOnInvalidTimeStamp .
  • 通过添加挂起的偏移围栏机制和更强有力的事务提交一致性检查,非常有效地改进了语义,这大大简化了可伸缩应用程序的实现。我们还在下面添加了一个新的语义代码示例。 例子 文件夹。结帐 KIP-447 所有的细节。
  • 增加新的公共空气污染指数KafkaStreams.queryMetadataForKey(String, K, Serializer) to get detailed information on the key being queried. It provides information about the partition number where the key resides in addition to hosts containing the active and standby partitions for the key.
  • 支持通过弃用来查询陈旧的存储器(对于高可用性)和属于特定分区的存储器KafkaStreams.store(String, QueryableStoreType) 代之以KafkaStreams.store(StoreQueryParameters) .
  • 增加了一个新的公共API,用于访问本地存储库到一个实例的滞后信息。KafkaStreams.allLocalStorePartitionLags() .
  • 斯卡拉2.11不再支持。看 KIP-531 关于细节。
  • 包里所有的斯卡拉类kafka.security.auth 已经被拒绝了。看 KIP-504 有关2.4.0中新增的Java授权人API的详情。注意kafka.security.auth.Authorizerkafka.security.auth.SimpleAclAuthorizer 在2.4.0中被否决。
  • Tlsv1和Tlsv1.1是默认禁用的,因为它们具有已知的安全漏洞。现在默认情况下只启用TLSV1.2。通过在配置选项中显式启用这两个选项,您可以继续使用Tlsv1和Tlsv1.1 ssl.protocolssl.enabled.protocols .
  • 动物饲养员已经升级到3.5.7,如果3.4数据目录中没有快照文件,动物饲养员从3.4.x升级到3.5.7就会失败。这通常发生在测试升级中,动物园管理员3.5.7试图加载一个没有创建快照文件的现有3.4数据Dir。详情请参阅 动物园-3056 .一个修正在 动物园-3056 ,也就是说snapshot.trust.empty=true 安装zookeeper.properties 在升级之前。
  • 动物饲养员版本3.5.7支持TLS加密连接到动物饲养员,无论是否有客户证书,并可利用额外的卡夫卡配置。看 KIP-515 关于细节。

相关推荐

当Frida来“敲”门(frida是什么)

0x1渗透测试瓶颈目前,碰到越来越多的大客户都会将核心资产业务集中在统一的APP上,或者对自己比较重要的APP,如自己的主业务,办公APP进行加壳,流量加密,投入了很多精力在移动端的防护上。而现在挖...

服务端性能测试实战3-性能测试脚本开发

前言在前面的两篇文章中,我们分别介绍了性能测试的理论知识以及性能测试计划制定,本篇文章将重点介绍性能测试脚本开发。脚本开发将分为两个阶段:阶段一:了解各个接口的入参、出参,使用Python代码模拟前端...

Springboot整合Apache Ftpserver拓展功能及业务讲解(三)

今日分享每天分享技术实战干货,技术在于积累和收藏,希望可以帮助到您,同时也希望获得您的支持和关注。架构开源地址:https://gitee.com/msxyspringboot整合Ftpserver参...

Linux和Windows下:Python Crypto模块安装方式区别

一、Linux环境下:fromCrypto.SignatureimportPKCS1_v1_5如果导包报错:ImportError:Nomodulenamed'Crypt...

Python 3 加密简介(python des加密解密)

Python3的标准库中是没多少用来解决加密的,不过却有用于处理哈希的库。在这里我们会对其进行一个简单的介绍,但重点会放在两个第三方的软件包:PyCrypto和cryptography上,我...

怎样从零开始编译一个魔兽世界开源服务端Windows

第二章:编译和安装我是艾西,上期我们讲述到编译一个魔兽世界开源服务端环境准备,那么今天跟大家聊聊怎么编译和安装我们直接进入正题(上一章没有看到的小伙伴可以点我主页查看)编译服务端:在D盘新建一个文件夹...

附1-Conda部署安装及基本使用(conda安装教程)

Windows环境安装安装介质下载下载地址:https://www.anaconda.com/products/individual安装Anaconda安装时,选择自定义安装,选择自定义安装路径:配置...

如何配置全世界最小的 MySQL 服务器

配置全世界最小的MySQL服务器——如何在一块IntelEdison为控制板上安装一个MySQL服务器。介绍在我最近的一篇博文中,物联网,消息以及MySQL,我展示了如果Partic...

如何使用Github Action来自动化编译PolarDB-PG数据库

随着PolarDB在国产数据库领域荣膺桂冠并持续获得广泛认可,越来越多的学生和技术爱好者开始关注并涉足这款由阿里巴巴集团倾力打造且性能卓越的关系型云原生数据库。有很多同学想要上手尝试,却卡在了编译数据...

面向NDK开发者的Android 7.0变更(ndk android.mk)

订阅Google官方微信公众号:谷歌开发者。与谷歌一起创造未来!受Android平台其他改进的影响,为了方便加载本机代码,AndroidM和N中的动态链接器对编写整洁且跨平台兼容的本机...

信创改造--人大金仓(Kingbase)数据库安装、备份恢复的问题纪要

问题一:在安装KingbaseES时,安装用户对于安装路径需有“读”、“写”、“执行”的权限。在Linux系统中,需要以非root用户执行安装程序,且该用户要有标准的home目录,您可...

OpenSSH 安全漏洞,修补操作一手掌握

1.漏洞概述近日,国家信息安全漏洞库(CNNVD)收到关于OpenSSH安全漏洞(CNNVD-202407-017、CVE-2024-6387)情况的报送。攻击者可以利用该漏洞在无需认证的情况下,通...

Linux:lsof命令详解(linux lsof命令详解)

介绍欢迎来到这篇博客。在这篇博客中,我们将学习Unix/Linux系统上的lsof命令行工具。命令行工具是您使用CLI(命令行界面)而不是GUI(图形用户界面)运行的程序或工具。lsoflsof代表&...

幻隐说固态第一期:固态硬盘接口类别

前排声明所有信息来源于网络收集,如有错误请评论区指出更正。废话不多说,目前固态硬盘接口按速度由慢到快分有这几类:SATA、mSATA、SATAExpress、PCI-E、m.2、u.2。下面我们来...

新品轰炸 影驰SSD多款产品登Computex

分享泡泡网SSD固态硬盘频道6月6日台北电脑展作为全球第二、亚洲最大的3C/IT产业链专业展,吸引了众多IT厂商和全球各地媒体的热烈关注,全球存储新势力—影驰,也积极参与其中,为广大玩家朋友带来了...