Metrics exporter provides Prometheus metrics for monitoring. This guide covers metrics exporter configuration.
Enable Metrics
Basic Metrics Export
NGINX Ingress Controller exposes metrics on port 10254 by default:
apiVersion: v1
kind: Service
metadata:
name: ingress-nginx-controller-metrics
namespace: ingress-nginx
spec:
ports:
- name: prometheus
port: 10254
targetPort: prometheus
selector:
app.kubernetes.io/component: controller
Prometheus Scraping
ServiceMonitor Configuration
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: ingress-nginx
namespace: ingress-nginx
spec:
selector:
matchLabels:
app.kubernetes.io/component: controller
endpoints:
- port: prometheus
interval: 30s
path: /metrics
Key Metrics
Important Metrics to Monitor
nginx_ingress_controller_requests: Request countnginx_ingress_controller_request_duration_seconds: Request durationnginx_ingress_controller_connections: Active connectionsnginx_ingress_controller_requests: Requests by status code
Best Practices
- Monitor key metrics: Track request rate, latency, errors
- Set up alerts: Alert on high error rates
- Create dashboards: Visualize metrics
Conclusion
Metrics exporter enables comprehensive monitoring. Configure Prometheus scraping and create dashboards for visibility.