<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>KAFKA on Pigsty v5.0</title>
    <link>https://pgsty.pro/zh/module/kafka/</link>
    <description>Recent content in KAFKA on Pigsty v5.0</description>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    
    
    
      <lastBuildDate>Mon, 01 Jan 0001 00:00:00 +0000</lastBuildDate>
    
    
      <atom:link href="https://pgsty.pro/zh/module/kafka/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
        <title>模块：KAFKA</title>
        <link>https://pgsty.pro/zh/docs/kafka/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/</guid>
        <description>&lt;p&gt;&lt;a href=&#34;https://kafka.apache.org/&#34;&gt;Kafka&lt;/a&gt; 是一个分布式事件流平台。Pigsty 的 &lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/&#34;&gt;&lt;code&gt;KAFKA&lt;/code&gt;&lt;/a&gt; 模块使用 RPM/DEB 软件包，在纳管节点上部署 &lt;strong&gt;Apache Kafka 4.1+ 动态 KRaft&lt;/strong&gt; 集群，并统一管理安全、资源、生命周期与可观测性。&lt;/p&gt;&#xA;&lt;div class=&#34;td-callout td-callout--note&#34; role=&#34;note&#34;&gt;&#xA;  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-circle-info&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;当前状态：Beta 模块&lt;/span&gt;&lt;/div&gt;&#xA;  &lt;div class=&#34;td-callout__body&#34;&gt;&#xA;&lt;p&gt;当前 Kafka 模块处于 Beta 状态。用于严肃生产环境前请务必充分测试，确保满足业务需求。&#xA;包括动态 KRaft、严格滚动、TLS/SCRAM/ACL、声明式 Topic/User、凭据与证书轮换，以及完整监控链路。&lt;/p&gt;</description>
      </item>
    <item>
        <title>快速上手</title>
        <link>https://pgsty.pro/zh/docs/kafka/start/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/start/</guid>
        <description>&lt;p&gt;本教程从一个最小单节点集群开始，完成 Topic 创建与消息读写；随后部署一套独立的三节点安全集群，配置应用用户、ACL、Quota 和生产 Topic；最后演示核心参数修改、客户端接入、监控验证与上线检查。&lt;/p&gt;</description>
      </item>
    <item>
        <title>集群配置</title>
        <link>https://pgsty.pro/zh/docs/kafka/config/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/config/</guid>
        <description>&lt;p&gt;KAFKA 模块使用 15 项持久公开参数表达集群意图，其余拓扑、监听器、存储子目录、复制安全、授权与 Exporter 放置由角色统一推导。首次部署建议先完成 &lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/start/&#34;&gt;快速上手&lt;/a&gt;；完整字段见 &lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/&#34;&gt;参数参考&lt;/a&gt;。&lt;/p&gt;&#xA;&lt;div class=&#34;td-callout td-callout--warning&#34; role=&#34;note&#34;&gt;&#xA;  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-triangle-exclamation&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;先规划，后格式化&lt;/span&gt;&lt;/div&gt;&#xA;  &lt;div class=&#34;td-callout__body&#34;&gt;&#xA;&lt;p&gt;&lt;code&gt;kafka_seq&lt;/code&gt; 会写入 KRaft &lt;code&gt;node.id&lt;/code&gt;；新集群的随机 Cluster ID、初始 Controller Identity、安全模式与初始复制策略会写入 Bootstrap Manifest。存储格式化后，不要随意修改身份、安全模式或 Controller 集合。角色会验证现场与 Manifest 并在冲突时失败关闭，不会自动覆盖或重新格式化数据。&lt;/p&gt;</description>
      </item>
    <item>
        <title>参数参考</title>
        <link>https://pgsty.pro/zh/docs/kafka/param/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/param/</guid>
        <description>&lt;p&gt;KAFKA 角色刻意只公开 15 项持久参数。拓扑、Listener、安全实现、存储子目录、复制安全与 Exporter 放置等细节由角色统一推导，不能作为额外持久变量覆盖。&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h2 id=&#34;参数概览&#34;&gt;参数概览&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--full td-table-scroll--static&#34;&gt;&#xA;&lt;table class=&#34;full-width&#34;&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;参数&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34; style=&#34;text-align: center&#34;&gt;层级&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;默认值&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34; style=&#34;text-align: left&#34;&gt;说明&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_cluster&#34;&gt;&lt;code&gt;kafka_cluster&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;集群&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;必填&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;Kafka 集群身份&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_seq&#34;&gt;&lt;code&gt;kafka_seq&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;必填&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;集群内唯一 KRaft &lt;code&gt;node.id&lt;/code&gt;&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_role&#34;&gt;&lt;code&gt;kafka_role&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;combined&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;combined&lt;/code&gt;、&lt;code&gt;broker&lt;/code&gt; 或 &lt;code&gt;controller&lt;/code&gt;&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_cluster_id&#34;&gt;&lt;code&gt;kafka_cluster_id&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;集群&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;未设置&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;接管/恢复断言；新集群随机生成&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_data&#34;&gt;&lt;code&gt;kafka_data&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;/data/kafka&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;角色自有数据根目录&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_heap_opts&#34;&gt;&lt;code&gt;kafka_heap_opts&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;-Xms1G -Xmx1G&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;Kafka JVM Heap&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_port&#34;&gt;&lt;code&gt;kafka_port&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;9092&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;Broker/client 端口&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_controller_port&#34;&gt;&lt;code&gt;kafka_controller_port&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;9093&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;KRaft Controller 端口&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_rack&#34;&gt;&lt;code&gt;kafka_rack&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;未设置&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;Broker 故障域标签&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_parameters&#34;&gt;&lt;code&gt;kafka_parameters&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;集群/实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;{}&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;非角色自有 Broker 参数&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_jmx_exporter_port&#34;&gt;&lt;code&gt;kafka_jmx_exporter_port&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;9404&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;JMX Exporter HTTP 端口&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_exporter_port&#34;&gt;&lt;code&gt;kafka_exporter_port&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;实例&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;9308&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;协议 Exporter HTTP 端口&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_security&#34;&gt;&lt;code&gt;kafka_security&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;集群&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;plaintext&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;plaintext&lt;/code&gt; 或生产 &lt;code&gt;scram&lt;/code&gt; 档位&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_users&#34;&gt;&lt;code&gt;kafka_users&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;集群&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;用户凭据、ACL 与 Quota&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;a href=&#34;https://pgsty.pro/zh/docs/kafka/param/#kafka_topics&#34;&gt;&lt;code&gt;kafka_topics&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: center&#34;&gt;集群&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;&lt;code&gt;[]&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td style=&#34;text-align: left&#34;&gt;声明式 Topic&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;&lt;code&gt;kafka_cluster&lt;/code&gt; 与 &lt;code&gt;kafka_seq&lt;/code&gt; 必须定义；&lt;code&gt;kafka_role&lt;/code&gt; 有真实默认值。集群角色要么全部省略，要么全部显式声明。&lt;/p&gt;</description>
      </item>
    <item>
        <title>日常管理</title>
        <link>https://pgsty.pro/zh/docs/kafka/admin/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/admin/</guid>
        <description>&lt;p&gt;KAFKA 模块把 Kafka 安装在 &lt;code&gt;/opt/kafka&lt;/code&gt;，使用 Systemd 管理服务，并把持久意图保存在 &lt;code&gt;pigsty.yml&lt;/code&gt;。节点上的生成文件不应手工修改。&lt;/p&gt;&#xA;&lt;p&gt;以下 Kafka CLI 示例都使用角色生成的 &lt;code&gt;/etc/kafka/admin.properties&lt;/code&gt;。即使当前是 &lt;code&gt;plaintext&lt;/code&gt; 也建议始终保留 &lt;code&gt;--command-config&lt;/code&gt;：切换到 &lt;code&gt;scram&lt;/code&gt; 管理通道时命令结构不变。将 &lt;code&gt;&amp;lt;broker&amp;gt;:9092&lt;/code&gt; 替换为可达的 &lt;code&gt;inventory_hostname&lt;/code&gt; 与端口。&lt;/p&gt;</description>
      </item>
    <item>
        <title>预置剧本</title>
        <link>https://pgsty.pro/zh/docs/kafka/playbook/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/playbook/</guid>
        <description>&lt;p&gt;KAFKA 模块提供两个剧本：&lt;a href=&#34;https://github.com/pgsty/pigsty/blob/main/kafka.yml&#34;&gt;&lt;code&gt;kafka.yml&lt;/code&gt;&lt;/a&gt; 用于部署 Apache Kafka 4.1+ 动态 KRaft 集群并收敛其安全、&#xA;资源与监控状态；&lt;a href=&#34;https://github.com/pgsty/pigsty/blob/main/kafka-rm.yml&#34;&gt;&lt;code&gt;kafka-rm.yml&lt;/code&gt;&lt;/a&gt; 用于下线集群或移除成员。&lt;/p&gt;&#xA;&lt;div class=&#34;td-callout td-callout--warning&#34; role=&#34;note&#34;&gt;&#xA;  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-triangle-exclamation&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;集群完整性约束&lt;/span&gt;&lt;/div&gt;&#xA;  &lt;div class=&#34;td-callout__body&#34;&gt;&#xA;&lt;p&gt;每个被选中的 &lt;code&gt;kafka_cluster&lt;/code&gt; 必须包含其全部成员：部分选择会在写入前失败；选择一个集群、多个完整集群或不加 &lt;code&gt;-l&lt;/code&gt; 裸跑全部集群都是允许的。先对完全相同的目标执行 &lt;code&gt;--check&lt;/code&gt;；真实运行前仍需人工核验备份/重建意图、容量、业务窗口、回退方案与变更批准。&lt;/p&gt;</description>
      </item>
    <item>
        <title>监控告警</title>
        <link>https://pgsty.pro/zh/docs/kafka/monitor/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/monitor/</guid>
        <description>&lt;p&gt;Pigsty 为 KAFKA 模块提供指标、日志、Dashboard 与告警一体化的可观测能力。监控同时覆盖 Kafka JVM 内部状态与 Kafka 协议视角，避免只看到进程存活而看不到 Partition、ISR 与 Consumer Lag，也避免只看到集群元数据而看不到 JVM、请求队列与 KRaft Controller 健康。&lt;/p&gt;</description>
      </item>
    <item>
        <title>指标定义</title>
        <link>https://pgsty.pro/zh/docs/kafka/metric/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/metric/</guid>
        <description>&lt;p&gt;KAFKA 模块使用两类指标源，都注册在同一 &lt;code&gt;job=kafka&lt;/code&gt; 采集任务下：JMX 目标（带 &lt;code&gt;role&lt;/code&gt; 标签）采集每个 JVM 的内部状态；协议 Exporter 目标（无 &lt;code&gt;role&lt;/code&gt; 标签）通过 Kafka 协议采集逻辑集群、Topic、Partition 与 Consumer Group 状态。协议 Exporter 只放在 &lt;code&gt;kafka_seq&lt;/code&gt; 最小的至多两个 Broker-capable 节点上，单 Broker 集群只运行一个。&lt;/p&gt;</description>
      </item>
    <item>
        <title>常见问题</title>
        <link>https://pgsty.pro/zh/docs/kafka/faq/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://pgsty.pro/zh/docs/kafka/faq/</guid>
        <description>&lt;h2 id=&#34;当前-kafka-模块是什么成熟度&#34;&gt;当前 KAFKA 模块是什么成熟度？&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;当前角色已实现生产级 v1 基线：动态 KRaft、完整集群护栏、冷启动/修复、Broker 串行准入与 Controller 动态加入、成员退役（含死节点）、故障节点三步替换、严格滚动、TLS/SCRAM/ACL、Topic/User 声明式收敛、内部凭据/证书轮换以及完整监控链路。&lt;/p&gt;</description>
      </item>
    
  </channel>
</rss>
