ReplicaSets
ReplicaSets
ReplicaSet udržuje běžet N kopií podu. To je celá jeho práce.
graph LR
RS[ReplicaSet replicas=3] --> P1[Pod]
RS --> P2[Pod]
RS --> P3[Pod]
P2 -.uzel spadne.-> X((pryč))
RS -->|reconcile| P4[nový Pod]
Smyčka se nikdy nezastaví: spočítej pody odpovídající selektoru, porovnej se
spec.replicas, rozdíl dotvoř nebo smaž. Samoléčení a škálování je tentýž
mechanismus.
spec:
replicas: 3
selector:
matchLabels:
app: web
template:
metadata:
labels:
app: web # musí odpovídat selektoru
Pody váže selektor, ne jméno: volný pod s odpovídajícím labelem bude adoptován a započítán.
ReplicaSet neumí rollout – změna šablony s běžícími pody nic neudělá. Přesně tenhle chybějící kus doplňuje Deployment, a proto ReplicaSety nepíšete ručně. Čtete je, když se rollout zasekne.