← cd .. PORTFOLIO
cat ./projects/elk-on-kubernetes/README.md

雲端原生 ELK 日誌系統 - ELK on Kubernetes

# 雲端原生 ELK 日誌系統架構轉型
# Cloud-Native ELK Stack Migration to Kubernetes

Description:
針對早期單機版 EC2 部署所導致的資源擴展困難與高昂維運成本,導入 Kubernetes 架構實現 ELK 服務的容器化轉型。此專案為公司首個生產環境 K8s 應用,透過自動化編排解決大規模日誌處理的彈性伸縮與存儲管理挑戰。
To address the scaling limitations and high maintenance overhead of single-instance EC2 deployments, I led the migration of ELK services to a Kubernetes-based architecture. As the company's first production K8s project, it was designed to leverage automated orchestration for large-scale logging environments.

Tech Stack:

Features:

Results:

Architecture Overview:

ELK Cluster Provisioning Flow

sequenceDiagram
    participant User as Operator
    participant Platform as FastAPI Backend
    participant K8s as Kubernetes API
    participant ECR as AWS ECR
    participant ELB as AWS ELB
    
    User->>Platform: Create ELK Cluster Request
    Platform->>K8s: Create Namespace
    Platform->>K8s: Create Service (type: LoadBalancer)
    K8s->>ELB: Provision Load Balancer
    Platform->>K8s: Create ConfigMap (ES/Logstash Config)
    Platform->>ECR: Pull Custom ES Image
    Platform->>K8s: Create StatefulSet (Elasticsearch)
    Platform->>ECR: Pull Custom Logstash Image
    Platform->>K8s: Create StatefulSet (Logstash)
    Platform->>K8s: Create Deployment (Kibana)
    Platform->>K8s: Create Prometheus Config
    K8s-->>Platform: All Resources Ready
    ELB-->>Platform: Return Kibana ELB Endpoint
    Platform-->>User: ELK Cluster Ready (Kibana URL)