Vytváření sad replik
Platí pro: AKS v Azure Stack HCI 22H2, AKS na Windows Serveru
Tento článek popisuje, jak vytvářet, škálovat a odstraňovat sady replik v AKS povolené službou Azure Arc. Sady replik se používají k zajištění toho, aby v daném okamžiku běžela stabilní sada podů replik.
Přehled sad replik
ReplicaSet je proces, který spouští více instancí podu a udržuje zadaný počet podů konstantní. Zajišťuje, že je v daném okamžiku spuštěná stabilní sada podů replik, což zaručuje dostupný zadaný počet identických podů.
Když pod selže, ReplicaSet vyvolá novou instanci podu a vertikálně navýšit kapacitu, když spuštěné instance dosáhnou zadaného počtu. Naopak vertikální snížení kapacity nebo odstranění podů při vytvoření instance se stejným popiskem.
Vytvoření sady replik
kubectl create
K vytvoření sad replik použijte příkazy a kubectl apply
. Následující příklad vytvoří ReplicaSet pomocí souboru YAML:
kubectl apply –f nginx_replicaset.yaml
Funkce konfiguračního souboru ReplicaSet se zobrazují ve formátu YAML:
apiVersion: apps/v1
kind: ReplicaSet
metadata:
name: web
labels:
env: dev
role: web
spec:
replicas: 4
selector:
matchlabels:
role: web
template:
metadata:
labels:
role: web
spec:
containers:
-name: nginx
image: nginx
Po vytvoření sady replik můžete stav zobrazit spuštěním následujícího příkazu:
kubectl get rs
Můžete odebrat, ale ne odstranit pod, který ReplicaSet spravuje, změnou jeho popisku pomocí kubectl edit
příkazu . Pokud například spustíte příkaz kubectl edit pods 7677-69h5b
, můžete po otevření konfiguračního souboru změnit popisek podu.
Škálování sady replik
Existují dva způsoby, jak změnit počet podů, které sada replik spravuje.
Upravte konfiguraci kontroleru pomocí následujícího příkazu:
kubectl edit rs <ReplicaSet_NAME>
Pomocí následujícího příkazu přímo zvyšte nebo snižte počet:
kubectl scale –replicas=2 rs <ReplicaSet_NAME>
Při úpravách souboru manifestu můžete stávající konfiguraci nahradit aktualizovanou konfigurací:
kubectl replace –f nginx_replicaset.yaml
Pokud chcete zobrazit stav sady replik, spusťte příkaz kubectl get rs <ReplicaSet_NAME>
.
Automatické škálování je také možnost u sad replik s využitím kubectl autoscale rs web –max=5
. Pomocí automatického škálování můžete přizpůsobit počet podů podle zatížení procesoru uzlu.
Odstranění sady replik
Stejně jako u jiných objektů Kubernetes, jako jsou daemonSets, můžete replikační sady odstranit pomocí kubectl delete
příkazu . Můžete například použít následující příkazy:
Pokud chcete odstranit sadu replik pomocí názvu ReplicaSet, spusťte následující příkaz:
kubectl delete rs <ReplicaSet_NAME>
Pokud chcete odstranit replicaSet s použitím jejího názvu souboru, spusťte následující příkaz:
kubectl delete –f nginx_replicaset.yaml
Předchozí příkazy odstraní Sadu replik a všechny pody, které spravuje. Pokud chcete odstranit pouze prostředek ReplicaSet a ponechat pody bez vlastníka, musíte je odstranit ručně. Pokud chcete sadu ReplicaSet odstranit ručně, spusťte následující příkaz:
kubectl delete rs <ReplicaSet_NAME> --cascade=false