NodePulse 🚀
[](https://opensource.org/licenses/MIT)
[](https://helm.sh)
[](https://kubernetes.io)
[](https://www.docker.com)
[](https://prometheus.io)
[](https://grafana.com)
[](https://aquasecurity.github.io/trivy)
[](https://github.com/DARK-art108/nodepulse/releases)
[](https://github.com/DARK-art108/nodepulse/stargazers)
[](https://github.com/DARK-art108/nodepulse/network/members)
[](https://github.com/DARK-art108/nodepulse/issues)
[](https://github.com/DARK-art108/nodepulse/pulls)
[](https://artifacthub.io/packages/helm/nodepulse/nodepulse)
[](https://github.com/DARK-art108/nodepulse/graphs/commit-activity)
[](https://github.com/DARK-art108/nodepulse/docs)
[](https://github.com/DARK-art108/nodepulse/actions)
[](https://github.com/DARK-art108/nodepulse/actions)
[](https://github.com/DARK-art108/nodepulse/security)
[](https://github.com/DARK-art108/nodepulse/network/dependencies)
✨ Overview
NodePulse is a powerful, all-in-one Kubernetes observability stack that brings together the best of Prometheus, Grafana, and Trivy to deliver comprehensive monitoring and security insights for your Kubernetes clusters.
🚀 Quick Start
Prerequisites
| Environment |
Requirements |
| Docker Desktop |
<ul><li>Docker Desktop 4.0+</li><li>Kubernetes enabled</li><li>4GB+ RAM</li><li>2+ CPU cores</li></ul> |
| Production |
<ul><li>Kubernetes 1.19+</li><li>Helm 3.8.0+</li><li>kubectl</li><li>Persistent storage</li></ul> |
Installation
# Add Helm repositories
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo add grafana https://grafana.github.io/helm-charts
helm repo add aquasecurity https://aquasecurity.github.io/helm-charts
helm repo update
# Create monitoring namespace
kubectl create namespace monitoring
# Install NodePulse
helm install nodepulse . -n monitoring
🛠️ Features
📊 Prometheus
- Metrics Collection
- Automatic service discovery
- Custom metric support
- 5-day data retention
- Configurable intervals
- Built-in alert rules
- Alerting
- Node resource monitoring
- Pod health tracking
- Container limits
- Service availability
📈 Grafana
- Dashboards
- Cluster overview
- Node metrics
- Pod metrics
- Service metrics
- Resource utilization
- Data Sources
- Prometheus integration
- Additional datasources
- Secure proxy access
🔒 Trivy
- Security Scanning
- Daily vulnerability checks
- Configuration audits
- Secret scanning
- Custom schedules
- Report retention
📋 Configuration
Resource Requirements
| Component |
Docker Desktop |
Production |
| Prometheus |
<ul><li>1Gi RAM</li><li>500m CPU</li></ul> |
<ul><li>4Gi RAM</li><li>2 CPU</li></ul> |
| Grafana |
<ul><li>256Mi RAM</li><li>100m CPU</li></ul> |
<ul><li>1Gi RAM</li><li>500m CPU</li></ul> |
| Trivy |
<ul><li>512Mi RAM</li><li>100m CPU</li></ul> |
<ul><li>2Gi RAM</li><li>1 CPU</li></ul> |
Storage Requirements
| Component |
Docker Desktop |
Production |
| Prometheus |
10Gi |
50Gi+ |
| Grafana |
5Gi |
20Gi+ |
| Trivy Reports |
1Gi |
10Gi+ |
🔗 Accessing Components
Docker Desktop
| Component |
Access Method |
Default Credentials |
| Grafana |
http://localhost:3000 |
admin/admin |
| Prometheus |
http://localhost:9090 |
- |
| AlertManager |
http://localhost:9093 |
- |
Production
| Component |
Access Method |
Security Notes |
| Grafana |
https://your-domain/grafana |
Configure SSO |
| Prometheus |
https://your-domain/prometheus |
Enable TLS |
| AlertManager |
https://your-domain/alertmanager |
Enable TLS |
📊 Monitoring Capabilities
System Metrics
| Metric Type |
Description |
Collection Method |
| Cluster State |
Node status, pod states |
kube-state-metrics |
| Resource Usage |
CPU, memory, network |
Prometheus |
| Application Metrics |
Custom metrics |
Prometheus client |
Security Scanning
| Scan Type |
Frequency |
Report Location |
| Vulnerability |
Daily |
Trivy Dashboard |
| Configuration |
Continuous |
Trivy Dashboard |
| Compliance |
Weekly |
Trivy Reports |
🛠️ Example Dashboards
- Cluster Overview
- Node status
- Resource usage
- Pod distribution
- Application Health
- Service status
- Error rates
- Response times
- Security Dashboard
- Vulnerability status
- Risk assessment
- Compliance score
🔍 Troubleshooting
Common Issues
| Issue |
Solution |
| Prometheus OOM |
Increase memory limits |
| Grafana Login Issues |
Reset admin password |
| Trivy Scan Failures |
Check resource limits |
Logs Location
| Component |
Log Command |
| Prometheus |
kubectl logs -n monitoring -l app.kubernetes.io/name=prometheus |
| Grafana |
kubectl logs -n monitoring -l app.kubernetes.io/name=grafana |
| Trivy |
kubectl logs -n monitoring -l app.kubernetes.io/name=trivy-operator |
🔒 Security Best Practices
- Authentication
- Enable SSO for Grafana
- Configure RBAC
- Use service accounts
- Network Security
- Enable TLS
- Configure network policies
- Use private networks
- Data Protection
- Encrypt sensitive data
- Regular backups
- Access controls
🤝 Support
[](https://github.com/DARK-art108/nodepulse/issues)
[](https://github.com/DARK-art108/nodepulse/docs)
[](https://github.com/DARK-art108/nodepulse/discussions)
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Built with ❤️ by the NodePulse Team