-
Notifications
You must be signed in to change notification settings - Fork 392
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Override default Envoy Proxy Bootstrap Configuration #31
Comments
Some options, we could provide some or all of these knobs
|
From #24 (comment), I like all EG or all BYO bootstrap. |
Currently, the bootstrap config is managed as a go template rendered by the Infra Manager and referenced as
I suggest extending the // EnvoyProxySpec defines the desired state of EnvoyProxy.
type EnvoyProxySpec struct {
// Bootstrap defines the desired state of the Envoy bootstrap config file.
// If unspecified, default bootstrap config parameters are used.
//
// +optional
Bootstrap *Bootstrap `json:"bootstrap,omitempty"`
}
// Bootstrap defines the desired state of the Envoy bootstrap configuration file.
type Bootstrap struct {
// Xds defines xDS configuration parameters...
// If unspecified, default bootstrap config parameters are used.
//
// +optional
Xds *Xds `json:"xds,omitempty"`
}
// Xds defines desired xDS configuration parameters.
type Xds struct {
// Address defines the address of the xDS server...
// If unspecified, "envoy-gateway" is used.
//
// +optional
Address *XdsAddress `json:"address,omitempty"`
// Port defines the port of the xDS server...
// If unspecified, 18000 is used.
//
// +optional
Port *XdsPortNumber `json:"port,omitempty"`
}
type XdsAddress string
type XdsPortNumber int32 A user would then create the EnvoyProxy CRD and a GatewayClass that references it. For example:
Envoy Gateway will need to add support for A drawback of this approach is that EG manages only one GatewayClass and all Gateways will use the same bootstrap config. |
@danehans I agree with where the Bootstrap content must be specified - within |
@arkodg thanks for providing feedback. The following are a few concerns that come to mind for "... allowing the user to completely specify a new bootstrap spec":
|
I think we should better understand what the (advanced) users would like and what the project can provide. |
I consider ^ a discussion more than a plan. v0.3.0 planning will take place post-KubeCon NA 2022. Let's discuss this issue during planning to try and achieve a concensensouse on the path forward. |
sg @danehans |
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions. |
This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as "help wanted" or "no stalebot". Thank you for your contributions. |
Relates to envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
* Implement Bootstrap API Relates to #31 Signed-off-by: Arko Dasgupta <arko@tetrate.io> * more clarification in comments Signed-off-by: Arko Dasgupta <arko@tetrate.io> * add optional tag Signed-off-by: Arko Dasgupta <arko@tetrate.io> --------- Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Relates to envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Relates to envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
* validation for bootstrap within EnvoyProxy res Relates to #31 Signed-off-by: Arko Dasgupta <arko@tetrate.io> * use embed Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Refactor EnvoyProxy's Validate API If a GatewayClass references a EnvoyProxy resource, ensure that that the GatewayClass status condition is based off the EnvoyProxy validation result Relates to #31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Relates to envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Relates to envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Relates to envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Relates to envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
* Add EnvoyProxy resource validation to `egctl translate` Relates to #31 Signed-off-by: Arko Dasgupta <arko@tetrate.io> * fix logic Signed-off-by: Arko Dasgupta <arko@tetrate.io> * add support for default EnvoyProxy Signed-off-by: Arko Dasgupta <arko@tetrate.io> * lint Signed-off-by: Arko Dasgupta <arko@tetrate.io> * fix yaml Signed-off-by: Arko Dasgupta <arko@tetrate.io> * another test Signed-off-by: Arko Dasgupta <arko@tetrate.io> --------- Signed-off-by: Arko Dasgupta <arko@tetrate.io>
keeping this open until we wrap up docs |
Fixes: envoyproxy#31 Signed-off-by: Arko Dasgupta <arko@tetrate.io>
* Update docs for xds bootstrap Fixes: #31 Signed-off-by: Arko Dasgupta <arko@tetrate.io> * fix envoy proxy doc link Signed-off-by: Arko Dasgupta <arko@tetrate.io> * lint Signed-off-by: Arko Dasgupta <arko@tetrate.io> * lint Signed-off-by: Arko Dasgupta <arko@tetrate.io> * undo Signed-off-by: Arko Dasgupta <arko@tetrate.io> * Update docs/latest/user/egctl.md Co-authored-by: zirain <zirain2009@gmail.com> Signed-off-by: Arko Dasgupta <arkodg@users.noreply.github.com> --------- Signed-off-by: Arko Dasgupta <arko@tetrate.io> Signed-off-by: Arko Dasgupta <arkodg@users.noreply.github.com> Co-authored-by: zirain <zirain2009@gmail.com>
#24 highlights the need for users to override xDS resources configured by
Envoy Gateway. Raising this issue to track how do you express this intent for the Envoy Proxy Bootstrap Config using the Gateway API
here's how popular OSS projects do it
Updated
egctl
subcommand to generate defaultbootstrap
Add EnvoyProxy resource validation toegctl translate
#1281The text was updated successfully, but these errors were encountered: