Skip to content

[Proposal] Support single RPC operations per Pod #165

@jipperinbham

Description

@jipperinbham

Currently, the NRI plugin relies on ttrpc for communication for containerd <-> plugin(s) which imposes a single RPC at a time via multiple sync.Mutex locks in containerd and pkd/adaptation. A naive attempt was made to remove the sync.Mutex in containerd thinking it was only to protect access to the map structure but it was highlighted it also was there for guaranteeing 1 RPC at a time with NRI.

What we're observing after onboarding more and more workloads to our new NRI based dataplane is the NRI Lock is causing higher than desired contention with Pod operations.

NRI Lock P99
Image

From the above, it's clear the current limitation is going to be an issue for the team trying to manage Pod start SLIs. I can imagine it's not a straightforward change but we'd love to start the conversation.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions