Skip to content

production/graph: Deploy graph 20241206 on highmem02

Antoine R. Dumont requested to merge mr/align-graph-configuration into production

In the first commit, it adapts the previous configuration to run the 20240331 graph (it's still disabled from metal05 decommission).

In the 2nd commit, the actual subject of this mr is to deploy the same version as highmem01's in highmem02 (old granet). This will allow to smooth the graph deployment upgrade to a new version (from one node to the other so the upgrade is transparent for the users)

The graph dataset has been copied over from highmem01 to highmem02 to the same location.

helm diff
tony@kessel:~/work/swh/sysadm-environment/swh-charts (mr/align-graph-configuration) $ make swh-helm-diff
[swh] Comparing changes between branches production and mr/align-graph-configuration (per environment)...
Switched to branch 'production'
Your branch is up to date with 'origin/production'.
[swh] Generate config in production branch for environment staging, namespace swh...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra-next-version...
Switched to branch 'mr/align-graph-configuration'
[swh] Generate config in mr/align-graph-configuration branch for environment staging...
[swh] Generate config in mr/align-graph-configuration branch for environment staging...
[swh] Generate config in mr/align-graph-configuration branch for environment staging...
Switched to branch 'production'
Your branch is up to date with 'origin/production'.
[swh] Generate config in production branch for environment production, namespace swh...
[swh] Generate config in production branch for environment production, namespace swh-cassandra...
[swh] Generate config in production branch for environment production, namespace swh-cassandra-next-version...
Switched to branch 'mr/align-graph-configuration'
[swh] Generate config in mr/align-graph-configuration branch for environment production...
[swh] Generate config in mr/align-graph-configuration branch for environment production...
[swh] Generate config in mr/align-graph-configuration branch for environment production...


------------- diff for environment staging namespace swh -------------

No differences


------------- diff for environment staging namespace swh-cassandra -------------

No differences


------------- diff for environment staging namespace swh-cassandra-next-version -------------

No differences


------------- diff for environment production namespace swh -------------

--- /tmp/swh-chart.swh.l9p1lDI3/production-swh.before   2025-01-27 18:25:20.490281026 +0100
+++ /tmp/swh-chart.swh.l9p1lDI3/production-swh.after    2025-01-27 18:25:20.994259654 +0100
@@ -2474,20 +2474,30 @@
   name: graph-grpc-20241206-ingress
   namespace: swh
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:
+  name: graph-grpc-20241206-02-ingress
+  namespace: swh
+spec:
+  type: ExternalName
+  externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
+---
+# Source: swh/templates/external-services/cname.yaml
+apiVersion: v1
+kind: Service
+metadata:
   name: graph-grpc-default-ingress
   namespace: swh
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:
@@ -2504,20 +2514,30 @@
   name: graph-rpc-20241206-ingress
   namespace: swh
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:
+  name: graph-rpc-20241206-02-ingress
+  namespace: swh
+spec:
+  type: ExternalName
+  externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
+---
+# Source: swh/templates/external-services/cname.yaml
+apiVersion: v1
+kind: Service
+metadata:
   name: graph-rpc-default-ingress
   namespace: swh
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:


------------- diff for environment production namespace swh-cassandra -------------

--- /tmp/swh-chart.swh.l9p1lDI3/production-swh-cassandra.before 2025-01-27 18:25:20.842266100 +0100
+++ /tmp/swh-chart.swh.l9p1lDI3/production-swh-cassandra.after  2025-01-27 18:25:21.350244558 +0100
@@ -1036,29 +1036,54 @@
 data:
   config.yml.template: |
     graph:
       max_ram: 500g
 ---
 # Source: swh/templates/graph/configmap.yaml
 apiVersion: v1
 kind: ConfigMap
 metadata:
   namespace: swh-cassandra
+  name: graph-grpc-20241206-02-configuration-template
+data:
+  config.yml.template: |
+    graph:
+      max_ram: 500g
+---
+# Source: swh/templates/graph/configmap.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  namespace: swh-cassandra
   name: graph-rpc-20241206-configuration-template
 data:
   config.yml.template: |
     graph:
       cls: remote
       grpc_server:
         port: 80
       url: graph-grpc-20241206-ingress:80
 ---
+# Source: swh/templates/graph/configmap.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  namespace: swh-cassandra
+  name: graph-rpc-20241206-02-configuration-template
+data:
+  config.yml.template: |
+    graph:
+      cls: remote
+      grpc_server:
+        port: 80
+      url: graph-grpc-20241206-02-ingress:80
+---
 # Source: swh/templates/graphql/configmap.yaml
 apiVersion: v1
 kind: ConfigMap
 metadata:
   namespace: swh-cassandra
   name: graphql-archive-configuration-template
 data:
   # TODO: rename to not have a dot in the name to allow testing
   config.yml: |
     storage:
@@ -10618,20 +10643,45 @@
     path: /srv/softwareheritage/ssd/graph/2024-12-06/compressed
   nodeAffinity:
     required:
       nodeSelectorTerms:
       - matchExpressions:
         - key: kubernetes.io/hostname
           operator: In
           values:
             - rancher-node-highmem01
 ---
+# Source: swh/templates/graph/persistent-volume-claims.yaml
+apiVersion: v1
+kind: PersistentVolume
+metadata:
+  name: graph-20241206-02-persistent-local-pv
+  namespace: swh-cassandra
+spec:
+  capacity:
+    storage: 1Gi
+  volumeMode: Filesystem
+  accessModes:
+  - ReadWriteOnce
+  persistentVolumeReclaimPolicy: Retain
+  storageClassName: local-storage
+  local:
+    path: /srv/softwareheritage/ssd/graph/2024-12-06/compressed
+  nodeAffinity:
+    required:
+      nodeSelectorTerms:
+      - matchExpressions:
+        - key: kubernetes.io/hostname
+          operator: In
+          values:
+            - rancher-node-highmem02
+---
 # Source: swh/templates/alter/deployment.yaml
 apiVersion: v1
 kind: PersistentVolumeClaim
 metadata:
   name: alter-recovery-bundles-pvc
   namespace: swh-cassandra
 spec:
   storageClassName: cephfs
   accessModes:
     - ReadWriteMany
@@ -10666,20 +10716,53 @@
 spec:
   resources:
     requests:
       storage: 1Gi
   volumeMode: Filesystem
   volumeName: graph-20241206-persistent-local-pv
   storageClassName: local-storage
   accessModes:
   - ReadWriteOnce
 ---
+# Source: swh/templates/graph/persistent-volume-claims.yaml
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: graph-20241206-02-inmemory-pvc
+  namespace: swh-cassandra
+  labels:
+    app: graph-grpc-20241206-02
+spec:
+  accessModes:
+  - ReadWriteOnce
+  resources:
+    requests:
+      storage: 1Gi
+  storageClassName: local-path
+  volumeMode: Filesystem
+---
+# Source: swh/templates/graph/persistent-volume-claims.yaml
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: graph-20241206-02-persistent-pvc
+  namespace: swh-cassandra
+spec:
+  resources:
+    requests:
+      storage: 1Gi
+  volumeMode: Filesystem
+  volumeName: graph-20241206-02-persistent-local-pv
+  storageClassName: local-storage
+  accessModes:
+  - ReadWriteOnce
+---
 # Source: swh/templates/counters/rpc-service.yaml
 apiVersion: v1
 kind: Service
 metadata:
   name: counters-rpc
   namespace: swh-cassandra
   labels:
     app: counters-rpc
 spec:
   type: ClusterIP
@@ -10748,20 +10831,30 @@
   name: graph-grpc-20241206-ingress
   namespace: swh-cassandra
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:
+  name: graph-grpc-20241206-02-ingress
+  namespace: swh-cassandra
+spec:
+  type: ExternalName
+  externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
+---
+# Source: swh/templates/external-services/cname.yaml
+apiVersion: v1
+kind: Service
+metadata:
   name: graph-grpc-default-ingress
   namespace: swh-cassandra
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:
@@ -10778,20 +10871,30 @@
   name: graph-rpc-20241206-ingress
   namespace: swh-cassandra
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:
+  name: graph-rpc-20241206-02-ingress
+  namespace: swh-cassandra
+spec:
+  type: ExternalName
+  externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
+---
+# Source: swh/templates/external-services/cname.yaml
+apiVersion: v1
+kind: Service
+metadata:
   name: graph-rpc-default-ingress
   namespace: swh-cassandra
 spec:
   type: ExternalName
   externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
 ---
 # Source: swh/templates/external-services/cname.yaml
 apiVersion: v1
 kind: Service
 metadata:
@@ -11095,33 +11198,67 @@
     app: graph-grpc-20241206
   ports:
     - port: 50091
       targetPort: 50091
       name: grpc
 ---
 # Source: swh/templates/graph/service.yaml
 apiVersion: v1
 kind: Service
 metadata:
+  name: graph-grpc-20241206-02
+  namespace: swh-cassandra
+  labels:
+    app: graph-grpc-20241206-02
+spec:
+  type: ClusterIP
+  selector:
+    app: graph-grpc-20241206-02
+  ports:
+    - port: 50091
+      targetPort: 50091
+      name: grpc
+---
+# Source: swh/templates/graph/service.yaml
+apiVersion: v1
+kind: Service
+metadata:
   name: graph-rpc-20241206
   namespace: swh-cassandra
   labels:
     app: graph-rpc-20241206
 spec:
   type: ClusterIP
   selector:
     app: graph-rpc-20241206
   ports:
     - port: 5009
       targetPort: 5009
       name: rpc
 ---
+# Source: swh/templates/graph/service.yaml
+apiVersion: v1
+kind: Service
+metadata:
+  name: graph-rpc-20241206-02
+  namespace: swh-cassandra
+  labels:
+    app: graph-rpc-20241206-02
+spec:
+  type: ClusterIP
+  selector:
+    app: graph-rpc-20241206-02
+  ports:
+    - port: 5009
+      targetPort: 5009
+      name: rpc
+---
 # Source: swh/templates/graphql/service.yaml
 apiVersion: v1
 kind: Service
 metadata:
   name: graphql-archive
   namespace: swh-cassandra
   labels:
     app: graphql-archive
 spec:
   type: ClusterIP
@@ -13076,20 +13213,206 @@

       - name: graph-20241206-persistent
         persistentVolumeClaim:
           claimName: graph-20241206-persistent-pvc
 ---
 # Source: swh/templates/graph/deployment.yaml
 apiVersion: apps/v1
 kind: Deployment
 metadata:
   namespace: swh-cassandra
+  name: graph-grpc-20241206-02
+  labels:
+    app: graph-grpc-20241206-02
+spec:
+  revisionHistoryLimit: 2
+  selector:
+    matchLabels:
+      app: graph-grpc-20241206-02
+  strategy:
+    type: RollingUpdate
+    rollingUpdate:
+      maxSurge: 1
+  template:
+    metadata:
+      labels:
+        app: graph-grpc-20241206-02
+      annotations:
+        checksum/config: f0f23ac97973feb0291bd01a0676d8c7b26acb7a127229f12f8ff8a1b43e5185
+        checksum/config-utils: 13a26f6add17e96ce01550153c77dcd48de60241a3f4db3c93d5467234be2a7f
+        checksum/backend-utils: f05e83ee23d0a6f024509f79edaa8e11d7e0829cea9481832ad0670267a3de60
+    spec:
+      affinity:
+        nodeAffinity:
+          requiredDuringSchedulingIgnoredDuringExecution:
+            nodeSelectorTerms:
+            - matchExpressions:
+              - key: swh/graph
+                operator: In
+                values:
+                - "true"
+      priorityClassName: swh-cassandra-frontend-rpc
+      initContainers:
+        - name: prepare-configuration
+          image: container-registry.softwareheritage.org/swh/infra/swh-apps/utils:20231211.1
+          imagePullPolicy: IfNotPresent
+          command:
+          - /entrypoints/prepare-configuration.sh
+          env:
+
+          volumeMounts:
+          - name: configuration
+            mountPath: /etc/swh
+          - name: configuration-template
+            mountPath: /etc/swh/configuration-template
+          - name: config-utils
+            mountPath: /entrypoints
+            readOnly: true
+
+        - name: graph-prepare-memory-volume
+          image: container-registry.softwareheritage.org/swh/infra/swh-apps/utils:20231211.1
+          imagePullPolicy: IfNotPresent
+          command:
+          - /entrypoints/graph-prepare-memory-volume.sh
+          env:
+            - name: WITNESS_FILE
+              value: /srv/graph/2024-12-06/compressed/.graph-is-initialized
+            - name: WITNESS_SOURCE_FILE
+              value: /srv/dataset/2024-12-06/compressed/.graph-is-initialized
+            - name: WITNESS_REINDEX_FILE
+              value: ""
+
+            - name: PERIOD
+              value: "3"
+            - name: GRAPH_NAME
+              value: graph
+            - name: DATASET_SOURCE
+              value: /srv/dataset/2024-12-06/compressed
+            - name: DATASET_LOCATION
+              value: /srv/graph/2024-12-06/compressed
+          volumeMounts:
+          - name: backend-utils
+            mountPath: /entrypoints
+            readOnly: true
+          - name: graph-20241206-02-inmemory
+            mountPath: /srv/graph
+            readOnly: false
+
+          - name: graph-20241206-02-persistent
+            mountPath: /srv/dataset/2024-12-06/compressed
+            readOnly: false
+
+      containers:
+        - name: graph-grpc-20241206-02
+          resources:
+            requests:
+              memory: 400Gi
+              cpu: 500m
+          image: container-registry.softwareheritage.org/swh/infra/swh-apps/graph:20250123.1
+          imagePullPolicy: IfNotPresent
+          ports:
+            - containerPort: 50091
+              name: grpc
+          readinessProbe:
+            tcpSocket:
+              port: grpc
+            initialDelaySeconds: 15
+            failureThreshold: 30
+            periodSeconds: 5
+          livenessProbe:
+            tcpSocket:
+              port: grpc
+            initialDelaySeconds: 10
+            periodSeconds: 5
+          command:
+          - /bin/bash
+          args:
+          - -c
+          - /opt/swh/entrypoint.sh
+          env:
+            - name: PORT
+              value: "50091"
+
+            - name: GRAPH_TYPE
+              value: grpc
+
+
+            - name: GRAPH_PATH
+              value: /srv/graph/2024-12-06/compressed/graph
+
+            - name: STATSD_HOST
+              value: prometheus-statsd-exporter
+            - name: STATSD_PORT
+              value: "9125"
+            - name: STATSD_TAGS
+              value: deployment:graph-grpc-20241206-02
+            - name: STATSD_SERVICE_TYPE
+              value: graph-grpc-20241206-02
+            - name: SWH_LOG_LEVEL
+              value: "INFO"
+            - name: SWH_CONFIG_FILENAME
+              value: /etc/swh/config.yml
+            - name: SWH_SENTRY_ENVIRONMENT
+              value: production
+            - name: SWH_MAIN_PACKAGE
+              value: swh.graph
+            - name: SWH_SENTRY_DSN
+              valueFrom:
+                secretKeyRef:
+                  name: common-secrets
+                  key: storage-sentry-dsn
+                  # 'name' secret should exist & include key
+                  # if the setting doesn't exist, sentry pushes will be disabled
+                  optional: true
+            - name: SWH_SENTRY_DISABLE_LOGGING_EVENTS
+              value: "true"
+          volumeMounts:
+          - name: configuration
+            mountPath: /etc/swh
+          - name: graph-20241206-02-inmemory
+            mountPath: /srv/graph
+            readOnly: false
+
+          - name: graph-20241206-02-persistent
+            mountPath: /srv/dataset/2024-12-06/compressed
+            readOnly: false
+
+      volumes:
+      - name: configuration
+        emptyDir: {}
+      - name: configuration-template
+        configMap:
+          name: graph-grpc-20241206-02-configuration-template
+          items:
+          - key: "config.yml.template"
+            path: "config.yml.template"
+      - name: config-utils
+        configMap:
+          name: config-utils
+          defaultMode: 0555
+      - name: backend-utils
+        configMap:
+          name: backend-utils
+          defaultMode: 0555
+      - name: graph-20241206-02-inmemory
+        persistentVolumeClaim:
+          claimName: graph-20241206-02-inmemory-pvc
+
+      - name: graph-20241206-02-persistent
+        persistentVolumeClaim:
+          claimName: graph-20241206-02-persistent-pvc
+---
+# Source: swh/templates/graph/deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  namespace: swh-cassandra
   name: graph-rpc-20241206
   labels:
     app: graph-rpc-20241206
 spec:
   revisionHistoryLimit: 2
   selector:
     matchLabels:
       app: graph-rpc-20241206
   strategy:
     type: RollingUpdate
@@ -13206,20 +13529,155 @@
             path: "config.yml.template"
       - name: config-utils
         configMap:
           name: config-utils
           defaultMode: 0555
       - name: backend-utils
         configMap:
           name: backend-utils
           defaultMode: 0555
 ---
+# Source: swh/templates/graph/deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  namespace: swh-cassandra
+  name: graph-rpc-20241206-02
+  labels:
+    app: graph-rpc-20241206-02
+spec:
+  revisionHistoryLimit: 2
+  selector:
+    matchLabels:
+      app: graph-rpc-20241206-02
+  strategy:
+    type: RollingUpdate
+    rollingUpdate:
+      maxSurge: 1
+  template:
+    metadata:
+      labels:
+        app: graph-rpc-20241206-02
+      annotations:
+        checksum/config: 2c29e0f58b010f914732dce304ec48adea82737ebbbfc778df102552f40c25e9
+        checksum/config-utils: 13a26f6add17e96ce01550153c77dcd48de60241a3f4db3c93d5467234be2a7f
+        checksum/backend-utils: f05e83ee23d0a6f024509f79edaa8e11d7e0829cea9481832ad0670267a3de60
+    spec:
+      affinity:
+        nodeAffinity:
+          requiredDuringSchedulingIgnoredDuringExecution:
+            nodeSelectorTerms:
+            - matchExpressions:
+              - key: swh/graph
+                operator: In
+                values:
+                - "true"
+      priorityClassName: swh-cassandra-frontend-rpc
+      initContainers:
+        - name: prepare-configuration
+          image: container-registry.softwareheritage.org/swh/infra/swh-apps/utils:20231211.1
+          imagePullPolicy: IfNotPresent
+          command:
+          - /entrypoints/prepare-configuration.sh
+          env:
+
+          volumeMounts:
+          - name: configuration
+            mountPath: /etc/swh
+          - name: configuration-template
+            mountPath: /etc/swh/configuration-template
+          - name: config-utils
+            mountPath: /entrypoints
+            readOnly: true
+      containers:
+        - name: graph-rpc-20241206-02
+          resources:
+            requests:
+              memory: 512Mi
+              cpu: 500m
+          image: container-registry.softwareheritage.org/swh/infra/swh-apps/graph:20250123.1
+          imagePullPolicy: IfNotPresent
+          ports:
+            - containerPort: 5009
+              name: rpc
+          readinessProbe:
+            httpGet:
+              path: /
+              port: rpc
+            initialDelaySeconds: 15
+            failureThreshold: 30
+            periodSeconds: 5
+          livenessProbe:
+            tcpSocket:
+              port: rpc
+            initialDelaySeconds: 10
+            periodSeconds: 5
+          command:
+          - /bin/bash
+          args:
+          - -c
+          - /opt/swh/entrypoint.sh
+          env:
+            - name: PORT
+              value: "5009"
+
+            - name: GRAPH_TYPE
+              value: rpc
+
+
+            - name: STATSD_HOST
+              value: prometheus-statsd-exporter
+            - name: STATSD_PORT
+              value: "9125"
+            - name: STATSD_TAGS
+              value: deployment:graph-rpc-20241206-02
+            - name: STATSD_SERVICE_TYPE
+              value: graph-rpc-20241206-02
+            - name: SWH_LOG_LEVEL
+              value: "INFO"
+            - name: SWH_CONFIG_FILENAME
+              value: /etc/swh/config.yml
+            - name: SWH_SENTRY_ENVIRONMENT
+              value: production
+            - name: SWH_MAIN_PACKAGE
+              value: swh.graph
+            - name: SWH_SENTRY_DSN
+              valueFrom:
+                secretKeyRef:
+                  name: common-secrets
+                  key: storage-sentry-dsn
+                  # 'name' secret should exist & include key
+                  # if the setting doesn't exist, sentry pushes will be disabled
+                  optional: true
+            - name: SWH_SENTRY_DISABLE_LOGGING_EVENTS
+              value: "true"
+          volumeMounts:
+          - name: configuration
+            mountPath: /etc/swh
+      volumes:
+      - name: configuration
+        emptyDir: {}
+      - name: configuration-template
+        configMap:
+          name: graph-rpc-20241206-02-configuration-template
+          items:
+          - key: "config.yml.template"
+            path: "config.yml.template"
+      - name: config-utils
+        configMap:
+          name: config-utils
+          defaultMode: 0555
+      - name: backend-utils
+        configMap:
+          name: backend-utils
+          defaultMode: 0555
+---
 # Source: swh/templates/graphql/deployment.yaml
 apiVersion: apps/v1
 kind: Deployment
 metadata:
   name: graphql-archive
   namespace: swh-cassandra
   labels:
     app: graphql-archive
 spec:
   revisionHistoryLimit: 2
@@ -29773,20 +30231,51 @@
           service:
             name: graph-grpc-20241206
             port:
               number: 50091
 ---
 # Source: swh/templates/graph/ingress.yaml
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   namespace: swh-cassandra
+  name: graph-grpc-20241206-02-ingress-default
+  labels:
+    app: graph-grpc-20241206-02
+    endpoint-definition: default
+  annotations:
+    nginx.ingress.kubernetes.io/backend-protocol: GRPC
+    nginx.ingress.kubernetes.io/client-body-buffer-size: 128K
+    nginx.ingress.kubernetes.io/proxy-body-size: 4G
+    nginx.ingress.kubernetes.io/proxy-buffering: "on"
+    nginx.ingress.kubernetes.io/service-upstream: "true"
+    nginx.ingress.kubernetes.io/ssl-redirect: "true"
+    nginx.ingress.kubernetes.io/whitelist-source-range: 10.42.0.0/16,10.43.0.0/16,127.0.0.0/8,192.168.100.0/24,192.168.100.29/32,192.168.101.0/24,192.168.200.0/22,192.168.50.0/24
+spec:
+  ingressClassName: nginx
+  rules:
+  - host: graph-grpc-20241206-02-ingress
+    http:
+      paths:
+      - path: /
+        pathType: Prefix
+        backend:
+          service:
+            name: graph-grpc-20241206-02
+            port:
+              number: 50091
+---
+# Source: swh/templates/graph/ingress.yaml
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  namespace: swh-cassandra
   name: graph-rpc-20241206-ingress-default
   labels:
     app: graph-rpc-20241206
     endpoint-definition: default
   annotations:
     nginx.ingress.kubernetes.io/client-body-buffer-size: 128K
     nginx.ingress.kubernetes.io/proxy-body-size: 4G
     nginx.ingress.kubernetes.io/proxy-buffering: "on"
     nginx.ingress.kubernetes.io/service-upstream: "true"
     nginx.ingress.kubernetes.io/whitelist-source-range: 10.42.0.0/16,10.43.0.0/16,127.0.0.0/8,192.168.100.0/24,192.168.100.29/32,192.168.101.0/24,192.168.200.0/22,192.168.50.0/24
@@ -29818,20 +30307,48 @@
     http:
       paths:
       - path: /
         pathType: Prefix
         backend:
           service:
             name: graph-rpc-20241206
             port:
               number: 5009
 ---
+# Source: swh/templates/graph/ingress.yaml
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  namespace: swh-cassandra
+  name: graph-rpc-20241206-02-ingress-default
+  labels:
+    app: graph-rpc-20241206-02
+    endpoint-definition: default
+  annotations:
+    nginx.ingress.kubernetes.io/client-body-buffer-size: 128K
+    nginx.ingress.kubernetes.io/proxy-body-size: 4G
+    nginx.ingress.kubernetes.io/proxy-buffering: "on"
+    nginx.ingress.kubernetes.io/service-upstream: "true"
+    nginx.ingress.kubernetes.io/whitelist-source-range: 10.42.0.0/16,10.43.0.0/16,127.0.0.0/8,192.168.100.0/24,192.168.100.29/32,192.168.101.0/24,192.168.200.0/22,192.168.50.0/24
+spec:
+  rules:
+  - host: graph-rpc-20241206-02-ingress
+    http:
+      paths:
+      - path: /
+        pathType: Prefix
+        backend:
+          service:
+            name: graph-rpc-20241206-02
+            port:
+              number: 5009
+---
 # Source: swh/templates/graphql/ingress.yaml
 apiVersion: networking.k8s.io/v1
 kind: Ingress
 metadata:
   namespace: swh-cassandra
   name: graphql-archive-ingress-default
   labels:
     app: graphql-archive
     endpoint-definition: default
   annotations:

Refs. swh/infra/sysadm-environment#5543 (closed)

Edited by Antoine R. Dumont

Merge request reports

Loading