kafka manage
akhq docker-compose 사용
docker-compose 예제
version: '3.2'
services:
akhq:
image: tchiotludo/akhq
environment:
AKHQ_CONFIGURATION: |
akhq:
connections:
docker-kafka-server-1:
properties:
bootstrap.servers: "192.168.0.22:59092"
schema-registry:
url: "http://schema-registry-0:8085"
connect:
- name: connect-1
url: "http://connect-0:8082"
- name: connect-2
url: "http://connect-1:8083"
- name: connect-3
url: "http://connect-2:8084"
docker-kafka-server-2:
properties:
bootstrap.servers: "192.168.0.22:59093"
docker-kafka-server-3:
properties:
bootstrap.servers: "192.168.0.22:59094"
ports:
- 8080:8080
links:
- schema-registry-0
- connect-0
- connect-1
- connect-2
schema-registry-0:
image: confluentinc/cp-schema-registry
ports:
- 8085:8085
environment:
SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: 'PLAINTEXT://192.168.0.22:59092'
SCHEMA_REGISTRY_HOST_NAME: 'schema-registry-0'
SCHEMA_REGISTRY_LISTENERS: 'http://schema-registry-0:8085'
SCHEMA_REGISTRY_LOG4J_ROOT_LOGLEVEL: 'INFO'
connect-0:
image: confluentinc/cp-kafka-connect
ports:
- 8082:8082
depends_on:
- schema-registry-0
environment:
CONNECT_BOOTSTRAP_SERVERS: '192.168.0.22:59092'
CONNECT_REST_PORT: '8082'
CONNECT_HOST_NAME: 'connect-0'
CONNECT_REST_LISTENERS: 'http://connect-0:8082'
CONNECT_LISTENERS: 'http://connect-0:8082'
CONNECT_REST_ADVERTISED_HOST_NAME: 'connect-0'
CONNECT_CONFIG_STORAGE_TOPIC: '__connect-0-config'
CONNECT_OFFSET_STORAGE_TOPIC: '__connect-0-offsets'
CONNECT_STATUS_STORAGE_TOPIC: '__connect-0-status'
CONNECT_GROUP_ID: 'kafka-connect-0'
CONNECT_KEY_CONVERTER_SCHEMAS_ENABLE: 'true'
CONNECT_KEY_CONVERTER: 'io.confluent.connect.avro.AvroConverter'
CONNECT_KEY_CONVERTER_SCHEMA_REGISTRY_URL: 'http://schema-registry-0:8085'
CONNECT_VALUE_CONVERTER_SCHEMAS_ENABLE: 'true'
CONNECT_VALUE_CONVERTER: 'io.confluent.connect.avro.AvroConverter'
CONNECT_VALUE_CONVERTER_SCHEMA_REGISTRY_URL: 'http://schema-registry-0:8085'
CONNECT_INTERNAL_KEY_CONVERTER: 'org.apache.kafka.connect.json.JsonConverter'
CONNECT_INTERNAL_VALUE_CONVERTER: 'org.apache.kafka.connect.json.JsonConverter'
CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_STATUS_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_PLUGIN_PATH: ' /usr/share/java/'
connect-1:
image: confluentinc/cp-kafka-connect
ports:
- 8083:8083
depends_on:
- schema-registry-0
environment:
CONNECT_BOOTSTRAP_SERVERS: '192.168.0.22:59093'
CONNECT_REST_PORT: '8083'
CONNECT_HOST_NAME: 'connect-1'
CONNECT_REST_LISTENERS: 'http://connect-1:8083'
CONNECT_LISTENERS: 'http://connect-1:8083'
CONNECT_REST_ADVERTISED_HOST_NAME: 'connect-1'
CONNECT_CONFIG_STORAGE_TOPIC: '__connect-1-config'
CONNECT_OFFSET_STORAGE_TOPIC: '__connect-1-offsets'
CONNECT_STATUS_STORAGE_TOPIC: '__connect-1-status'
CONNECT_GROUP_ID: 'kafka-connect-1'
CONNECT_KEY_CONVERTER_SCHEMAS_ENABLE: 'true'
CONNECT_KEY_CONVERTER: 'io.confluent.connect.avro.AvroConverter'
CONNECT_KEY_CONVERTER_SCHEMA_REGISTRY_URL: 'http://schema-registry-0:8085'
CONNECT_VALUE_CONVERTER_SCHEMAS_ENABLE: 'true'
CONNECT_VALUE_CONVERTER: 'io.confluent.connect.avro.AvroConverter'
CONNECT_VALUE_CONVERTER_SCHEMA_REGISTRY_URL: 'http://schema-registry-0:8085'
CONNECT_INTERNAL_KEY_CONVERTER: 'org.apache.kafka.connect.json.JsonConverter'
CONNECT_INTERNAL_VALUE_CONVERTER: 'org.apache.kafka.connect.json.JsonConverter'
CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_STATUS_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_PLUGIN_PATH: ' /usr/share/java/'
connect-2:
image: confluentinc/cp-kafka-connect
ports:
- 8084:8084
depends_on:
- schema-registry-0
environment:
CONNECT_BOOTSTRAP_SERVERS: '192.168.0.22:59094'
CONNECT_REST_PORT: '8084'
CONNECT_HOST_NAME: 'connect-2'
CONNECT_REST_LISTENERS: 'http://connect-2:8084'
CONNECT_LISTENERS: 'http://connec2-1:8084'
CONNECT_REST_ADVERTISED_HOST_NAME: 'connect-2'
CONNECT_CONFIG_STORAGE_TOPIC: '__connect-2-config'
CONNECT_OFFSET_STORAGE_TOPIC: '__connect-2-offsets'
CONNECT_STATUS_STORAGE_TOPIC: '__connect-2-status'
CONNECT_GROUP_ID: 'kafka-connect-3'
CONNECT_KEY_CONVERTER_SCHEMAS_ENABLE: 'true'
CONNECT_KEY_CONVERTER: 'io.confluent.connect.avro.AvroConverter'
CONNECT_KEY_CONVERTER_SCHEMA_REGISTRY_URL: 'http://schema-registry-0:8085'
CONNECT_VALUE_CONVERTER_SCHEMAS_ENABLE: 'true'
CONNECT_VALUE_CONVERTER: 'io.confluent.connect.avro.AvroConverter'
CONNECT_VALUE_CONVERTER_SCHEMA_REGISTRY_URL: 'http://schema-registry-0:8085'
CONNECT_INTERNAL_KEY_CONVERTER: 'org.apache.kafka.connect.json.JsonConverter'
CONNECT_INTERNAL_VALUE_CONVERTER: 'org.apache.kafka.connect.json.JsonConverter'
CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_STATUS_STORAGE_REPLICATION_FACTOR: '1'
CONNECT_PLUGIN_PATH: ' /usr/share/java/'