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

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