apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: prometheus-ingress
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: prometheus.example.com
http:
paths:
- path: /prometheus
pathType: Prefix
backend:
service:
name: prometheus-service
port:
number: 9090
- path: /alertmanager
pathType: Prefix
backend:
service:
name: alertmanager-service
port:
number: 9093
- path: /grafana
pathType: Prefix
backend:
service:
name: grafana-service
port:
number: 3000
В этом примере, мы настраиваем Ingress для перенаправления трафика на сервисы Prometheus, Alertmanager и Grafana.
- Здесь мы используем Ingress класс "nginx" и устанавливаем аннотацию для использования nginx Ingress Controller.
- Затем мы задаем правила для различных путей обращения (префиксов) к разным сервисам.
- Например, все запросы к "/prometheus" будут перенаправляться на сервис Prometheus, слушающий порт 9090. Аналогично, запросы к "/alertmanager" будут перенаправляться на сервис Alertmanager, слушающий порт 9093, и запросы к "/grafana" будут перенаправляться на сервис Grafana, слушающий порт 3000.
Убедитесь, что у вас установлен Ingress Controller (например, Nginx Ingress Controller), и у вас есть соответствующий DNS-запись для хоста, указанного в Ingress правиле (например, "prometheus.example.com" в данном примере).
Примените этот конфигурационный файл, используя команду "kubectl apply -f your-ingress-config.yaml", и ваш Ingress должен быть настроен правильно для перенаправления трафика на сервисы Prometheus, Alertmanager и Grafana.