Skip to content

Extensible Service policy and configuration #611

@mark-church

Description

@mark-church

This proposal draws inspiration from our current TLS design and offers a uniform method of attaching arbitrary and implementation-specific configuration to the Gateway API core resources.

It aims to achieve three different goals that I think are very important for a standard API spec. This is based on the assumptions that 1) every implementation will have proprietary functionality that's also unique and 2) we can't predict what this functionality is or where in the load balancing hierarchy it should be configured. As a result, to make Gateway a standard that can actually replace proprietary APIs, it must have a robust way of accomplishing the following three things:

  1. Provide a standard way of extending arbitrary and proprietary configuration and policy on top of the core resources of the Gateway API
  2. Provide the ability to configure (arbitrary and proprietary) policy across different scopes of the load balancing infrastructure, from GatewayClass, to Gateway, to HTTPRoute, to Services, to individual workloads.
  3. Provide a way for policy to compose: policy should be able to be configurable simultaneously at multiple scopes (both broad and granular) by non-coordinating users and that policy should compose together to a single effective policy for a given service.

This is just a proposal so I'm happy to take any suggestions on what should change or how we can make it better. cc @bowei @thockin @robscott @hbagdi @youngnick @danehans @howardjohn

Metadata

Metadata

Assignees

Labels

kind/featureCategorizes issue or PR as related to a new feature.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions