mirror of https://github.com/k3s-io/k3s
![]() Automatic merge from submit-queue (batch tested with PRs 64575, 65120, 65463, 65434, 65522). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Add support for Linux Abstract Socket Namespace for KMS provider plugin. **What this PR does / why we need it**: Currently, kube-apiserver and kms-plugin interact via a Unix Domain Socket. The current implementation, assumes that such a Domain Socket is supported via a socket file, which is in turn is supported via a volume shared between kube-apiserver and kms-plugin containers. However, Linux supports Abstract Socket Namespace, where a socket does not need to be back-up by a file. In golang, such sockets are created by prefixing a socket's name with @. Benefits of using Linux Abstract Socket Namespace: 1. Don't need to worry about possible collisions with existing files. 2. Simpler configuration of master's manifest - no need to setup a shared volume between kube-apiserver and kms-plugin containers. 3. Don't need to remember to unlink the socket when KMS Plugin shuts down. 4. Creates a possibility to run KMS Plugin without access to file system. This PR adds the ability to define a KMS endpoint as: unix:///@kms-provider.sock **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes # **Special notes for your reviewer**: **Release note**: ```release-note NONE ``` |
||
---|---|---|
.. | ||
apiserver | ||
auth | ||
benchmark/jsonify | ||
client | ||
configmap | ||
daemonset | ||
defaulttolerationseconds | ||
deployment | ||
etcd | ||
evictions | ||
examples | ||
framework | ||
garbagecollector | ||
ipamperf | ||
master | ||
metrics | ||
objectmeta | ||
openshift | ||
pods | ||
quota | ||
replicaset | ||
replicationcontroller | ||
scale | ||
scheduler | ||
scheduler_perf | ||
secrets | ||
serviceaccount | ||
statefulset | ||
storageclasses | ||
tls | ||
ttlcontroller | ||
util | ||
volume | ||
BUILD | ||
benchmark-controller.json | ||
doc.go | ||
utils.go |