nginx-plus-ingress-with-prometheus.yaml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. apiVersion: extensions/v1beta1
  2. kind: Deployment
  3. metadata:
  4. name: nginx-ingress
  5. namespace: nginx-ingress
  6. spec:
  7. replicas: 1
  8. selector:
  9. matchLabels:
  10. app: nginx-ingress
  11. template:
  12. metadata:
  13. labels:
  14. app: nginx-ingress
  15. annotations:
  16. prometheus.io/scrape: "true"
  17. prometheus.io/port: "9113"
  18. spec:
  19. serviceAccountName: nginx-ingress
  20. containers:
  21. - image: nginx-plus-ingress:1.4.3
  22. name: nginx-plus-ingress
  23. ports:
  24. - name: http
  25. containerPort: 80
  26. - name: https
  27. containerPort: 443
  28. env:
  29. - name: POD_NAMESPACE
  30. valueFrom:
  31. fieldRef:
  32. fieldPath: metadata.namespace
  33. - name: POD_NAME
  34. valueFrom:
  35. fieldRef:
  36. fieldPath: metadata.name
  37. args:
  38. - -nginx-plus
  39. - -nginx-configmaps=$(POD_NAMESPACE)/nginx-config
  40. - -default-server-tls-secret=$(POD_NAMESPACE)/default-server-secret
  41. #- -v=3 # Enables extensive logging. Useful for trooublshooting.
  42. #- -report-ingress-status
  43. #- -external-service=nginx-ingress
  44. #- -enable-leader-election
  45. - image: nginx/nginx-prometheus-exporter:0.2.0
  46. name: nginx-prometheus-exporter
  47. ports:
  48. - name: prometheus
  49. containerPort: 9113
  50. args:
  51. - -web.listen-address
  52. - :9113
  53. - -nginx.plus
  54. - -nginx.scrape-uri
  55. - http://127.0.0.1:8080/api