Pin puppet master to a single Recreate replica #341
Reference in New Issue
Block a user
Delete Branch "benvin/puppet-master-single"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
The puppet MASTER is the singleton CA/master. A second master, even transiently during a rolling update, races on CA/cert signing and shared state (the CA lives on a shared PVC mounted by every master pod). The master was previously driven by an HPA with
minReplicas: 2,maxReplicas: 5and aRollingUpdatestrategy, so 2-5 masters could coexist normally and a rollout would briefly run old+new masters against the same CA data — a latent CA-corruption/split-brain bug. Recreate guarantees the old pod terminates before the new one starts, so two masters never coexist.Changes
puppetserver-masterspec.replicas: 1andspec.strategy.type: Recreate(drops RollingUpdate).puppetserver-masters-autoscalerHPA and its kustomization entry, which forced 2-5 master replicas and would otherwise overridereplicas: 1.puppetserver-master-vpanote to reflect the pinned-singleton, no-HPA state (VPA staysupdateMode: Off, recommendation-only).The compiler (
puppetserver-compiler) remains the horizontally-scalable tier with its own HPA — untouched. puppetdb/puppetboard untouched.https://claude.ai/code/session_01JUoARVdmhxKQHyyyp1pxeT