servicemonitor.yaml 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. {{- if and ( .Capabilities.APIVersions.Has "monitoring.coreos.com/v1" ) .Values.serviceMonitor.enabled -}}
  2. apiVersion: v1
  3. kind: Service
  4. metadata:
  5. name: {{ include "external-secrets.fullname" . }}-metrics
  6. namespace: {{ template "external-secrets.namespace" . }}
  7. labels:
  8. {{- include "external-secrets.labels" . | nindent 4 }}
  9. spec:
  10. type: ClusterIP
  11. {{- if .Values.service.ipFamilyPolicy }}
  12. ipFamilyPolicy: {{ .Values.service.ipFamilyPolicy }}
  13. {{- end }}
  14. {{- if .Values.service.ipFamilies }}
  15. ipFamilies: {{ .Values.service.ipFamilies | toYaml | nindent 2 }}
  16. {{- end }}
  17. ports:
  18. - port: {{ .Values.metrics.service.port }}
  19. protocol: TCP
  20. name: metrics
  21. selector:
  22. {{- include "external-secrets.selectorLabels" . | nindent 4 }}
  23. ---
  24. apiVersion: "monitoring.coreos.com/v1"
  25. kind: ServiceMonitor
  26. metadata:
  27. labels:
  28. {{- include "external-secrets.labels" . | nindent 4 }}
  29. {{- if .Values.serviceMonitor.additionalLabels }}
  30. {{ toYaml .Values.serviceMonitor.additionalLabels | indent 4 }}
  31. {{- end }}
  32. name: {{ include "external-secrets.fullname" . }}-metrics
  33. namespace: {{ .Values.serviceMonitor.namespace | default (include "external-secrets.namespace" .) | quote }}
  34. spec:
  35. selector:
  36. matchLabels:
  37. {{- include "external-secrets.selectorLabels" . | nindent 6 }}
  38. namespaceSelector:
  39. matchNames:
  40. - {{ template "external-secrets.namespace" . }}
  41. endpoints:
  42. - port: metrics
  43. interval: {{ .Values.serviceMonitor.interval }}
  44. scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }}
  45. honorLabels: {{ .Values.serviceMonitor.honorLabels }}
  46. {{- with .Values.serviceMonitor.metricRelabelings }}
  47. metricRelabelings:
  48. {{- toYaml . | nindent 6 }}
  49. {{- end }}
  50. {{- with .Values.serviceMonitor.relabelings }}
  51. relabelings:
  52. {{- toYaml . | nindent 6 }}
  53. {{- end }}
  54. ---
  55. {{- if .Values.webhook.create }}
  56. apiVersion: v1
  57. kind: Service
  58. metadata:
  59. name: {{ include "external-secrets.fullname" . }}-webhook-metrics
  60. namespace: {{ template "external-secrets.namespace" . }}
  61. labels:
  62. {{- include "external-secrets-webhook-metrics.labels" . | nindent 4 }}
  63. spec:
  64. type: ClusterIP
  65. {{- if .Values.service.ipFamilyPolicy }}
  66. ipFamilyPolicy: {{ .Values.service.ipFamilyPolicy }}
  67. {{- end }}
  68. {{- if .Values.service.ipFamilies }}
  69. ipFamilies: {{ .Values.service.ipFamilies | toYaml | nindent 2 }}
  70. {{- end }}
  71. ports:
  72. - port: {{ .Values.webhook.metrics.service.port }}
  73. protocol: TCP
  74. name: metrics
  75. selector:
  76. {{- include "external-secrets-webhook.selectorLabels" . | nindent 4 }}
  77. ---
  78. apiVersion: "monitoring.coreos.com/v1"
  79. kind: ServiceMonitor
  80. metadata:
  81. labels:
  82. {{- include "external-secrets-webhook.labels" . | nindent 4 }}
  83. {{- if .Values.serviceMonitor.additionalLabels }}
  84. {{ toYaml .Values.serviceMonitor.additionalLabels | indent 4 }}
  85. {{- end }}
  86. name: {{ include "external-secrets.fullname" . }}-webhook-metrics
  87. namespace: {{ .Values.serviceMonitor.namespace | default (include "external-secrets.namespace" .) | quote }}
  88. spec:
  89. selector:
  90. matchLabels:
  91. {{- include "external-secrets-webhook-metrics.labels" . | nindent 6 }}
  92. namespaceSelector:
  93. matchNames:
  94. - {{ template "external-secrets.namespace" . }}
  95. endpoints:
  96. - port: metrics
  97. interval: {{ .Values.serviceMonitor.interval }}
  98. scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }}
  99. honorLabels: {{ .Values.serviceMonitor.honorLabels }}
  100. {{- with .Values.serviceMonitor.metricRelabelings }}
  101. metricRelabelings:
  102. {{- toYaml . | nindent 6 }}
  103. {{- end }}
  104. {{- with .Values.serviceMonitor.relabelings }}
  105. relabelings:
  106. {{- toYaml . | nindent 6 }}
  107. {{- end }}
  108. {{- end }}
  109. ---
  110. {{- if .Values.certController.create }}
  111. apiVersion: v1
  112. kind: Service
  113. metadata:
  114. name: {{ include "external-secrets.fullname" . }}-cert-controller-metrics
  115. namespace: {{ template "external-secrets.namespace" . }}
  116. labels:
  117. {{- include "external-secrets-cert-controller-metrics.labels" . | nindent 4 }}
  118. spec:
  119. type: ClusterIP
  120. {{- if .Values.service.ipFamilyPolicy }}
  121. ipFamilyPolicy: {{ .Values.service.ipFamilyPolicy }}
  122. {{- end }}
  123. {{- if .Values.service.ipFamilies }}
  124. ipFamilies: {{ .Values.service.ipFamilies | toYaml | nindent 2 }}
  125. {{- end }}
  126. ports:
  127. - port: {{ .Values.certController.metrics.listen.port }}
  128. protocol: TCP
  129. name: metrics
  130. selector:
  131. {{- include "external-secrets-cert-controller.selectorLabels" . | nindent 4 }}
  132. ---
  133. apiVersion: "monitoring.coreos.com/v1"
  134. kind: ServiceMonitor
  135. metadata:
  136. labels:
  137. {{- include "external-secrets-cert-controller.labels" . | nindent 4 }}
  138. {{- if .Values.serviceMonitor.additionalLabels }}
  139. {{ toYaml .Values.serviceMonitor.additionalLabels | indent 4 }}
  140. {{- end }}
  141. name: {{ include "external-secrets.fullname" . }}-cert-controller-metrics
  142. namespace: {{ .Values.serviceMonitor.namespace | default (include "external-secrets.namespace" .) | quote }}
  143. spec:
  144. selector:
  145. matchLabels:
  146. {{- include "external-secrets-cert-controller-metrics.labels" . | nindent 6 }}
  147. namespaceSelector:
  148. matchNames:
  149. - {{ template "external-secrets.namespace" . }}
  150. endpoints:
  151. - port: metrics
  152. interval: {{ .Values.serviceMonitor.interval }}
  153. scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }}
  154. honorLabels: {{ .Values.serviceMonitor.honorLabels }}
  155. {{- with .Values.serviceMonitor.metricRelabelings }}
  156. metricRelabelings:
  157. {{- toYaml . | nindent 6 }}
  158. {{- end }}
  159. {{- with .Values.serviceMonitor.relabelings }}
  160. relabelings:
  161. {{- toYaml . | nindent 6 }}
  162. {{- end }}
  163. {{- end }}
  164. {{- end }}