Skip to content

Latest commit

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

ELK Stack on Kubernetes (MicroK8s)

This project sets up the ELK Stack (Elasticsearch, Logstash, Kibana) on MicroK8s to collect, process, and visualize logs — including Nginx logs — for real-time observability and monitoring.


📦 Stack Components

ComponentRole
ElasticsearchIndexes and stores log data
LogstashParses and transforms incoming logs
KibanaProvides dashboards and log visualization
Filebeat(Optional) Lightweight log shipper

🚀 Features

  • Deploy ELK stack on local Kubernetes (MicroK8s)
  • Centralized log collection from Kubernetes pods
  • Nginx access log monitoring
  • Kibana dashboards for top URLs, status codes, and client IPs
  • Custom Logstash pipeline for parsing logs
  • NodePort or port-forward access to Kibana

🧰 Prerequisites

  • MicroK8s installed and running
  • Basic knowledge of Kubernetes
  • Helm 3 (enabled via MicroK8s: microk8s enable helm3)
  • At least 4GB of free system memory

🛠️ Setup Instructions

1. Enable MicroK8s Add-ons

microk8s enable dns storage helm3

2. Clone the Repository

git clone https://github.com/your-username/ELK-stack.git
cd ELK-stack

3. Run the Setup Script

chmod +x elk.sh
./elk.sh

4. Access Kibana

microk8s kubectl get svc -n logging
http://<node-ip>:<nodeport>

login:

Username: elastic Passwork :

microk8s kubectl get secret elasticsearch-master-credentials -n logging -o jsonpath="{.data.password}"| base64 -d

@aj1naz

About

Deploy and monitor a complete ELK (Elasticsearch, Logstash, Kibana) stack on MicroK8s for centralized log collection and visualization, with Nginx integration and real-time dashboards.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages