fanout.yaml --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-fanout annotations: nginx.ingress.kubernetes.io/rewrite-target: / spec: rules: - host: foo.bar.com http: paths: - path: /path1 backend: service: name: testsvc1 port: number: 4201 pathType: exact - path: /path2 backend: service: name: testsvc2 port: number: 4202 pathType: exact ingress-class.yaml --- apiVersion: networking.k8s.io/v1 kind: IngressClass metadata: name: external-lb spec: controller: example.com/ingress-controller parameters: apiGroup: k8s.example.com/v1alpha kind: IngressParameters name: external-lb ingress.yaml --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: test-ingress spec: defaultBackend: service: name: testsvc port: number: 80 nohost.yaml --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: name-virtual-host-ingress spec: rules: - host: first.bar.com http: paths: - backend: service: name: testsvc1 port: number: 80 pathType: exact - host: second.foo.com http: paths: - backend: service: name: testsvc2 port: number: 80 pathType: exact # No host supplied here - http: paths: - backend: service: name: testsvc3 port: number: 80 pathType: exact rewrite.yaml --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-rewrite annotations: nginx.ingress.kubernetes.io/rewrite-target: / spec: rules: - http: paths: - path: /rewritepath pathType: Prefix backend: service: name: testsvc port: number: 80 tls.yaml --- apiVersion: v1 kind: Secret metadata: name: ingress-tls-secret data: # Data here as a placeholder - it's just a base64-encoded 'a' tls.crt: YQo= tls.key: YQo= type: kubernetes.io/tls --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: ingress-tls spec: tls: - hosts: - sslexample.foo.com secretName: ingress-tls-secret rules: - host: sslexample.foo.com http: paths: - path: / backend: service: name: testsvc1 port: number: 80 pathType: exact virtualhosting.yaml --- apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: name-virtual-host-ingress spec: rules: - host: foo.bar.com http: paths: - backend: service: name: testsvc1 port: number: 80 pathType: exact - host: bar.foo.com http: paths: - backend: service: name: testsvc2 port: number: 80 pathType: exact See: https://kubernetes.io/docs/concepts/services-networking/ingress/