场景:在笔记本安装了一台虚拟机, 在本地的虚拟机上部署了一个kafka服务:

写了一个测试程序,在笔记本上运行测试程序,访问虚拟机上的kafka,报如下异常:

2015-01-15 09:33:26 [kafka.producer.async.DefaultEventHandler]-[INFO] Back off for 100 ms before retrying send. Remaining retries = 1

2015-01-15 09:33:26 [kafka.client.ClientUtils$]-[INFO] Fetching metadata from broker id:0,host:192.168.108.136,port:9092 with correlation id 9 for 1 topic(s) Set(client-all-log-test)

2015-01-15 09:33:26 [kafka.producer.SyncProducer]-[INFO] Connected to 192.168.108.136:9092 for producing

2015-01-15 09:33:26 [kafka.producer.SyncProducer]-[INFO] Disconnecting from 192.168.108.136:9092

2015-01-15 09:33:47 [kafka.producer.SyncProducer]-[ERROR] Producer connection to ubuntu-machine:9092 unsuccessful

java.net.ConnectException : Connection timed out: connect

at sun.nio.ch.Net.connect0( Native Method)

at sun.nio.ch.Net.connect(Unknown Source)

at sun.nio.ch.Net.connect(Unknown Source)

at sun.nio.ch.SocketChannelImpl.connect(Unknown Source)

at kafka.network.BlockingChannel.connect(BlockingChannel.scala:57)

at kafka.producer.SyncProducer.connect(SyncProducer.scala:141)

at kafka.producer.SyncProducer.getOrMakeConnection(SyncProducer.scala:156)

at kafka.producer.SyncProducer.kafka$producer$SyncProducer$$doSend(SyncProducer.scala:68)

at kafka.producer.SyncProducer$$anonfun$send$1$$anonfun$apply$mcV$sp$1.apply$mcV$sp(SyncProducer.scala:102)

at kafka.producer.SyncProducer$$anonfun$send$1$$anonfun$apply$mcV$sp$1.apply(SyncProducer.scala:102)

at kafka.producer.SyncProducer$$anonfun$send$1$$anonfun$apply$mcV$sp$1.apply(SyncProducer.scala:102)

at kafka.metrics.KafkaTimer.time(KafkaTimer.scala:33)

at kafka.producer.SyncProducer$$anonfun$send$1.apply$mcV$sp(SyncProducer.scala:101)

at kafka.producer.SyncProducer$$anonfun$send$1.apply(SyncProducer.scala:101)

at kafka.producer.SyncProducer$$anonfun$send$1.apply(SyncProducer.scala:101)

at kafka.metrics.KafkaTimer.time(KafkaTimer.scala:33)

at kafka.producer.SyncProducer.send(SyncProducer.scala:100)

at kafka.producer.async.DefaultEventHandler.kafka$producer$async$DefaultEventHandler$$send(DefaultEventHandler.scala:255)

at kafka.producer.async.DefaultEventHandler$$anonfun$dispatchSerializedData$2.apply(DefaultEventHandler.scala:106)

at kafka.producer.async.DefaultEventHandler$$anonfun$dispatchSerializedData$2.apply(DefaultEventHandler.scala:100)

at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:95)

at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:95)

at scala.collection.Iterator$class.foreach(Iterator.scala:772)

at scala.collection.mutable.HashTable$$anon$1.foreach(HashTable.scala:157)

at scala.collection.mutable.HashTable$class.foreachEntry(HashTable.scala:190)

at scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:45)

at scala.collection.mutable.HashMap.foreach(HashMap.scala:95)

at kafka.producer.async.DefaultEventHandler.dispatchSerializedData(DefaultEventHandler.scala:100)

at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:72)

at kafka.producer.Producer.send(Producer.scala:76)

at kafka.javaapi.producer.Producer.send(Producer.scala:33)

at me.learn.kafka.demo.TestProducer.main( TestProducer.java:38)

Exception in thread "main" kafka.common.FailedToSendMessageException : Failed to send messages after 3 tries.

at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:90)

at kafka.producer.Producer.send(Producer.scala:76)

at kafka.javaapi.producer.Producer.send(Producer.scala:33)

at me.learn.kafka.demo.TestProducer.main( TestProducer.java:38)

原因应该网络问题,但是检查了防火墙设置,没有限制,将程序部署的虚拟机所在的服务器上,就可以运行了,说明还是网络的限制。

需要改动config文件夹下的server.properties中的以下两个属性

zookeeper.connect=localhost:2181 #改成zookeeper.connect=10.0.30.221:2181
#去掉host.name的注释
#host.name=localhost改成host.name=10.0.30.221

