Junior
Čo viete o Kontrolóre replikácie?
sobes.tech AI
Odpoveď od AI
Kontrolér replikácie (RC) je zastaraný zdroj v Kubernetes, ktorý zabezpečuje garantovaný počet podov s určitým šablónom v akomkoľvek momente. Spravuje životný cyklus podov, automaticky ich reštartuje pri chybách a vytvára nové pody podľa potreby na udržanie požadovaného počtu replík.
Hlavné funkcie a obmedzenia RC:
- Udržiavanie požadovaného počtu replík: Zabezpečuje, že vždy beží zadaný počet podov.
- Samouzdravovanie: Reštartuje alebo vytvára pody v prípade ich odstránenia, chyby alebo pádu uzla.
- Škálovanie: Umožňuje manuálne zvýšiť alebo znížiť počet replík.
- Aktualizácia: Neposkytuje zabudované stratégie pre "bezproblémové" aktualizácie podov (napríklad Rolling Update). Na to sú potrebné ďalšie mechanizmy alebo orchestrácia.
- Zastaralé: Nahradené funkčnejším a flexibilnejším zdrojom — Deployment.
Deployment používa ReplicaSet (nástupcu RC s rozšírenými možnosťami selektorov) na správu podov a pridáva funkcie ako:
- Stratégie aktualizácie (Rolling Update, Recreate).
- Návrat k predchádzajúcej verzii.
- Pozastavenie a pokračovanie nasadenia.
Príklad manifestu RC:
apiVersion: v1
kind: ReplicationController
metadata:
name: myapp-rc
spec:
replicas: 3 # Požadovaný počet podov
selector:
app: myapp # Selektor na nájdenie podov spravovaných RC
template: # Šablóna na vytváranie nových podov
metadata:
labels:
app: myapp
spec:
containers:
- name: myapp-container
image: nginx:latest # Obraz kontajnera
ports:
- containerPort: 80
Hoci je zastaraný, pochopenie RC je dôležité pre pochopenie vývoja zdrojov na správu podov v Kubernetes a princípov fungovania ReplicaSet a Deployment, ktoré ho nahradili. Pre nové nasadenia sa odporúča používať Deployment namiesto Kontroléra replikácie.