Skip to content

Use Recreate deployment strategy for components with RWO PVCs #16

Description

@jensens

Problem

Deployments with RWO (ReadWriteOnce) PersistentVolumeClaims use the default RollingUpdate strategy. During rollouts, the new pod cannot mount the PVC while the old pod still holds it, causing Multi-Attach errors and pods stuck in ContainerCreating.

Observed during the v0.2.17 rollout: postfix and webmail pods were stuck for 35+ minutes until the old pods were manually deleted.

Affected Components

  • PostfixConstruct — has RWO PVC for queue/data
  • WebmailConstruct — has RWO PVC for data
  • AdminConstruct — has RWO PVC for data
  • RspamdConstruct — has RWO PVC for data

Already Fixed

  • DovecotConstruct — already uses kplus.DeploymentStrategy.recreate()

Proposed Fix

Set strategy: kplus.DeploymentStrategy.recreate() on all deployments that mount RWO PVCs, matching the pattern already used by DovecotConstruct.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions