Skip to content

Commit d03df00

Browse files
authored
Update README.md
1 parent cd13161 commit d03df00

File tree

1 file changed

+84
-5
lines changed

1 file changed

+84
-5
lines changed

README.md

Lines changed: 84 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@
99
[![Terraform](https://img.shields.io/badge/Terraform-Infrastructure-purple?style=flat-square&logo=terraform)](https://terraform.io/)
1010
[![AWS](https://img.shields.io/badge/AWS-Cloud%20Provider-orange?style=flat-square&logo=amazon-aws)](https://aws.amazon.com/)
1111
[![ArgoCD](https://img.shields.io/badge/ArgoCD-GitOps-green?style=flat-square&logo=argo)](https://argoproj.github.io/cd/)
12+
[![Karpenter](https://img.shields.io/badge/Karpenter-Kubernetes%20Orchestrator-blue?style=flat-square&logo=karpenter)](https://karpenter.sh/)
13+
[![Prometheus](https://img.shields.io/badge/Prometheus-Monitoring-blue?style=flat-square&logo=prometheus)](https://prometheus.io/)
14+
[![Grafana](https://img.shields.io/badge/Grafana-Monitoring-blue?style=flat-square&logo=grafana)](https://grafana.com/)
15+
[![Helm](https://img.shields.io/badge/Helm-Kubernetes%20Package%20Manager-blue?style=flat-square&logo=helm)](https://helm.sh/)
16+
[![Docker](https://img.shields.io/badge/Docker-Container%20Platform-blue?style=flat-square&logo=docker)](https://docker.com/)
1217

1318
**A comprehensive Python web application demonstrating enterprise-grade DevOps practices with a complete CI/CD pipeline, Infrastructure as Code, GitOps implementation, and comprehensive monitoring.**
1419

@@ -28,7 +33,6 @@ This project showcases a **Solar System visualization web application** built wi
2833
- 🪐 Interactive Solar System UI with planet data and animations
2934
- 🐍 Python backend with MongoDB integration
3035
- 📱 Responsive web interface with modern design
31-
3236
</td>
3337
<td width="50%">
3438

@@ -37,6 +41,8 @@ This project showcases a **Solar System visualization web application** built wi
3741
- 🏗️ Infrastructure as Code using Terraform and AWS EKS
3842
- 🚀 GitOps deployment with ArgoCD for automated delivery
3943
- 📊 Comprehensive monitoring with Prometheus and Grafana
44+
- 📦 Containerization with Docker and Kubernetes
45+
- 🚀 Scalability using Karpenter
4046

4147
</td>
4248
</tr>
@@ -85,6 +91,14 @@ You can view the architecture diagram below for a visual overview of the system
8591
| **🚀 GitOps** | ![ArgoCD](https://img.shields.io/badge/ArgoCD-EF7B4D?style=flat-square&logo=argo&logoColor=white) for automated deployments and drift detection |
8692
| **📦 Container Registry** | ![Docker Hub](https://img.shields.io/badge/Docker%20Hub-2496ED?style=flat-square&logo=docker&logoColor=white) + ![GitHub](https://img.shields.io/badge/GitHub%20Container%20Registry-181717?style=flat-square&logo=github&logoColor=white) |
8793

94+
</details>
95+
<details>
96+
<summary><b>🚀 Scalability & Auto-scaling</b></summary>
97+
98+
| Tool | Purpose |
99+
|------|---------|
100+
| ![Karpenter](https://img.shields.io/badge/Karpenter-0F1689?style=flat-square&logo=karpenter&logoColor=white) | Auto-scaling and resource management |
101+
88102
</details>
89103

90104
<details>
@@ -111,7 +125,7 @@ You can view the architecture diagram below for a visual overview of the system
111125
### ☁️ **Cloud Tools**
112126
- ![AWS CLI](https://img.shields.io/badge/AWS%20CLI-232F3E?style=flat-square&logo=amazon-aws&logoColor=white)
113127
- Configured with appropriate permissions
114-
- EKS, VPC, and S3 resource access
128+
- EKS, VPC, DynamoDB, and S3 resource access
115129

116130
</td>
117131
<td width="33%">
@@ -131,6 +145,20 @@ You can view the architecture diagram below for a visual overview of the system
131145
- ![Docker](https://img.shields.io/badge/Docker-2496ED?style=flat-square&logo=docker&logoColor=white)
132146
- Container building and testing
133147

148+
### 🚀 **Scalability Tools**
149+
- ![Karpenter](https://img.shields.io/badge/Karpenter-0F1689?style=flat-square&logo=karpenter&logoColor=white)
150+
- Auto-scaling and resource management
151+
152+
### 📥 **Deployment Tools**
153+
- ![ArgoCD](https://img.shields.io/badge/ArgoCD-EF7B4D?style=flat-square&logo=argo&logoColor=white)
154+
- GitOps deployment and drift detection
155+
156+
### 📊 **Monitoring Tools**
157+
- ![Prometheus](https://img.shields.io/badge/Prometheus-E6522C?style=flat-square&logo=prometheus&logoColor=white)
158+
- Metrics collection and alerting
159+
- ![Grafana](https://img.shields.io/badge/Grafana-F46800?style=flat-square&logo=grafana&logoColor=white)
160+
- Visualization dashboards and analytics
161+
134162
</td>
135163
</tr>
136164
</table>
@@ -157,7 +185,7 @@ Update the `Terraform/2-backend.tf` file with your S3 bucket details for Terrafo
157185
Navigate to the Terraform directory and initialize the deployment:
158186

159187
```bash
160-
cd infrastructure/
188+
cd Terraform/
161189
terraform init
162190
terraform apply -auto-approve
163191
```
@@ -197,12 +225,16 @@ kubectl apply -f argocd/application.yaml
197225
│ └── templates/ # Kubernetes manifests
198226
199227
200-
├── 🏗️ Infrastructure (Terraform)
228+
├── 🏗️ Terraform
201229
│ ├── 0-versions.tf # Provider versions
202230
│ ├── ... # Main infrastructure files
203231
│ └── modules/
204232
│ ├── vpc/ # VPC module
205233
│ └── eks/ # EKS cluster module
234+
235+
├── 🚀 Scalability (Karpenter)
236+
│ └── karpenter/
237+
│ └── karpenter-resources.yaml # Auto-scaling configuration
206238
207239
├── 📊 Monitoring & GitOps
208240
│ └── argocd/
@@ -219,6 +251,9 @@ kubectl apply -f argocd/application.yaml
219251
│ ├── argocd.yml # GitOps controller setup
220252
│ ├── monitoring.yml # Observability stack deployment
221253
│ └── deploy.yml # Application deployment
254+
255+
├── 🔧 backend/
256+
│ └── main.tf # Terraform S3 & DynamoDB
222257
223258
└── 🖼️ Static Assets
224259
└── static/ # Planet images & backgrounds
@@ -245,7 +280,7 @@ kubectl apply -f argocd/application.yaml
245280
### 1️⃣ **Continuous Integration (CI)**
246281
-**Code Quality:** Automated testing with pytest
247282
- 📊 **Code Coverage:** Coverage reports to maintain standards
248-
- 🔒 **Security Scanning:** Container vulnerability checks
283+
- 🔒 **Code Scanning:** Code quality checks using SonarQube
249284

250285
</td>
251286
<td width="33%">
@@ -287,6 +322,18 @@ kubectl apply -f argocd/application.yaml
287322
- Manages infrastructure provisioning and updates via IaC
288323
- Uses an S3 backend for secure state management
289324

325+
#### 🚀 **Karpenter Workflow** (`karpenter.yml`)
326+
- Manages auto-scaling and resource management
327+
328+
#### 📊 **Monitoring Workflow** (`monitoring.yml`)
329+
- Manages monitoring stack deployment
330+
331+
#### 📥 **ArgoCD Workflow** (`argocd.yml`)
332+
- Manages ArgoCD deployment and drift detection
333+
334+
#### 📤 **Deploy Workflow** (`deploy.yml`)
335+
- Manages application deployment
336+
290337
</details>
291338

292339
---
@@ -366,6 +413,38 @@ Easily revert to previous stable application states with a single command
366413

367414
---
368415

416+
## 🚀 Auto-scaling & Resource Management
417+
418+
<div align="center">
419+
420+
![Karpenter](https://img.shields.io/badge/Karpenter-Auto-scaling-orange?style=for-the-badge&logo=amazon-eks)
421+
422+
</div>
423+
424+
### 🚀 **Karpenter Implementation**
425+
426+
<table>
427+
<tr>
428+
<td width="50%">
429+
430+
#### ⚙️ **Cluster Configuration**
431+
- **Version:** Kubernetes 1.30
432+
- **Node Groups:** Auto-scaling worker nodes
433+
- **Instance Type:** t3.medium instances
434+
435+
</td>
436+
<td width="50%">
437+
438+
#### 📊 **Auto-scaling**
439+
- **Auto-scaling:** Auto-scaling worker nodes
440+
- **Instance Type:** t3.medium instances
441+
442+
</td>
443+
</tr>
444+
</table>
445+
446+
---
447+
369448
## ☸️ Kubernetes Infrastructure
370449

371450
<div align="center">

0 commit comments

Comments
 (0)