Skip to content

This repository contains YAML files for deploying a voting app on Kubernetes 🐳 using pre-built container images. It includes Pod πŸ§‘β€πŸ’» and Service πŸ”Œ configurations, showcasing workload management and service exposure. Ideal for learning Kubernetes basics and container orchestration βš™οΈ.

Notifications You must be signed in to change notification settings

SDE-Arun/kubernetes-voting-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Kubernetes Voting Platform πŸš€

Welcome to the Kubernetes Voting Platform! πŸŽ‰ This project demonstrates a simple, scalable voting application deployed using Kubernetes. It’s designed to showcase the power of Kubernetes for container orchestration and microservices architecture.

Overview πŸ”

This project uses Kubernetes to deploy a voting app, consisting of multiple components that include:

  • Frontend: The user interface for casting votes.
  • Backend: The service that processes votes and stores the data.
  • Worker: A service that handles the vote counting.

The app is made up of several containerized components, deployed as Pods and exposed as Services using YAML files.


Features πŸ’‘

  • Scalability: Easily scale each component independently.
  • Containerization: All components are containerized using Docker images.
  • High Availability: Kubernetes ensures your app runs smoothly with multiple replicas of each service.
  • Easy Deployment: Simply apply the YAML configuration files to deploy the app on any Kubernetes cluster.

Project Structure πŸ“

  • pod.yaml: Defines the Pods for the frontend, backend, and worker.
  • service.yaml: Exposes the frontend and backend components as Kubernetes Services.

Setup and Deployment πŸ“¦

Prerequisites βš™οΈ

  • A running Kubernetes cluster (local or cloud-based).
  • kubectl configured to interact with your cluster.
  • Minikube (for local Kubernetes setup) or any cloud Kubernetes service (e.g., GKE, EKS, AKS).

Steps to Deploy πŸš€

  1. Clone this repository:

    git clone https://github.com/SDE-Arun/kubernetes-voting-platform.git
    cd kubernetes-voting-platform
  2. Apply the Pod and Service YAML files:

    kubectl apply -f pod.yaml
    kubectl apply -f service.yaml
  3. Check the status of your pods:

    kubectl get pods
  4. Access the Voting App:
    You can access the app through the frontend service in your cluster. Use the following command to get the service URL:

    kubectl get svc

Kubernetes Architecture πŸ—οΈ

This project is based on the following Kubernetes components:

  • Pods: The basic deployable units that contain your containers.
  • Services: Exposes the app’s frontend and backend to the outside world, allowing for load balancing and stable access.

Contributing 🀝

We welcome contributions! Feel free to fork the repository, make changes, and create pull requests. If you encounter any issues or have suggestions, please open an issue on the GitHub repository.


License πŸ“œ

This project is open-source and available under the MIT License.


Acknowledgements πŸ™

  • Kubernetes for powerful container orchestration.
  • Docker for easy containerization of the app components.
  • GitHub for hosting the repository.

Enjoy deploying your voting app on Kubernetes! πŸš€ Let’s scale it! 😎


Feel free to modify any section to better fit your actual project details or add any specific information you want. Let me know if you'd like further adjustments! 😊

Happy coding! πŸŽ‰

😎😊 Feel free to reach out to me for any queries or suggestions:

About

This repository contains YAML files for deploying a voting app on Kubernetes 🐳 using pre-built container images. It includes Pod πŸ§‘β€πŸ’» and Service πŸ”Œ configurations, showcasing workload management and service exposure. Ideal for learning Kubernetes basics and container orchestration βš™οΈ.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published