KEYSTORE.JKS存在失败-退出,代码1#662-融合卡夫卡

问题描述 投票:3回答:1

我正在尝试将ssl配置为融合的kafka docker平台,并在开始说时出现错误

日志:

命令[/ usr / local / bin / dub路径/etc/kafka/secrets/kafka.server.keystore.jks存在]失败!kafka_kafka-broker1_1_13d7835ad32d退出,代码为1

Docker配置:

version:  '3'
services:
  zookeeper1:
    image: confluentinc/cp-zookeeper:5.1.0
    hostname: zookeeper1
    ports:
      - "2181:2181"
      - "2888:2888"
      - "3888:3888"
    environment:
      ZOOKEEPER_SERVER_ID: 1
      ZOOKEEPER_SERVERS:  0.0.0.0:2888:3888
      ZOOKEEPER_CLIENT_PORT: 2181
      ZOOKEEPER_TICK_TIME: 2000
    logging:  
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"
    volumes:
      - zookeeper-data:/var/lib/zookeeper/data
      - zookeeper-log:/var/lib/zookeeper/log
  kafka-broker1:
    image: confluentinc/cp-kafka:5.1.0
    hostname: kafka-broker1:
    ports:
      - "9092:9092"
      - "9093:9093"
    environment:
      KAFKA_LISTENERS: "PLAINTEXT://0.0.0.0:9092,SSL://0.0.0.0:9093"
      KAFKA_ADVERTISED_LISTENERS: "PLAINTEXT://kafkassl.com:9092,SSL://kafkassl.com:9093"
      KAFKA_ZOOKEEPER_CONNECT: zookeeper1:2181
      KAFKA_LOG4J_LOGGERS: "kafka.controller=INFO,kafka.producer.async.DefaultEventHandler=INFO,state.change.logger=INFO"
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 2
      KAFKA_AUTO_CREATE_TOPICS_ENABLE: "false"
      KAFKA_DELETE_TOPIC_ENABLE: "true"
      KAFKA_LOG_RETENTION_HOURS: 168
      KAFKA_OFFSETS_RETENTION_MINUTES: 43800
      KAFKA_SSL_KEYSTORE_FILENAME: kafka.server.keystore.jks
      KAFKA_SSL_TRUSTSTORE_LOCATION: /ssl/kafka.server.truststore.jks
      KAFKA_SSL_TRUSTSTORE_PASSWORD: pass
      KAFKA_SSL_KEYSTORE_LOCATION: /ssl/kafka.server.keystore.jks
      KAFKA_SSL_KEYSTORE_PASSWORD: pass
      KAFKA_SSL_KEY_PASSWORD: pass
    volumes:
      - kafka-data:/var/lib/kafka/data
      - /ssl:/etc/kafka/secrets

    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"
    depends_on:
      - zookeeper1
volumes:
  zookeeper-data:
  zookeeper-log:
  kafka-data: 
docker ssl apache-kafka confluent jks
1个回答
0
投票

以下是可用于使用SSL支持启动kafka docker-compose的步骤(@Senthil已在其注释中提供了一些指导)

  • 在docker-compose目录中,有一个所谓的secrets目录,其中包含用于生成密钥库,信任库和ssl密码的shell脚本。进入kafka的docker-compose的根目录并运行此脚本,该脚本将生成所需的文件(例如:./secrets/create-certs

  • 将所有生成的文件复制到秘密目录中

  • 将主机的secrets目录的卷安装到dockerized目录中。将以下内容放在卷宗部分的docker-compose文件中

volumes:
  - ./secrets/:/etc/kafka/secrets

使用docker-compose up运行

© www.soinside.com 2019 - 2024. All rights reserved.