Skip to content

Add support for multiple gateways #380

@NomadXD

Description

@NomadXD

Description:
I want to have several gateways(envoy proxies) under one envoy gateway and use parentRef in the HttpRoute to decide on which gateway the HttpRoute should get deployed. I tried the above scenario with the v0.2.0-rc1 and couldn't make it work.

Steps I followed:

  1. Followed the quick start guide and deployed 1 EG, 1 gateway, httpbin and 1 HttpRoute and verified the functionality. It works as expected.
  2. Deployed a second gateway using the following CRD using kubectl apply -f gateway.yaml.
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: Gateway
metadata:
  name: egtest
spec:
  gatewayClassName: eg
  listeners:
    - name: http
      protocol: HTTP
      port: 8080

I'm getting the following error in envoy gateway container logs.

2022-09-13T07:05:50.939Z	ERROR	runner/runner.go:95	unable to validate infra ir, skipped sending it	{"runner": "gateway-api", "error": "listener ports field required", "errorCauses": [{"error": "listener ports field required", "errorCauses": [{"error": "listener ports field required"}]}]}
github.com/envoyproxy/gateway/internal/gatewayapi/runner.(*Runner).subscribeAndTranslate
	/home/runner/work/gateway/gateway/internal/gatewayapi/runner/runner.go:95

It says listener ports field required but I have provided it as you can see here.

Metadata

Metadata

Assignees

Labels

kind/bugSomething isn't workingkind/enhancementNew feature or requestrelease-noteIndicates a required release note

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions