Skip to content

Handle seccomp agent upgrades without disruption to running containers #8

@rata

Description

@rata

Ideal future situation
Roll a new version of the agent without impact on any running container on the nodes.

Implementation options
Some random ideas that come to mind:

  • Configure the daemonset to create the new pod before destroying the old one. The new pod can communicate and receive the fds from the old. This of course doesn't help with crashes, though.
  • Have a small binary that holds the fds and pass them to the agent when it starts. This will handle just fine if the agent crashes or needs to be restarted. This binary should probably be another daemonset. Need to decide how the flow would look like (this binary receives from the socket and passes fds to the agent? So it needs to communicate with the agent not only on startup? Can the fds be received by both, the agent and the small binary, so the agent only queries the small binary on startup?)
  • Investigate if CRIU has any interesting idea we can use here: https://criu.org
  • Other resources that might be useful

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions