-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Healthcheck Plugin #112
Comments
The same problem will happen with a billing plugin: only one node needs to execute the billing functionality. |
What about pinging from a random node every time? |
Since each node is not aware of each other, there is no coordination mechanism between nodes. This is because we decided to keep cluster awareness off from this early releases, but to have a better system we would need to implement some sort of cluster awareness at one point. Usually this can be done with Apache Zookeeper, or Serfdom, or consul.io. Once a plugin is being installed and an async timer is being started to do the health checks, it will run by default on every node. The first implementation of the health check can run on every node, but we need to address cluster awareness sooner than later to fix this and other problems. For example, using features like https://serfdom.io/intro/getting-started/user-events.html will also help us implementing proper invalidations #15 (as opposed to having intermediate Cassandra tables for coordination). |
Personally I'd close this and let the service discovery tool of the user's choosing do the health checks unless there's a use case for health checks that isn't closely related to service discovery I'm unaware of https://www.consul.io/docs/agent/http/health.html |
I think all of this is too complex. Architecturally we need to treat each node as a single system whenever possible. No intra-node communications if we can prevent it. With the implementation of the This uses the This obviously uses 'passive' monitoring (based on failed actual requests) as opposed to the initial post above suggesting 'active' monitoring by firing explicit probe-requests. |
Where is the plugin's url? |
@shaowin16 it hasn't been added yet. Probably for 0.11 |
To avoid DDOS and intra-node communications, we can invent a setting that represents a chance of a node to send a healthcheck at the end of a time interval. f.e.: Each node every second generate a random number from 1 to 200. |
Even in that case, if the healthcheck results in a state change, we're back to cross-cluster communications. As an update, healthchecks is actively being worked on at the moment. |
Health checks are scheduled to be released in Kong Community Edition version 0.12 |
since 0.12 is released, closing this. |
### Summary #### bug fixes - **\*:** fix typos and add error check for new_of/dup_of ([#2](fffonion/lua-resty-openssl#2)) [aa6ad47](fffonion/lua-resty-openssl@aa6ad47) #### features - **tests:** add performance test ([#112](fffonion/lua-resty-openssl#112)) [100b4e4](fffonion/lua-resty-openssl@100b4e4) - **x509.store:** add store:check_revocation and add flag to skip check CRL for store:add ([#1](fffonion/lua-resty-openssl#1)) [1a5a4c8](fffonion/lua-resty-openssl@1a5a4c8) Signed-off-by: Aapo Talvensaari <[email protected]>
### Summary #### bug fixes - **\*:** fix typos and add error check for new_of/dup_of ([#2](fffonion/lua-resty-openssl#2)) [aa6ad47](fffonion/lua-resty-openssl@aa6ad47) #### features - **tests:** add performance test ([#112](fffonion/lua-resty-openssl#112)) [100b4e4](fffonion/lua-resty-openssl@100b4e4) - **x509.store:** add store:check_revocation and add flag to skip check CRL for store:add ([#1](fffonion/lua-resty-openssl#1)) [1a5a4c8](fffonion/lua-resty-openssl@1a5a4c8) Signed-off-by: Aapo Talvensaari <[email protected]>
### Summary #### [0.13.0] - 2024-03-28 ##### bug fixes - **autossl:** log the errors on the list certificates request ([#110](fffonion/lua-resty-acme#110)) [6c9760f](fffonion/lua-resty-acme@6c9760f) #### features - **autossl:** add option to delete none whitelisted domains in certificate renewal ([#112](fffonion/lua-resty-acme#112)) [1bbf39c](fffonion/lua-resty-acme@1bbf39c) Signed-off-by: Aapo Talvensaari <[email protected]>
### Summary #### [0.13.0] - 2024-03-28 ##### bug fixes - **autossl:** log the errors on the list certificates request ([#110](fffonion/lua-resty-acme#110)) [6c9760f](fffonion/lua-resty-acme@6c9760f) #### features - **autossl:** add option to delete none whitelisted domains in certificate renewal ([#112](fffonion/lua-resty-acme#112)) [1bbf39c](fffonion/lua-resty-acme@1bbf39c) Signed-off-by: Aapo Talvensaari <[email protected]>
- **autossl:** log the errors on the list certificates request ([#110](fffonion/lua-resty-acme#110)) [6c9760f](fffonion/lua-resty-acme@6c9760f) - **autossl:** add option to delete none whitelisted domains in certificate renewal ([#112](fffonion/lua-resty-acme#112)) [1bbf39c](fffonion/lua-resty-acme@1bbf39c) Cherry-picked from #12909 KAG-4330 Signed-off-by: Aapo Talvensaari <[email protected]>
Provide an healthcheck plugin that can do
tcp
orhttp
healthchecks on one or more API.Here is a few problems:
The text was updated successfully, but these errors were encountered: