Skip to content

Cached client connections might be using an invalid socket if the provider moved its socket to another location after connection is cached #1821

@dnlopes

Description

@dnlopes

What steps did you take and what happened:
I'm running csi-driver 1.4.2, which attempts to connect to providers at /var/run as well as /etc/kubernetes. On the last release of provider-aws, the provider moved from the legacy /etc/kubernetes to /var/run.

The issue is that, during upgrades, the csi-driver might have already cached aws clients pointing to /etc/kubernetes, and after updating the provider-aws, the cached client will be unusable because the provider is now listening on /var/run. This is an issue because the only way to recover is to restart the DaemonSet, so clients are created again from scratch (now pointing to /var/run).

What did you expect to happen:
When a client connection fails with "socket not found", the client should be discarded and recreated from scratch.

Anything else you would like to add:
This analyses was done in the context of this open issue on provider-aws.

Which provider are you using:
AWS

Environment:

  • Secrets Store CSI Driver version: 1.4.2
  • Provider AWS version: bumping from 0.3.4 to 1.0.1
  • Kubernetes version: (use kubectl version): v1.30.11-eks-bcf3d70

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/supportCategorizes issue or PR as a support question.triage/acceptedIndicates an issue or PR is ready to be actively worked on.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions