ingress/single-cluster/ingress-custom-default-backend/ingress-custom-default-backend.yaml (108 lines of code) (raw):

# Copyright 2023 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: foo-internal annotations: kubernetes.io/ingress.class: "gce-internal" spec: defaultBackend: service: name: default-be port: number: 80 rules: - http: paths: - path: /foo pathType: Prefix backend: service: name: foo port: number: 80 --- apiVersion: v1 kind: Service metadata: name: foo annotations: cloud.google.com/neg: '{"ingress": true}' spec: ports: - port: 80 targetPort: 8080 name: http selector: app: foo type: ClusterIP --- apiVersion: v1 kind: Service metadata: name: default-be annotations: cloud.google.com/neg: '{"ingress": true}' spec: ports: - port: 80 targetPort: 8080 name: http selector: app: default-be type: ClusterIP --- apiVersion: apps/v1 kind: Deployment metadata: name: foo spec: replicas: 3 selector: matchLabels: app: foo template: metadata: labels: app: foo spec: containers: - name: whereami image: us-docker.pkg.dev/google-samples/containers/gke/whereami:v1.2.19 ports: - name: http containerPort: 8080 readinessProbe: httpGet: path: /healthz port: 8080 scheme: HTTP initialDelaySeconds: 5 timeoutSeconds: 1 --- apiVersion: apps/v1 kind: Deployment metadata: name: default-be spec: replicas: 3 selector: matchLabels: app: default-be template: metadata: labels: app: default-be spec: containers: - name: whereami image: us-docker.pkg.dev/google-samples/containers/gke/whereami:v1.2.19 ports: - name: http containerPort: 8080 readinessProbe: httpGet: path: /healthz port: 8080 scheme: HTTP initialDelaySeconds: 5 timeoutSeconds: 1