-
Notifications
You must be signed in to change notification settings - Fork 32
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
Add Cloud Storage FUSE Metadata/Stat cache prefetch from kubernetes. #360
Conversation
2655502
to
c418cf0
Compare
b514089
to
b6c810b
Compare
8296c5e
to
47c84dd
Compare
3fa65bb
to
098d32a
Compare
pkg/webhook/injection.go
Outdated
// Privately Hosted Sidecar Image feature for clusters running with limited internet access. | ||
privateMetadataPrefetchSidecarImage, err := ParseSidecarContainerImage(&pod.Spec, SidecarMetadataPrefetchName) | ||
if err != nil { | ||
klog.Errorf("failed to get privately hosted metadata prefetch image... skipping injection.") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this can be a info or warning since we donot always manually inject containers
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be an error. We only emit this error when we're sure the user provided a custom sidecar image that was invalid.
80906b1
to
713ff01
Compare
b281615
to
c441b09
Compare
c441b09
to
bb70b50
Compare
pkg/webhook/client.go
Outdated
} | ||
|
||
// GetPV returns an error if pvc.Spec.VolumeName is not empty and the associated PV object is not found in the API server. | ||
fetchedPv, err := si.GetPV(pvc.Spec.VolumeName) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we can reuse the same pv variable that we defined in L35
For the new tests added for this feature in generateTestSkip() 1. we need to skip managed driver tests 2. eventually add a min version (based on the expected gke component version) |
220da5e
to
a9d13b6
Compare
@saikat-royc Disabled tests for managed driver and when running on clusters that do not support native sidecar. |
4ff9462
to
588aa4b
Compare
/lgtm |
588aa4b
to
0d0dd42
Compare
0d0dd42
to
ce6fa17
Compare
What type of PR is this?
/kind feature
What this PR does / why we need it:
Prefill stat/metadata cache as pod starts to reduce number of list calls during workload execution.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
Yes, this PR adds a new boolean API field within
volumeAttributes
calledgcsfuseMetadataPrefetchOnMount
.