当前位置: 首页 > 知识库问答 >
问题:

Kafka和防火墙规则

赫连正初
2023-03-14

我们有一个相当严格的网络分段策略。我正在使用云代工实例来部署应用程序。防火墙规则已经设置为从云代工实例中到达kafka集群。我相信防火墙规则也已经设置为到达动物园管理员实例。我需要实际确认一下。

我的问题似乎是我可以向kafka生成消息,但我的消费者似乎没有取件。它似乎在“轮询”时挂起。

对于我的防火墙规则,是否有一些隐藏的主机或端口需要处理,而不仅仅是标准主机和kafka和zookeeper节点的端口?

共有2个答案

潘意
2023-03-14

太长别读:没有隐藏的端口。检查您的代理配置。确保它宣传Kafka消费者可以访问的IP/PORT。

我遇到了这个问题后,经历了同样的问题与Kafka0.10.1.1与kafka-python库作为消费者。

没有。我捕获了网络流量,它不使用任何其他端口与Kafka通信。如果代理配置为使用9092,则它将是消费者使用的唯一端口。

但是经过进一步的调查,我的案例中的代理配置是错误的。

Kafka广告。侦听器=PLAINTEXT://[private_ip]:9092,SSL://[public_ip]:9093 kafka。侦听器=PLAINTEXT://0.0.0.0:9092,SSL://0.0.0:9093

我使用[public_ip]:9092作为引导服务器,因为我没有设置PKI,但我想从公共互联网测试我的消费者。

使用者能够连接到代理,但无法提取任何消息。

由于消费者使用PLAINTEXT连接到Kafka,因此Kafka公布的是PLAINTXT代理地址,而不是SSL地址。然后,消费者试图使用私人IP地址而不是公共IP地址联系Kafka经纪人。(如原始网络捕获所示)

在代理中启用并配置PKI之后

漆雕正奇
2023-03-14

Kafka和动物园管理员是不同的东西。如果您在同一台计算机上运行两者,则需要打开两个端口,即corse。

kafka默认端口:

  • 9092,可在server.properties更改;

zookeeper默认端口:

  • 2181用于客户端连接
  • 2888用于跟随者(其他动物园管理员节点)连接
  • 3888用于节点间连接

就是这样。

Kafka,也有听众和广告.听众属性,这在第一个用户身上增加了一些混乱。为了简单起见,侦听器是您的服务器将绑定的网络接口,而 advertiseed.listen 是您的服务器将在 zookeeper 上注册并侦听请求的主机名或 IP。如果您在其中放置了一个主机名,则您的客户端将不得不使用该主机名进行连接。播发的.listen url 是客户端将用于引导连接的 URL。建立连接后,您的客户将获得与动物园管理员的连接,以获取其他经纪人网址。因此,您的生产者无法工作。

因此,要使它工作,你需要在你的防火墙上打开2888,而不仅仅是2181。而@Jaya Ananthram告诉你Kafka需要2181端口就错了。这是动物园管理员的港口。Kafka0.10剧照上的消费者需要联系动物园管理员来坚持一些事情,就是这样。

Kafka0.11.0.0改变了这一点,让客户根本不需要动物园管理员。

 类似资料:
  • 基本概念 netfilter Linux 内核包含一个强大的网络过滤子系统 netfilter。netfilter 子系统允许内核模块对遍历系统的每个网络数据包进行检查。这表示在任何传入、传出或转发的网络数据包到达用户空间中的组件之前,都可以通过编程方式检查、修改、丢弃或拒绝。netfilter 是 RHEL 7 计算机上构建防火墙的主要构建块。 尽管系统管理员理论上可以编写自己的内核模块以与 n

  • 我有一个服务器写在JavaServerSocket。 我有一个客户端,它位于一个公司防火墙之上,除了公共端口之外,它阻止了所有东西。 我已在SMTP端口(#25)上启动服务器。 有防火墙的用户连接到它,到目前为止一切正常。 然后服务器处理ServerSocket.accept()。据我所知,它在一个随机端口上创建一个套接字(每次端口号都不同)。因为防火墙而失败。 我的问题是-如何制作ServerS

  • 你好,社区,我正在通过运行以下。我也从Ubuntu18.04.4LTS中得到了类似的结果。 我还提出了一个github问题:https://github.com/azure/ansible/issues/21 我使用Azure CLI是什么意思? ->创建一个新的yml文件。复制下面的脚本。 ->运行下面的剧本。使用此命令 ->以下脚本失败 而且,即使有我可以更改的选择,保存按钮也没有响应。整个防

  • iptables 命令 防火墙分为硬件防火墙和软件防火墙 防火墙策略一般分为两种:开放和屏蔽 iptables 是 Linux 上常用的防火墙软件 iptables 一共有四张表和五条链 iptables (选项)[表名] (选项)[链名规则] (选项)[动作] 表: Raw 负责连接跟踪 Mangle 负责包处理 Nat 负责地址转换 Filter 负责包过滤 链名规则: PREROUTING

  • Contributed by Joseph J. Barbish. Converted to SGML and updated by Brad Davis. 31.1. 入门 防火墙的存在, 使得过滤出入系统的数据流成为可能。防火墙可以使用一组或多组 “规则 (rules)”,来检查出入您的网络连接的数据包, 并决定允许或阻止它们通过。这些规则通常可以检查数据包的某个或某些特征,这些特征包括, 但

  • 我启动了我的第一个开放存储库项目EphChat,人们很快就开始用大量的请求淹没它。 当前的安全规则如下。 我想限制写(和读?)整个Rooms对象的数据库,因此每秒只能发出1个请求(例如)。