如果是新问题,新开一个提问吧。
另外,你需要多看kafka的日志,获取有用的信息,单纯的看过程,是没办法找到问题的。
还有个问题需要麻烦您一下
我在128上
第一步:安装了MySQL,然后创建了一张表为user
第二步:执行了
curl -X POST -H 'Content-Type: application/json' -i 'http://192.168.245.128:8085/connectors' \
--data \
'{"name":"songshu-upload-mysql","config":{
"connector.class":"io.confluent.connect.jdbc.JdbcSourceConnector",
"connection.url":"jdbc:mysql://192.168.245.128:3306/kafka?user=root&password=Yhf_1018",
"table.whitelist":"user",
"incrementing.column.name": "id",
"mode":"incrementing",
"topic.prefix": "songshu-mysql-"}}'
第三步:向user插入数据
第四步:执行 bin/kafka-console-consumer.sh --bootstrap-server 192.168.245.128:9092 --topic songshu-mysql-user --from-beginning
但是却没有显示刚刚插入的数据,这是那边出错了呢?
不好意思,是nohup bin/connect-distributed.sh config/connect-distributed.properties > /dev/null 2>&1
,指令我刚才复制错了,但是为啥运行后没有显示信息出来一直卡在那
一般是docker的原因导致的。
一个可行的解决方案是重新启动 Docker 服务,然后重新运行 kubeadm reset
:
sudo systemctl restart docker.service
sudo kubeadm reset
检查 docker 的日志:
journalctl -ul docker
你看下kafka集群的配置文件,是否设置了auto.create.topics.enable=false
。
如果有,就设置为ture,当topic不存在,导致的,允许它自动创建。
或者你也可以手动创建topic:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 2 --partitions 4 --topic test
$ kubectl wait --for=condition=complete --timeout=600s job/myjob
Kafka有5个核心API:
Producer API
允许应用程序发送数据流到kafka集群中的topic。Consumer API
允许应用程序从kafka集群的topic中读取数据流。Streams API
允许从输入topic转换数据流到输出topic。Connect API
通过实现连接器(connector),不断地从一些源系统或应用程序中拉取数据到kafka,或从kafka提交数据到宿系统(sink system)或应用程序。Admin API
用于管理和检查topic,broker和其他Kafka对象。具体可参考:kafka接口API
导致kubernetes node状态为NotReady的原因有很多,常见的错误如下:
RPC 调用过程中容器运行时响应超时(有可能是性能下降,死锁或者出现了 bug)。
节点上的 Pod 数量太多,导致 relist操作无法在 3 分钟内完成。事件数量和延时与 Pod 数量成正比,与节点资源无关。
relist 出现了死锁,该 bug 已在 Kubernetes 1.14 中修复。
获取 Pod 的网络堆栈信息时CNI插件出现了bug(简而言之即容器管理系统和网络插件之间通过 JSON 格式的文件进行通信,实现容器的网络功能)。
1、NotReady的node上的容器依然提供服务,但已脱离了kubernetes的调度,不会做任何变动。
2、kubernetes将NotReady的node节点上的容器调度正常的node上。