Skip to content

Latest commit

 

History

History
 
 

legacy-movies-docker

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 = Legacy System example
Viktor Gamov <[email protected]>, © 2019 Confluent, Inc.
2019-12-04
:revdate: 2019-12-04 3:51:13 -0600
:linkattrs:
:ast: &ast;
:y: &#10003;
:n: &#10008;
:y: icon:check-sign[role="green"]
:n: icon:check-minus[role="red"]
:c: icon:file-text-alt[role="blue"]
:toc: auto
:toc-placement: auto
:toc-position: auto
:toc-title: Table of content
:toclevels: 3
:idprefix:
:idseparator: -
:sectanchors:
:icons: font
:source-highlighter: highlight.js
:highlightjs-theme: idea
:experimental:

This docker-compose stack represents traditional / legacy set of applications - Kafka used as just messaging system, database (MySQL) used as default storage system.

Prerequisites

Docker, Docker Compose, jq

How to start and stop

  1. To start, run ./start.sh and relax

  2. To stop, run docker-compose down

  3. To perform cleanup volumes run stop_and_destroy.sh

Validation and troubleshooting

Basics

  1. kafka-topics --list --bootstrap-server localhost:9092 should print something like this

    console.sh
    __confluent.support.metrics
    __consumer_offsets
    __consumer_timestamps
    _confluent-metrics
    _schemas
    carlstadt
    carlstadt.demo.movies
    dbhistory.demo
    docker-connect-debezium-configs
    docker-connect-debezium-offsets
    docker-connect-debezium-status
    movies
    ratings
  2. to check if movies data is replicated

    filename
    kafka-avro-console-consumer --bootstrap-server localhost:9092 --property schema.registry.url=http://localhost:8081 --topic movies --from-beginning | jq .

Connect

validate debezium
❯ curl -s "http://localhost:8083/connectors"| jq '.[]'| xargs -I{connector_name} curl -s "http://localhost:8083/connectors/"{connector_name}"/status"| jq -c -M '[.name,.connector.state,.tasks[].state]|join(":|:")'

"source-debezium-orders-00:|:RUNNING:|:RUNNING"
validate replicator
❯ curl -s "http://localhost:8087/connectors"| jq '.[]'| xargs -I{connector_name} curl -s "http://localhost:8087/connectors/"{connector_name}"/status"| jq -c -M '[.name,.connector.state,.tasks[].state]|join(":|:")'

"replicator:|:RUNNING:|:RUNNING"
delete debezium connector
curl -s "http://localhost:8083/connectors"| jq '.[]'| xargs -I{connector_name} curl -s -XDELETE "http://localhost:8083/connectors/"{connector_name}
delete replicator connector
curl -s "http://localhost:8087/connectors"| jq '.[]'| xargs -I{connector_name} curl -s -XDELETE "http://localhost:8087/connectors/"{connector_name}