Skip to content

Commit 2b064a4

Browse files
committed
address derek's question about state storage
Signed-off-by: Mike Brown <[email protected]>
1 parent 831c45b commit 2b064a4

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

keps/sig-node/2535-ensure-secret-pulled-images/README.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,6 @@ used is not present, thus enforcing authentication / re-authentication.
143143
User with multiple tenants will be able to support all image pull policies without
144144
concern that one tenant will gain access to an image that they don't have rights to.
145145

146-
147146
#### Story 2
148147
User will will no longer have to inject the Pull Always Image Pull Policy to
149148
ensure all tenants have rights to the images that are already present on a host.
@@ -170,7 +169,10 @@ container runtime cache. To mitigate, images can be garbage collected at boot.
170169

171170
## Design Details
172171

173-
See PR
172+
Kubelet will track, in memory, a hash map for the credentials that were successfully used to pull an image. The hash map
173+
will not be persisted to disk, in alpha. For alpha explicitly, we will not reuse or add other state manager concepts to kubelet.
174+
175+
See PR for detailed design / behavior documentation.
174176

175177
### Test Plan
176178

@@ -341,6 +343,8 @@ Why should this KEP _not_ be implemented. N/A
341343
- Make the behavior change enabled by default by changing the feature gate to true by default instead of false by default.
342344
- Discussions went back and forth on whether this should go directly to GA as a fix or alpha as a feature gate. It seems this should be the default security posture for pullIfNotPresent as it is not clear to admins/users that an image pulled by a first pod with authentication can be used by a second pod without authentication. The performance cost should be minimal as only the manifest needs to be re-authenticated. But after further review and discussion with MrunalP we'll go ahead and have a kubelet feature gate with default off for alpha in v1.22.
343345
- Set the flag at some other scope e.g. pod spec (doing it at the pod spec was rejected by SIG-Node).
346+
- For beta/ga we may revisit/replace the in memory hash map in kubelet design, with an extention to the CRI API for having the container runtime
347+
ensure the image instead of kubelet.
344348

345349
## Infrastructure Needed [optional]
346350

keps/sig-node/2535-ensure-secret-pulled-images/kep.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,5 +27,5 @@ feature-gates:
2727
- name: KubeletEnsureSecretPulledImages
2828
components:
2929
- kubelet
30-
disable-supported: true (disabled by default)
30+
disable-supported: true
3131
metrics:

0 commit comments

Comments
 (0)