Prometheus Monitoring on Kubernetes Cluster

#0
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update

helm install kube-prometheus-stack prometheus-community/kube-prometheus-stack --create-namespace --namespace monitoring

# Takes sometime to complete, you can open another terminal to check pods

Check its status by running:

#1
kubectl --namespace monitoring get pods -l "release=kube-prometheus-stack"

Get Grafana ‘admin’ user password by running:

#2
kubectl --namespace monitoring get secrets kube-prometheus-stack-grafana -o jsonpath="{.data.admin-password}" | base64 -d ; echo
#3
# certificate-monitoring.yaml

apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
  name: syncroze-tls
  namespace: monitoring
spec:
  dnsNames:
  - grafana.syncroze.com
  - prometheus.syncroze.com
  - alertmanager.syncroze.com
  privateKey:
    rotationPolicy: Always
  issuerRef:
    kind: ClusterIssuer
    name: letsencrypt-prod
  secretName: syncroze-tls
#4
kubectl apply -f certificate-monitoring.yaml
#5
# ingress-monitoring.yaml

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-monitoring
  namespace: monitoring
  annotations:
    cert-manager.io/cluster-issuer: letsencrypt-prod
    nginx.org/ssl-redirect: "true"
spec:
  ingressClassName: nginx
  tls:
  - hosts:
    - grafana.syncroze.com
    - prometheus.syncroze.com
    - alertmanager.syncroze.com
    secretName: syncroze-tls
  rules:
  - host: grafana.syncroze.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: kube-prometheus-stack-grafana
            port:
              number: 80

  - host: prometheus.syncroze.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: kube-prometheus-stack-prometheus
            port:
              number: 9090

  - host: alertmanager.syncroze.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: kube-prometheus-stack-alertmanager
            port:
              number: 9093
#6
kubectl apply -f ingress-monitoring.yaml
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted