-
Notifications
You must be signed in to change notification settings - Fork 11
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
Audit events have node IP address as source address for requests #186
Comments
The apiserver SNI feature with its istio gateway moves the problem from the apiserver service (which is now internal) to the We still need the original client address for the audit log eventually. Gardener's documentation says it is possible to use a self-deployed istio instead of using the Gardener managed istio, but do we want to do this? |
Did we ask some people from the Gardener community in the past on how they deal with this? As the problem originates from the kubeproxy, I assume that running Calico or another CNI like Cilium in "kubeproxy-free" mode resolves the issue as a whole. It's probably hard to setup and change will be disruptive, but it generally fits to our environment and also from the network / performance perspective it seems to be superior: |
This has nothing to do with calico or CNI.
|
According to the Cilium documentation it sounds to me like
(source already mentioned above) As far as I know, the I am gonna need to read a bit more or experiment with it first... |
Audit events from the kube-apiserver contain a field for the source IP that the requests came from. Example:
Unfortunately the
"sourceIPs":["10.67.48.2"]
is the node IP address of one of the nodes in the seed cluster. This seems to be the correct behaviour since the Apiserver is is exposed as service of typloadBalancer
withexternalTrafficPolicy: Cluster
.From an audit point of view this is not ideal because it hides the real source address from which an event originated.
Changing the
externalTrafficPolicy
of thekube-apiserver
service manually toLocal
fixes this temporarily, until the service get reconciled again. Example audit event:This seemed to have no ill effect on the cluster during the short time until the policy was reset, so I suggest we set the
externalTrafficPolicy
of thekube-apiserver
toLocal
in ths extension provider.The text was updated successfully, but these errors were encountered: