针对同一集群的多个 kafka 架构注册表

2024-02-10

我正在尝试针对同一个 kafka 和 Zookeeper 集群安装两个 kafka 架构注册表实例。但希玛正在变得混杂。运行两个注册表时,如果我使用 api“kafka-schema-registry”注册一个模式,它似乎是在“schema-registry-ui-other”创建的,而不是在“kafka-schema-registry-ui”显示为预期的。 我的配置是:

version: '2.1'

services:
  zoo1:
    image: zookeeper:3.4.9
    restart: unless-stopped
    hostname: zoo1
    ports:
      - "2181:2181"
    environment:
        ZOO_MY_ID: 1
        ZOO_PORT: 2181
        ZOO_SERVERS: server.1=zoo1:2888:3888
    volumes:
      - ./full-stack/zoo1/data:/data
      - ./full-stack/zoo1/datalog:/datalog


  kafka1:
    image: confluentinc/cp-kafka:5.3.1
    hostname: kafka1
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_LISTENERS: LISTENER_DOCKER_INTERNAL://kafka1:19092,LISTENER_DOCKER_EXTERNAL://${DOCKER_HOST_IP:-127.0.0.1}:9092
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: LISTENER_DOCKER_INTERNAL:PLAINTEXT,LISTENER_DOCKER_EXTERNAL:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: LISTENER_DOCKER_INTERNAL
      KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181"
      KAFKA_BROKER_ID: 1
      KAFKA_LOG4J_LOGGERS: "kafka.controller=INFO,kafka.producer.async.DefaultEventHandler=INFO,state.change.logger=INFO"
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    volumes:
      - ./full-stack/kafka1/data:/var/lib/kafka/data
    depends_on:
      - zoo1

  kafka-schema-registry:
    image: confluentinc/cp-schema-registry:5.3.1
    hostname: kafka-schema-registry
    ports:
      - "8081:8081"
    environment:
      SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: PLAINTEXT://kafka1:19092
      SCHEMA_REGISTRY_HOST_NAME: kafka-schema-registry
      SCHEMA_REGISTRY_LISTENERS: http://0.0.0.0:8081
      SCHEMA_REGISTRY_KAFKASTORE_GROUP_ID: "schema-registry"
    depends_on:
      - zoo1
      - kafka1
  kafka-schema-registry-other:
    image: confluentinc/cp-schema-registry:5.3.1
    hostname: kafka-schema-registry-other
    ports:
      - "8092:8081"
    environment:
      SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: PLAINTEXT://kafka1:19092
      SCHEMA_REGISTRY_HOST_NAME: kafka-schema-registry-other
      SCHEMA_REGISTRY_LISTENERS: http://0.0.0.0:8081
      SCHEMA_REGISTRY_SCHEMA_REGISTRY_ZK_NAMESPACE: schema_registry_other
      SCHEMA_REGISTRY_KAFKASTORE_TOPIC: "_schemas_other"
      SCHEMA_REGISTRY_KAFKASTORE_GROUP_ID: "schema-registry-other"
    depends_on:
      - zoo1
      - kafka1

  schema-registry-ui:
    image: landoop/schema-registry-ui:0.9.4
    hostname: kafka-schema-registry-ui
    ports:
      - "8001:8000"
    environment:
      SCHEMAREGISTRY_URL: http://kafka-schema-registry:8081/
      PROXY: "true"
    depends_on:
      - kafka-schema-registry

  schema-registry-ui-other:
    image: landoop/schema-registry-ui:0.9.4
    hostname: kafka-schema-registry-ui-other
    ports:
      - "8002:8000"
    environment:
      SCHEMAREGISTRY_URL: http://kafka-schema-registry-other:8081/
      PROXY: "true"
    depends_on:
      - kafka-schema-registry-other

  kafka-rest-proxy:
    image: confluentinc/cp-kafka-rest:5.3.1
    hostname: kafka-rest-proxy
    ports:
      - "8082:8082"
    environment:
      # KAFKA_REST_ZOOKEEPER_CONNECT: zoo1:2181
      KAFKA_REST_LISTENERS: http://0.0.0.0:8082/
      KAFKA_REST_SCHEMA_REGISTRY_URL: http://kafka-schema-registry:8081/
      KAFKA_REST_HOST_NAME: kafka-rest-proxy
      KAFKA_REST_BOOTSTRAP_SERVERS: PLAINTEXT://kafka1:19092
    depends_on:
      - zoo1
      - kafka1
      - kafka-schema-registry

  kafka-topics-ui:
    image: landoop/kafka-topics-ui:0.9.4
    hostname: kafka-topics-ui
    ports:
      - "8000:8000"
    environment:
      KAFKA_REST_PROXY_URL: "http://kafka-rest-proxy:8082/"
      PROXY: "true"
    depends_on:
      - zoo1
      - kafka1
      - kafka-schema-registry
      - kafka-rest-proxy
  zoonavigator-web:
    image: elkozmon/zoonavigator-web:0.5.1
    ports:
     - "8004:8000"
    environment:
      API_HOST: "zoonavigator-api"
      API_PORT: 9000
    links:
     - zoonavigator-api
    depends_on:
     - zoonavigator-api

  zoonavigator-api:
    image: elkozmon/zoonavigator-api:0.5.1
    environment:
      SERVER_HTTP_PORT: 9000
    depends_on:
      - zoo1

不可能有两个独立的模式注册表吗?


您为架构注册表服务器定义的组 ID 不正确,这意味着它们位于同一使用者组中,这意味着它们认为自己属于同一集群的一部分。第二个架构注册表服务器成为主服务器,因此执行所有写入。

您可以通过设置环境变量来解决此问题SCHEMA_REGISTRY_SCHEMA_REGISTRY_GROUP_ID对于两个架构注册表服务器。然后它们将被视为两个不同的集群,这将按照您的预期工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

针对同一集群的多个 kafka 架构注册表 的相关文章

随机推荐

  • Java Swing JTable 以编程方式选择多行

    我有一个包含多行的 JTable 每一行都通过散点图上的 Point 呈现 我要做的是 当在散点图上选择给定点时 我必须将此选择与 JTable 中相应行的选择相关联 我有一个整数代表我必须突出显示的行 我尝试的是 JTable table
  • 如何在toastr中显示确认对话框

    我有以下代码用于控制器中的删除按钮 scope removes function scope toastr success Delete all br br
  • 如何解析包含逗号的值的 CSV?

    假设您有一个字符串如下 str one value two value three cool value four value 如何将其变成数组 如下所示 arr array one value two value three cool v
  • 将 String 变成只有 1 行

    我的输出基本上是一个段落 当我尝试在字符串中搜索子字符串时 如果该子字符串被分割 它就不起作用 如何使段落字符串只有 1 行 示例字符串 I have an output that is basically a paragraph and
  • GNOME 的 Java-Atk-Wrapper 中的错误 - 如何禁用 Swing 组件或应用程序的可访问性?

    我相信我在 GNOME Accessibility 的 Java 包装器中发现了一个错误 导致使用 Tree 或 Table UI 的 Scala Java 应用程序出现严重的性能问题 bug https github com GNOME
  • 点运算符和范围解析运算符有什么区别

    我只是想知道 之间的区别 运算符和 运算符 前者 点 用于访问对象的成员 后者 双冒号 用于访问命名空间或类的成员 考虑以下设置 namespace ns struct type int var 在这种情况下 要引用作为命名空间成员的结构
  • SystemExit:在 iPython Notebook 中调用 parse_args() 时出现 2 错误

    我正在学习使用 Python 和 scikit learn 并执行以下代码块 最初来自http scikit learn org stable auto examples document classification 20newsgrou
  • 我怎样才能最小化这个功能?

    我试图证明there https math stackexchange com questions 4062632 finding the right epsilon某个函数不能为负值 由于我无法证明 也无法说服自己这是真的 所以我将函数编
  • R SVM 对于缺失数据的预测返回 NA

    我尝试使用 e1071 包中经过训练的 SVM 进行预测 但我的数据包含一些缺失值 NA 当该实例有任何缺失值时 我希望返回的预测为 NA 我尝试使用 na action na pass 如下 但它给了我一个错误 名称错误 ret2 如果我
  • 尝试理解 Jasmine 的 toHaveBeenCalled() 匹配器

    我是新来的jasmine这是我的src我在其中创建的文件Auth class function Auth Auth prototype isEmpty function str return str 0 str length Auth pr
  • 谷歌地图 API 发生变化?

    我使用 google 地图 开放图层和 dojo 工具包为 Web 应用程序构建了一个地图组件 它加载了谷歌地图并绘制了数据点 直到今天凌晨 一切都工作得很好 但突然地图停止加载 没有 JavaScript 错误 打开图层和 google
  • 通过“python setup.py test”将命令行参数传递给nose

    套餐设置 我已经构建了一个Python包 它使用nose http nose readthedocs io en latest 供测试用 所以 setup py包含 test suite nose collector tests requi
  • Scipy:生成NxN离散余弦矩阵

    使用 scipy 有没有一种简单的方法来模拟 MATLAB 的行为dctmtx对于给定的 N 返回一个 NxN DCT 矩阵的函数 有scipy fftpack dctn但这仅适用于 DCT 如果我不想使用 scipy 之外的其他依赖项 我
  • 我可以在 Android 中找到我的接入点的 MAC 地址吗?

    我的 Android 应用程序可以找到它所连接的 Wifi 接入点的 MAC 地址吗 android net wifi WifiInfo getMacAddress 的文档未提供任何详细信息 See http developer andro
  • 在 C(非 C++)中使用 fork() 从 1 个父级中生成 3 个子级

    您好 我一直在开发一个程序 该程序会分叉孩子 稍后将从每个孩子中分叉出更多的孩子 但这不是我需要帮助的 当我运行我的程序时 在这里它是一个函数 但工作原理相同 我应该有一个父级 PPID 生成 3 个子级 PIDS 1 2 3 但我得到的是
  • AngularJS:使用“sortFn”和“groups”时,ng-grid 不起作用

    我想知道是否可以自定义排序和分组以使用同一列 我在 Plunker 中做了一个例子 其中 groups 选项被注释掉 当取消注释该行时 网格不会显示任何记录 scope myData complex name Felipe order 3
  • 如何使用 laravel 在数据库中插入多维数组

    我正在 Laravel 中开发电子商务应用程序 我想在客户单击结帐按钮时保存购物车值订单和订单详细信息表 一份订单有很多订单详细信息 我可以插入订单值 客户 ID 订单日期 发货日期 订单金额 但正如我所提到的 一个订单有许多订单详细信息
  • Xcode 5 错误 CertUIFramework.axbundle

    我希望有人遇到过这些错误并且知道如何修复它 这是 Xcode 5 b4 中突然出现的控制台输出 Platforms iPhoneSimulator platform Developer SDKs iPhoneSimulator7 0 sdk
  • 第二次自动对焦后takePicture失败

    我正在开发一个 Android 相机应用程序 使用自动对焦 这个问题 我能够第一次捕获 但是当我第二次尝试捕获时 会发生以下异常 4 19 11 28 32 509 E AndroidRuntime 4409 FATAL EXCEPTION
  • 针对同一集群的多个 kafka 架构注册表

    我正在尝试针对同一个 kafka 和 Zookeeper 集群安装两个 kafka 架构注册表实例 但希玛正在变得混杂 运行两个注册表时 如果我使用 api kafka schema registry 注册一个模式 它似乎是在 schema