这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
本文是《Strimzi Kafka Bridge(桥接)实战之》系列的第二篇,咱们直奔bridge的重点:常用接口,用实际操作体验如何用bridge完成常用的消息收发业务
官方的openapi接口文档地址 : https://strimzi.io/docs/bridge/in-development/#_openapi
整篇文章由以下内容构成:
kubectl -n aabbcc \
run kafka-producer \
-ti \
--image=quay.io/strimzi/kafka:0.32.0-kafka-3.3.1 \
--rm=true \
--restart=Never \
-- bin/kafka-topics.sh \
--bootstrap-server my-cluster-kafka-bootstrap:9092 \
--create \
--topic bridge-quickstart-topic \
--partitions 4 \
--replication-factor 1
kubectl -n aabbcc \
run kafka-producer \
-ti \
--image=quay.io/strimzi/kafka:0.32.0-kafka-3.3.1 \
--rm=true \
--restart=Never \
-- bin/kafka-topics.sh \
--bootstrap-server my-cluster-kafka-bootstrap:9092 \
--describe \
--topic bridge-quickstart-topic

curl -X GET \http://192.168.0.1:31331/topics/bridge-quickstart-topic
{"name": "bridge-quickstart-topic","configs": {"compression.type": "producer","leader.replication.throttled.replicas": "","message.downconversion.enable": "true","min.insync.replicas": "1","segment.jitter.ms": "0","cleanup.policy": "delete","flush.ms": "9223372036854775807","follower.replication.throttled.replicas": "","segment.bytes": "1073741824","retention.ms": "604800000","flush.messages": "9223372036854775807","message.format.version": "3.0-IV1","max.compaction.lag.ms": "9223372036854775807","file.delete.delay.ms": "60000","max.message.bytes": "1048588","min.compaction.lag.ms": "0","message.timestamp.type": "CreateTime","preallocate": "false","min.cleanable.dirty.ratio": "0.5","index.interval.bytes": "4096","unclean.leader.election.enable": "false","retention.bytes": "-1","delete.retention.ms": "86400000","segment.ms": "604800000","message.timestamp.difference.max.ms": "9223372036854775807","segment.index.bytes": "10485760"},"partitions": [{"partition": 0,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]},{"partition": 1,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]},{"partition": 2,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]},{"partition": 3,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]}]
}
curl -X POST \http://42.193.162.141:31331/topics/bridge-quickstart-topic \-H 'content-type: application/vnd.kafka.json.v2+json' \-d '{"records": [{"key": "my-key","value": "sales-lead-0001"},{"value": "sales-lead-0002","partition": 2},{"value": "sales-lead-0003"}]
}'
{"offsets": [{"partition": 0,"offset": 0}, {"partition": 2,"offset": 0}, {"partition": 3,"offset": 0}]
}
curl -X POST \http://42.193.162.141:31331/topics/bridge-quickstart-topic?async=true \-H 'content-type: application/vnd.kafka.json.v2+json' \-d '{"records": [{"key": "my-key","value": "sales-lead-0001"},{"value": "sales-lead-0002","partition": 2},{"value": "sales-lead-0003"}]
}'
curl -X GET \http://42.193.162.141:31331/topics/bridge-quickstart-topic/partitions
[{"partition": 0,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]
}, {"partition": 1,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]
}, {"partition": 2,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]
}, {"partition": 3,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]
}]
curl -X GET \http://42.193.162.141:31331/topics/bridge-quickstart-topic/partitions/0
{"partition": 0,"leader": 0,"replicas": [{"broker": 0,"leader": true,"in_sync": true}]
}
curl -X GET \http://42.193.162.141:31331/topics/bridge-quickstart-topic/partitions/0/offsets
{"beginning_offset": 0,"end_offset": 5
}
curl -X POST http://42.193.162.141:31331/consumers/bridge-quickstart-consumer-group \-H 'content-type: application/vnd.kafka.v2+json' \-d '{"name": "bridge-quickstart-consumer","auto.offset.reset": "earliest","format": "json","enable.auto.commit": false,"fetch.min.bytes": 16,"consumer.request.timeout.ms": 300000}'
{"instance_id": "bridge-quickstart-consumer","base_uri": "http://42.193.162.141:31331/consumers/bridge-quickstart-consumer-group/instances/bridge-quickstart-consumer"
}
curl -X DELETE http://42.193.162.141:31331/consumers/bridge-quickstart-consumer-group/instances/bridge-quickstart-consumer
curl -X POST http://42.193.162.141:31331/consumers/bridge-quickstart-consumer-group/instances/bridge-quickstart-consumer/subscription \-H 'content-type: application/vnd.kafka.v2+json' \-d '{"topics": ["bridge-quickstart-topic"]
}'
curl -X GET http://42.193.162.141:31331/consumers/bridge-quickstart-consumer-group/instances/bridge-quickstart-consumer/records \-H 'accept: application/vnd.kafka.json.v2+json'
[{"topic": "bridge-quickstart-topic","key": "my-key","value": "sales-lead-0001","partition": 0,"offset": 0}, {"topic": "bridge-quickstart-topic","key": "my-key","value": "sales-lead-0001","partition": 0,"offset": 1}
]
curl -X POST http://42.193.162.141:31331/consumers/bridge-quickstart-consumer-group/instances/bridge-quickstart-consumer/offsets
curl -X POST \http://42.193.162.141:31331/topics/bridge-quickstart-topic \-H 'content-type: application/vnd.kafka.json.v2+json' \-d '{"records": [{"value": "sales-lead-a002-01234567890123456789","partition": 2}]
}'


curl -X POST http://42.193.162.141:31331/consumers/bridge-quickstart-consumer-group/instances/bridge-quickstart-consumer/positions \-H 'content-type: application/vnd.kafka.v2+json' \-d '{"offsets": [{"topic": "bridge-quickstart-topic","partition": 2,"offset": 74}]
}'

上一篇:动物幽默句子
下一篇:英雄联盟德邦总管的口头禅所有