https://github.com/asad9711/zero-downtime-app
Create an app in go which is zero downtime and manage its deployment using kubernetes
https://github.com/asad9711/zero-downtime-app
go health-check kafka-consumer kubernetes minikube shell zookeeper
Last synced: about 2 months ago
JSON representation
Create an app in go which is zero downtime and manage its deployment using kubernetes
- Host: GitHub
- URL: https://github.com/asad9711/zero-downtime-app
- Owner: asad9711
- Created: 2022-04-05T08:50:31.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-07-09T12:56:48.000Z (almost 4 years ago)
- Last Synced: 2025-03-26T15:21:24.672Z (over 1 year ago)
- Topics: go, health-check, kafka-consumer, kubernetes, minikube, shell, zookeeper
- Language: Shell
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Purpose
- Idea is to create an application which listens to kafka and is zero downtime.
- Since the app's functionality is dependent on the availability of kafka, we shall create liveliness probes for kafka
and configure kubernetes to check for the health check endpoint of service, which in turn will try to connect to kafka after certain intervals,
if connection couldn't be created, then the restartPolicy of the service shall be executed by k8
Tested with minikube `v1.25.2`
# Steps to launch the application:
1. start zookeeper and kafka server
2. build image inside the minikube docker daemon - `minikube image build . -t listener-app-image`
3. launch service - `kubectl apply -f deployment.yaml`