Vytváření sad replik v hybridní službě AKS

Platí pro: AKS ve Službě Azure Stack HCI, AKS na Windows Serveru

Tento článek popisuje, jak vytvářet, škálovat a odstraňovat replikovací sady v hybridní službě AKS, které 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, aby v daném okamžiku běžela 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 při vytvoření instance se stejným popiskem vertikálně snižuje kapacitu nebo odstraňuje pody.

Vytvoření sady replik

kubectl create Pomocí příkazů a kubectl apply vytvořte repliky. 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í ReplicaSet můžete stav zobrazit spuštěním následujícího příkazu:

kubectl get rs

Pod, který ReplicaSet spravuje, můžete odebrat, ale ne odstranit 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é replicaSet 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 číslo:

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 ReplicaSet, spusťte příkaz kubectl get rs <ReplicaSet_NAME>.

Automatické škálování je také možnost s replikovacími sadami pomocí 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, například DaemonSets, můžete replicaSets odstranit pomocí příkazu kubectl delete . Můžete například použít následující příkazy:

  • Pokud chcete odstranit ReplicaSet pomocí názvu ReplicaSet, spusťte následující příkaz:

    kubectl delete rs <ReplicaSet_NAME>
    
  • Pokud chcete odstranit ReplicaSet pomocí jejího názvu souboru, spusťte následující příkaz:

    kubectl delete –f nginx_replicaset.yaml
    
  • Předchozí příkazy odstraní sadu ReplicaSet a všechny pody, které spravuje. Pokud chcete odstranit jenom prostředek ReplicaSet a ponechat pody bez vlastníka, musíte je odstranit ručně. Pokud chcete ručně odstranit ReplicaSet, spusťte následující příkaz:

    kubectl delete rs <ReplicaSet_NAME> --cascade=false
    

Další kroky