Skip to content

Confluent for Kubernetes on Elastic Kubernetes Service

Notifications You must be signed in to change notification settings

alexsalvo1/cfk_on_eks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Confluent for Kubernetes on EKS

Deploy/undeploy Confluent for Kubernetes on Amazon Elastic Kubernetes Service

Requirements

Scenario 1: Kubernetes cluster admin and the CFK user are the same person

Deploy EKS Cluster and Confluent Platform

./createCfKonEKS.sh basic

Undeploy EKS Cluster and Confluent Platform

./deleteCfKonEKS.sh basic

Scenario 2: Kubernetes cluster admin and the CFK user are different person

Deploy EKS Cluster and Confluent Platform (advanced)

Requirement:

  • A domain already registered (sample: example.com)
./createCfKonEKS.sh advanced

Using "kubectl get svc", Add manually these DNS definitions:

DNS name External IP Sample
b0.example.com kafka-0-lb (xxx.elb.amazonaws.com)
b1.example.com kafka-1-lb (yyy.elb.amazonaws.com)
b2.example.com kafka-2-lb (zzz.elb.amazonaws.com)
kafka.example.com kafka-bootstrap-lb (xyz.elb.amazonaws.com)
controlcenter.example.com controlcenter-bootstrap-lb (zyx.elb.amazonaws.com)

Test Producer and Consumer

kafka-console-producer --topic test --bootstrap-server kafka.alexsalvo1.com:9092 --property parse.key=true --property key.separator=,
kafka-console-consumer --bootstrap-server kafka.alexsalvo1.com:9092 --topic test --from-beginning

Undeploy EKS Cluster and Confluent Platform (advanced)

./deleteCfKonEKS.sh advanced

Scenario 3: Kubernetes cluster admin and the CFK user are different person and External SSL

Deploy EKS Cluster and Confluent Platform (external_ssl)

Requirement:

./createCfKonEKS.sh external_ssl <password>

Using "kubectl get svc", Add manually these DNS definitions:

DNS name External IP Sample
b0.example.com kafka-0-lb (xxx.elb.amazonaws.com)
b1.example.com kafka-1-lb (yyy.elb.amazonaws.com)
b2.example.com kafka-2-lb (zzz.elb.amazonaws.com)
kafka.example.com kafka-bootstrap-lb (xyz.elb.amazonaws.com)
controlcenter.example.com controlcenter-bootstrap-lb (zyx.elb.amazonaws.com)

Test Producer and Consumer

Create the client-ssl.properties following this sample:

security.protocol=SSL
ssl.truststore.location=sslcerts/client/truststore.jks
ssl.truststore.password=<password>
kafka-console-producer --topic test --bootstrap-server kafka.alexsalvo1.com:9092 --property parse.key=true --property key.separator=, --producer.config client-ssl.properties
kafka-console-consumer --bootstrap-server kafka.alexsalvo1.com:9092 --topic test --consumer.config client-ssl.properties --from-beginning

Undeploy EKS Cluster and Confluent Platform (external_ssl)

./deleteCfKonEKS.sh external_ssl

Scenario 4: Kubernetes cluster admin and the CFK user are different person and Internal/External SSL

Deploy EKS Cluster and Confluent Platform (full_ssl)

Requirement:

./createCfKonEKS.sh external_ssl <password>

Using "kubectl get svc", Add manually these DNS definitions:

DNS name External IP Sample
b0.example.com kafka-0-lb (xxx.elb.amazonaws.com)
b1.example.com kafka-1-lb (yyy.elb.amazonaws.com)
b2.example.com kafka-2-lb (zzz.elb.amazonaws.com)
kafka.example.com kafka-bootstrap-lb (xyz.elb.amazonaws.com)
controlcenter.example.com controlcenter-bootstrap-lb (zyx.elb.amazonaws.com)

Test Producer and Consumer

Create the client-ssl.properties following this sample:

security.protocol=SSL
ssl.truststore.location=sslcerts/client/truststore.jks
ssl.truststore.password=<password>
kafka-console-producer --topic test --bootstrap-server kafka.alexsalvo1.com:9092 --property parse.key=true --property key.separator=, --producer.config client-ssl.properties
kafka-console-consumer --bootstrap-server kafka.alexsalvo1.com:9092 --topic test --consumer.config client-ssl.properties --from-beginning

Undeploy EKS Cluster and Confluent Platform (full_ssl)

./deleteCfKonEKS.sh full_ssl

About

Confluent for Kubernetes on Elastic Kubernetes Service

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published