diff --git a/changelog.d/0-release-notes/nginz-ingress b/changelog.d/0-release-notes/nginz-ingress new file mode 100644 index 0000000000..ac07443c28 --- /dev/null +++ b/changelog.d/0-release-notes/nginz-ingress @@ -0,0 +1,15 @@ +The `nginz{-tcp,-http}` services have been unified into a `nginz` service, and +moved into the nginz chart. + +The nginz-ingress-services chart simply targets the `nginz` service, so there's +no need to set matching `service.nginz.external{Http,Tcp}Port` inside the +`nginx-ingress-services` chart anymore. + +The `config.http.httpPort` and `config.ws.wsPort` values in the `nginz` chart +still configure the ports the `nginz` service is listening on. + +The `nginz` chart also gained support for `metrics.serviceMonitor.enabled`, +creating a `ServiceMonitor` resource to scrape metrics, like for other wire +services. + +(#2476) diff --git a/charts/nginx-ingress-services/templates/ingress.yaml b/charts/nginx-ingress-services/templates/ingress.yaml index 39fe2e3318..6cc9d019e4 100644 --- a/charts/nginx-ingress-services/templates/ingress.yaml +++ b/charts/nginx-ingress-services/templates/ingress.yaml @@ -32,16 +32,16 @@ spec: paths: - path: / backend: - serviceName: nginz-http - servicePort: {{ .Values.service.nginz.externalHttpPort }} + serviceName: nginz + servicePort: http {{- if .Values.websockets.enabled }} - host: {{ .Values.config.dns.ssl }} http: paths: - path: / backend: - serviceName: nginz-tcp - servicePort: {{ .Values.service.nginz.externalTcpPort }} + serviceName: nginz + servicePort: ws {{- end }} {{- if .Values.webapp.enabled }} - host: {{ .Values.config.dns.webapp }} diff --git a/charts/nginx-ingress-services/templates/service.yaml b/charts/nginx-ingress-services/templates/service.yaml index c55c69b152..8355178922 100644 --- a/charts/nginx-ingress-services/templates/service.yaml +++ b/charts/nginx-ingress-services/templates/service.yaml @@ -1,29 +1,4 @@ # FUTUREWORK: move services into the respective charts -apiVersion: v1 -kind: Service -metadata: - name: nginz-http -spec: - type: ClusterIP - ports: - - port: {{ .Values.service.nginz.externalHttpPort }} - targetPort: 8080 - selector: - app: nginz -{{- if .Values.websockets.enabled }} ---- -apiVersion: v1 -kind: Service -metadata: - name: nginz-tcp -spec: - type: ClusterIP - ports: - - port: {{ .Values.service.nginz.externalTcpPort }} - targetPort: 8081 - selector: - app: nginz -{{- end }} {{- if .Values.webapp.enabled }} --- apiVersion: v1 diff --git a/charts/nginx-ingress-services/values.yaml b/charts/nginx-ingress-services/values.yaml index 44f49f0847..cdad4fc02c 100644 --- a/charts/nginx-ingress-services/values.yaml +++ b/charts/nginx-ingress-services/values.yaml @@ -80,9 +80,6 @@ certManager: customSolvers: service: - nginz: - externalHttpPort: 8080 - externalTcpPort: 8081 webapp: externalPort: 8080 s3: diff --git a/charts/nginz/templates/service.yaml b/charts/nginz/templates/service.yaml new file mode 100644 index 0000000000..3a5172b404 --- /dev/null +++ b/charts/nginz/templates/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: nginz +spec: + type: ClusterIP + ports: + - name: http + port: {{ .Values.config.http.httpPort }} + targetPort: 8080 + - name: ws + port: {{ .Values.config.ws.wsPort }} + targetPort: 8081 + selector: + app: nginz diff --git a/charts/nginz/templates/servicemonitor.yaml b/charts/nginz/templates/servicemonitor.yaml new file mode 100644 index 0000000000..441d4f3f9a --- /dev/null +++ b/charts/nginz/templates/servicemonitor.yaml @@ -0,0 +1,19 @@ +{{- if .Values.metrics.serviceMonitor.enabled }} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: nginz + labels: + app: nginz + chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service }} +spec: + endpoints: + - port: http + path: /vts/status/format/prometheus + selector: + matchLabels: + app: nginz + release: {{ .Release.Name }} +{{- end }} diff --git a/charts/nginz/values.yaml b/charts/nginz/values.yaml index 3d87195e81..981bfdbb23 100644 --- a/charts/nginz/values.yaml +++ b/charts/nginz/values.yaml @@ -6,6 +6,9 @@ resources: limits: memory: "1024Mi" cpu: "2" +metrics: + serviceMonitor: + enabled: false images: nginzDisco: repository: quay.io/wire/nginz_disco diff --git a/services/nginz/third_party/nginx-module-vts b/services/nginz/third_party/nginx-module-vts index b606b13006..3c6cf41315 160000 --- a/services/nginz/third_party/nginx-module-vts +++ b/services/nginz/third_party/nginx-module-vts @@ -1 +1 @@ -Subproject commit b606b13006ffc3c694e8e6326a85f629c1288568 +Subproject commit 3c6cf41315bfcb48c35a3a0be81ddba6d0d01dac