kafka单节点部署无法访问问题解决的更多相关文章

  1. 一、最新Kafka单节点部署+测试 完整

    每次学一个东西从基础的开始,循序渐进. 不急不躁,路还很长. 所有教程都是学习汪文君大神的kafka教程的. 一.部署 这里选的kafka版本是 0.10.2.1   下载连接 https://dow ...

  2. Ubuntu下用devstack单节点部署Openstack

    一.实验环境 本实验是在Vmware Workstation下创建的单台Ubuntu服务器版系统中,利用devstack部署的Openstack Pike版. 宿主机:win10 1803  8G内存 ...

  3. HyperLedger Fabric 1.4 单机单节点部署(10.2)

    单机单节点指在一台电脑上部署一个排序(Orderer)服务.一个组织(Org1),一个节点(Peer,属于Org1),然后运行官方案例中的example02智能合约例子,实现转财交易和查询功能.单机单 ...

  4. .netcore consul实现服务注册与发现-单节点部署

    原文:.netcore consul实现服务注册与发现-单节点部署 一.Consul的基础介绍     Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分 ...

  5. Kafka 单节点多Kafka Broker集群

    Kafka 单节点多Kafka Broker集群 接前一篇文章,今天搭建一下单节点多Kafka Broker集群环境. 配置与启动服务 由于是在一个节点上启动多个 Kafka Broker实例,所以我 ...

  6. Kubernetes 二进制部署(一)单节点部署(Master 与 Node 同一机器)

    0. 前言 最近受“新冠肺炎”疫情影响,在家等着,入职暂时延后,在家里办公和学习 尝试通过源码编译二进制的方式在单一节点(Master 与 Node 部署在同一个机器上)上部署一个 k8s 环境,整理 ...

  7. 恒天云单节点部署指南--OpenStack H版本虚拟机单节点部署解决方案

    本帖是openstack单节点在虚拟机上部署的实践.想要玩玩和学习openstack的小伙伴都看过来,尤其是那些部署openstack失败的小伙伴.本帖可以让你先领略一下openstack的魅力.本I ...

  8. Presto0.157版本单节点部署教程

    因为Presto版本的更新速度较快,所以最好按照对应版本的教程进行部署,博主之前看错了版本号,拿0.100版本的教程来部署0.157版本,结果导致部署失败. 官网:https://prestodb.i ...

  9. Kafka单节点及集群配置安装

    一.单节点 1.上传Kafka安装包到Linux系统[当前为Centos7]. 2.解压,配置conf/server.property. 2.1配置broker.id 2.2配置log.dirs 2. ...

随机推荐

  1. java 使用反射技术解耦

    1.调用的代码 /src/de/test.java package de; public class Test { public static void main(String[] args) { D ...

  2. 虚拟机 本地 本机 双启动 运行 vhd local Dual Boot

    在使用虚拟机的过程中, 可能会遇到虚拟机的运行要求过高, 电脑力不从心的情况. 为了让虚拟机使用更多电脑资源, 可以让虚拟机以本地双系统的方式,访问本地计算机资源. 打开磁盘管理,在磁盘上右键,选择 ...

  3. cut DEMO

    分割后得到列: cat /etc/passwd|head -n 5 | cut -d : -f 1,6

  4. React-Native入门指导之iOS篇

    React-Native 入门指导系列教程目录 一.准备工作 (已完成) 二.项目介绍与调试 三.CSS样式与Flex布局 四.常用UI控件的使用 五.JSX在React-Native中的应用 六.事 ...

  5. HDU 1827:Summer Holiday(强连通)

    http://acm.hdu.edu.cn/showproblem.php?pid=1827 思路:强连通分量缩点后找入度为0的点,然后对于属于该强连通分量的找一个最小耗费的入口. #include ...

  6. 使用mysqlbinlog server远程备份binlog的脚本

    #注意,备份机到远程mysql服务器需要免密钥登录,此脚本放到计划任务中每五分钟执行一次,避免mysqlbinlog server进程长时间挂掉无人知晓   cat backup_binlog.sh ...

  7. 使用radioGroup的时候,每个radioButton的状态选择器要使用 state_checked=""属性,不能使用selected

    使用radioGroup的时候,每个radioButton的状态选择器要使用 state_checked=""属性,不能使用selected

  8. springMVC配置freemarker 二(问题讨论篇)

    上面一篇我已经说明了如何去配置freemarker,这里我就谈谈遇到的问题吧. 首先, 为什么要删除上面之前的.你要使用freemarkerviewresolver和上面的冲突了,因此要注释掉上面的. ...

  9. Piggy-Bank

    Piggy-Bank Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  10. 【linux命令与工具】lsmod命令

    lsmod命令用来显示已被内核加载的模块的状态 描述: lsmod命令可以美观地显示/prco/module中的内容,这些内容是被已被内核加载模块的信息. 使用lsmod之后,系统会显示出目前已经存在 ...