-
Notifications
You must be signed in to change notification settings - Fork 273
health check: add optional alternative health check port #597
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
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||
|---|---|---|---|---|
|
|
@@ -18,7 +18,15 @@ option (gogoproto.equal_all) = true; | |||
|
|
||||
| // Upstream host identifier. | ||||
| message Endpoint { | ||||
| // The upstream host address. | ||||
| core.Address address = 1; | ||||
|
|
||||
| // [#not-implemented-hide:] Optional alternative health check port. | ||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. How general is this? I'm wondering what other parameters might be configurable at the per-endpoint level, e.g. might we want to health check using TLS and a different cert, etc? Not really advocating to make this more complicated, but would like to make sure we have covered the potential endpoint health check specializations at least at the design level.
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Probably this thread from @codesuki on #envoy-users could be related too?
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. +1 at least from the proto perspective. Can you maybe add a new message such as From a doc perspective, we should make it clear that health checking must be configured at the cluster level for these options to take any effect, etc. |
||||
| // | ||||
| // By default the health check address port of an upstream host is the same as the host's serving | ||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Presumably we're using |
||||
| // address port. This provides an alternative health check port. If set it allows an upstream host | ||||
| // to have different health check address port. The health checker should honor this. | ||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. You can drop the last sentence, seems superfluous. |
||||
| uint32 health_check_port = 2; | ||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think we might eventually want something closer to
oneof without breaking wire compat).
|
||||
| } | ||||
|
|
||||
| // An Endpoint that Envoy can route traffic to. | ||||
|
|
||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we really need each endpoint to have its own alternative health check port, or can this just be specified at cluster level?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some related discussions:
From above threads, I perceived that providing an alternative health check port per endpoint is preferred.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think per-host is likely required due to potentially dynamic ports on the service side. In the cluster general situation it's more verbose, but I don't think we are optimizing for lack of verbosity here so I think it's OK?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SGTM