12.2. 使用标签和注解发现服务


服务发现使得在与 AMQ Streams 相同的 OpenShift 集群中运行的客户端应用可以更轻松地与 Kafka 集群交互。

为用于访问 Kafka 集群的服务生成 服务发现 标签和注解:

  • 内部 Kafka bootstrap 服务
  • HTTP Bridge 服务

该标签有助于使服务可被发现,注释提供了客户端应用程序可用于进行连接的连接详情。

Service 资源的服务发现标签, strimzi.io/discovery 设置为 true。服务发现注释具有相同的密钥,以 JSON 格式提供每个服务的连接详细信息。

内部 Kafka bootstrap 服务示例

apiVersion: v1
kind: Service
metadata:
  annotations:
    strimzi.io/discovery: |-
      [ {
        "port" : 9092,
        "tls" : false,
        "protocol" : "kafka",
        "auth" : "scram-sha-512"
      }, {
        "port" : 9093,
        "tls" : true,
        "protocol" : "kafka",
        "auth" : "tls"
      } ]
  labels:
    strimzi.io/cluster: my-cluster
    strimzi.io/discovery: "true"
    strimzi.io/kind: Kafka
    strimzi.io/name: my-cluster-kafka-bootstrap
  name: my-cluster-kafka-bootstrap
spec:
  #...

HTTP Bridge 服务示例

apiVersion: v1
kind: Service
metadata:
  annotations:
    strimzi.io/discovery: |-
      [ {
        "port" : 8080,
        "tls" : false,
        "auth" : "none",
        "protocol" : "http"
      } ]
  labels:
    strimzi.io/cluster: my-bridge
    strimzi.io/discovery: "true"
    strimzi.io/kind: KafkaBridge
    strimzi.io/name: my-bridge-bridge-service

12.2.1. 返回服务的连接详情

您可以从命令行或对应的 API 调用时指定发现标签来查找服务。

oc get service -l strimzi.io/discovery=true

在检索服务发现标签时,将返回连接详情。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.