You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With every registration request, the Sidecar performs a version check against the Graylog server.
The result then decides which kind of config assignment is expected.
Servers >= 5.0 return a type that supports multiple configs per backend. (see #441)
As a precaution, a fallback result to version 4.0.0 was added in case the version
could not be parsed from the server.
This turns out to be problematic in the following scenario.
If a Sidecar is talking to a load balancer, which sits in front of multiple
Graylog nodes, the following race condition can happen:
one node in the graylog cluster is being shut down.
the sidecar performs the version api request, but gets an error from the LB, because the request was redirected
to the node that is being terminated.
The sidecar uses the fallback to version 4.0.0 and requests a config update.
If we fail to read the server version from Graylog,
stop using a fallback to 4.0.0 and retry the request
instead.
In scenarios with multiple Graylog nodes behind a load balancer,
this can lead to the sidecar temporarly stopping all collectors.
Fixes#481
If we fail to read the server version from Graylog,
stop using a fallback to 4.0.0 and retry the request
instead.
In scenarios with multiple Graylog nodes behind a load balancer,
this can lead to the sidecar temporarly stopping all collectors.
Fixes#481
* Abort request on missing Graylog server version
If we fail to read the server version from Graylog,
stop using a fallback to 4.0.0 and retry the request
instead.
In scenarios with multiple Graylog nodes behind a load balancer,
this can lead to the sidecar temporarly stopping all collectors.
Fixes#481
* dont try to json parse arbitrary http error responses
Problem description
With every registration request, the Sidecar performs a version check against the Graylog server.
The result then decides which kind of config assignment is expected.
Servers >= 5.0 return a type that supports multiple configs per backend. (see #441)
As a precaution, a fallback result to version 4.0.0 was added in case the version
could not be parsed from the server.
This turns out to be problematic in the following scenario.
If a Sidecar is talking to a load balancer, which sits in front of multiple
Graylog nodes, the following race condition can happen:
to the node that is being terminated.
see https://github.com/Graylog2/collector-sidecar/blob/master/api/graylog.go#L293
The text was updated successfully, but these errors were encountered: