Skip to content

[infra] Storage review: RabbitMQ PVC size, emptyDir sizeLimit, backup annotations #33

Description

@henzigo

Context

  • **** RabbitMQ PVC default is 1 Gi — a lagging consumer fills it with a few tens of
    thousands of messages, then RabbitMQ starts rejecting publishes.
  • **** the webserver source-codes emptyDir has no sizeLimit — a runaway write can
    fill the node disk.
  • **** no backup annotations for the RabbitMQ volume.
  • **** Redis being intentionally ephemeral is undocumented in the chart.

Proposal

  • raise the rabbitmq.persistence.size default to 10Gi + document that PVC expansion
    support depends on the storage class (nfs-client usually allows it) and that existing
    PVCs are NOT resized by helm upgrade (volumeClaimTemplates are immutable — manual PVC edit)
  • add sizeLimit to the source-codes emptyDir (values-driven, default e.g. 1Gi)
  • optional rabbitmq.persistence.backupAnnotations passthrough (e.g. Velero
    backup.velero.io/backup-volumes: rabbitmq-data)
  • comment in redis values/templates documenting the intentional ephemerality
    (pairs with the [security] Move sensitive values out of ConfigMaps and pod specs into Secrets #31 decision)

Tasks

  • PVC size default + docs on expansion
  • emptyDir sizeLimit (values key on the webserver component)
  • Backup annotations passthrough
  • Redis ephemerality note
  • Golden snapshots, deviations entry (PVC default change affects only NEW installs)

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

    area/app-chartshopsys-app chart (workloads, ingresses, secrets, hooks)area/infra-chartshopsys-infra chart (Redis, RabbitMQ, RBAC)behavior-changechanges rendered manifests - regenerate golden snapshots + update deviations docenhancementNew feature or requestpriority/medium

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions