├── .github └── workflows │ ├── set-consumer-to-north.yaml │ ├── set-consumer-to-west.yaml │ ├── set-producer-to-north.yaml │ ├── set-producer-to-west.yaml │ ├── set-proxy-to-north.yaml │ └── set-proxy-to-west.yaml ├── .gitignore ├── README.md ├── assets ├── active-active pattern.svg ├── gatling-report.png ├── gh-actions-run.png ├── gh-secrets.png ├── k8s-active-active-DR-T0.png ├── k8s-active-active-DR-T1.png └── k8s-active-active-DR-T2.png ├── ccloud-resources └── cluster-linking │ ├── cl-north-west.properties │ ├── cl-west-north.properties │ ├── cluster-linking-north-west.sh │ ├── cluster-linking-west-north.sh │ ├── create-mirror-noproxy-topic-north-west.sh │ ├── create-mirror-noproxy-topic-west-north.sh │ ├── create-mirror-topic-north-west.sh │ └── create-mirror-topic-west-north.sh ├── java-consumer ├── Dockerfile ├── config │ └── config.properties ├── pom.xml └── src │ └── main │ └── java │ └── org │ └── github │ └── ogomezso │ └── javaconsumer │ ├── App.java │ └── infrastructure │ └── kafka │ ├── ChuckConsumer.java │ ├── ChuckService.java │ ├── ConsumerAdapter.java │ └── KafkaConfig.java ├── java-producer ├── Dockerfile ├── config │ └── config.properties ├── pom.xml └── src │ └── main │ ├── config │ └── config.properties │ └── java │ └── org │ └── github │ └── ogomezso │ └── javaproducer │ ├── App.java │ ├── domain │ ├── ChuckFactPort.java │ ├── ChuckFactService.java │ └── model │ │ └── ChuckFact.java │ └── infrastructure │ ├── kafka │ ├── ChuckAdapter.java │ ├── ChuckProducer.java │ ├── ChuckService.java │ └── KafkaConfig.java │ └── rest │ ├── ChuckController.java │ ├── FactResponseMapper.java │ └── model │ └── ChuckFactResponse.java ├── k8s-resources ├── no-proxy │ ├── java-cloud-consumer-noproxy-configmap.yaml │ ├── java-cloud-consumer-noproxy.yaml │ ├── java-cloud-producer-noproxy-configmap.yaml │ └── java-cloud-producer-noproxy.yaml └── proxy │ ├── java-cloud-consumer-configmap.yaml │ ├── java-cloud-consumer.yaml │ ├── java-cloud-producer-configmap.yaml │ ├── java-cloud-producer.yaml │ └── kafka-proxy-configmap.yaml ├── local-environment └── kafka-proxy │ └── docker-compose.yaml └── perftest ├── pom.xml └── src └── test ├── java └── org │ └── github │ └── ogomezso │ └── perftest │ ├── ChuckSaysNoProxySimulation.java │ └── ChuckSaysProxySimulation.java └── resources └── application.conf /.github/workflows/set-consumer-to-north.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/.github/workflows/set-consumer-to-north.yaml -------------------------------------------------------------------------------- /.github/workflows/set-consumer-to-west.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/.github/workflows/set-consumer-to-west.yaml -------------------------------------------------------------------------------- /.github/workflows/set-producer-to-north.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/.github/workflows/set-producer-to-north.yaml -------------------------------------------------------------------------------- /.github/workflows/set-producer-to-west.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/.github/workflows/set-producer-to-west.yaml -------------------------------------------------------------------------------- /.github/workflows/set-proxy-to-north.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/.github/workflows/set-proxy-to-north.yaml -------------------------------------------------------------------------------- /.github/workflows/set-proxy-to-west.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/.github/workflows/set-proxy-to-west.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/README.md -------------------------------------------------------------------------------- /assets/active-active pattern.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/assets/active-active pattern.svg -------------------------------------------------------------------------------- /assets/gatling-report.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/assets/gatling-report.png -------------------------------------------------------------------------------- /assets/gh-actions-run.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/assets/gh-actions-run.png -------------------------------------------------------------------------------- /assets/gh-secrets.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/assets/gh-secrets.png -------------------------------------------------------------------------------- /assets/k8s-active-active-DR-T0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/assets/k8s-active-active-DR-T0.png -------------------------------------------------------------------------------- /assets/k8s-active-active-DR-T1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/assets/k8s-active-active-DR-T1.png -------------------------------------------------------------------------------- /assets/k8s-active-active-DR-T2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/assets/k8s-active-active-DR-T2.png -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/cl-north-west.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/cl-north-west.properties -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/cl-west-north.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/cl-west-north.properties -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/cluster-linking-north-west.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/cluster-linking-north-west.sh -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/cluster-linking-west-north.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/cluster-linking-west-north.sh -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/create-mirror-noproxy-topic-north-west.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/create-mirror-noproxy-topic-north-west.sh -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/create-mirror-noproxy-topic-west-north.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/create-mirror-noproxy-topic-west-north.sh -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/create-mirror-topic-north-west.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/create-mirror-topic-north-west.sh -------------------------------------------------------------------------------- /ccloud-resources/cluster-linking/create-mirror-topic-west-north.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/ccloud-resources/cluster-linking/create-mirror-topic-west-north.sh -------------------------------------------------------------------------------- /java-consumer/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/Dockerfile -------------------------------------------------------------------------------- /java-consumer/config/config.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/config/config.properties -------------------------------------------------------------------------------- /java-consumer/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/pom.xml -------------------------------------------------------------------------------- /java-consumer/src/main/java/org/github/ogomezso/javaconsumer/App.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/src/main/java/org/github/ogomezso/javaconsumer/App.java -------------------------------------------------------------------------------- /java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/ChuckConsumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/ChuckConsumer.java -------------------------------------------------------------------------------- /java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/ChuckService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/ChuckService.java -------------------------------------------------------------------------------- /java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/ConsumerAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/ConsumerAdapter.java -------------------------------------------------------------------------------- /java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/KafkaConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-consumer/src/main/java/org/github/ogomezso/javaconsumer/infrastructure/kafka/KafkaConfig.java -------------------------------------------------------------------------------- /java-producer/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/Dockerfile -------------------------------------------------------------------------------- /java-producer/config/config.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/config/config.properties -------------------------------------------------------------------------------- /java-producer/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/pom.xml -------------------------------------------------------------------------------- /java-producer/src/main/config/config.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/config/config.properties -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/App.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/App.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/domain/ChuckFactPort.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/domain/ChuckFactPort.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/domain/ChuckFactService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/domain/ChuckFactService.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/domain/model/ChuckFact.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/domain/model/ChuckFact.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/ChuckAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/ChuckAdapter.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/ChuckProducer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/ChuckProducer.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/ChuckService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/ChuckService.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/KafkaConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/kafka/KafkaConfig.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/rest/ChuckController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/rest/ChuckController.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/rest/FactResponseMapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/rest/FactResponseMapper.java -------------------------------------------------------------------------------- /java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/rest/model/ChuckFactResponse.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/java-producer/src/main/java/org/github/ogomezso/javaproducer/infrastructure/rest/model/ChuckFactResponse.java -------------------------------------------------------------------------------- /k8s-resources/no-proxy/java-cloud-consumer-noproxy-configmap.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/no-proxy/java-cloud-consumer-noproxy-configmap.yaml -------------------------------------------------------------------------------- /k8s-resources/no-proxy/java-cloud-consumer-noproxy.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/no-proxy/java-cloud-consumer-noproxy.yaml -------------------------------------------------------------------------------- /k8s-resources/no-proxy/java-cloud-producer-noproxy-configmap.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/no-proxy/java-cloud-producer-noproxy-configmap.yaml -------------------------------------------------------------------------------- /k8s-resources/no-proxy/java-cloud-producer-noproxy.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/no-proxy/java-cloud-producer-noproxy.yaml -------------------------------------------------------------------------------- /k8s-resources/proxy/java-cloud-consumer-configmap.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/proxy/java-cloud-consumer-configmap.yaml -------------------------------------------------------------------------------- /k8s-resources/proxy/java-cloud-consumer.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/proxy/java-cloud-consumer.yaml -------------------------------------------------------------------------------- /k8s-resources/proxy/java-cloud-producer-configmap.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/proxy/java-cloud-producer-configmap.yaml -------------------------------------------------------------------------------- /k8s-resources/proxy/java-cloud-producer.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/proxy/java-cloud-producer.yaml -------------------------------------------------------------------------------- /k8s-resources/proxy/kafka-proxy-configmap.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/k8s-resources/proxy/kafka-proxy-configmap.yaml -------------------------------------------------------------------------------- /local-environment/kafka-proxy/docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/local-environment/kafka-proxy/docker-compose.yaml -------------------------------------------------------------------------------- /perftest/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/perftest/pom.xml -------------------------------------------------------------------------------- /perftest/src/test/java/org/github/ogomezso/perftest/ChuckSaysNoProxySimulation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/perftest/src/test/java/org/github/ogomezso/perftest/ChuckSaysNoProxySimulation.java -------------------------------------------------------------------------------- /perftest/src/test/java/org/github/ogomezso/perftest/ChuckSaysProxySimulation.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/perftest/src/test/java/org/github/ogomezso/perftest/ChuckSaysProxySimulation.java -------------------------------------------------------------------------------- /perftest/src/test/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ogomezso/disaster-recovery-playground/HEAD/perftest/src/test/resources/application.conf --------------------------------------------------------------------------------