K8s lusky naplánovat jak v místě a on-demand instance v EKS

0

Otázka

plánujeme zavedení AWS instance spot v produkci ( non-prod běží s spot už ). V zájmu dosažení HA jsme běží HPA s minimální repliky 2 pro všechny kritické nasazení. Protože instance spot chování chceme spustit on-demand instance a jeden modul by měl být spuštěn na on-demand instance pro stejný

Otázka:

Je tam tak jako tak můžu rozdělit lusky, aby si spustit jeden modul pro nasazení v on-demand a všechny ostatní moduly (další, protože minimum je 2, a pokud HPA zvýšit lusky ) stejné nasazení v místě případech.

Jsme již používáte nodeaAffinity a podAntiAffinity protože máme více uzlin skupin z různých důvodů. Níže je úryvek.

        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
            - matchExpressions:
              - key: category
                operator: In
                values:
                - <some value>
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: <lable key>
                operator: In
                values: 
                - <lable value>
            topologyKey: "kubernetes.io/hostname"
    
amazon-eks kubernetes spot-instances
2021-11-19 07:44:09
1

Nejlepší odpověď

1

Krátká odpověď je No. Žádný takový způsob, jak definovat za repliku. Jak jste již pomocí podAntiAffinity, jen přidáním stejné pod štítky, můžete zajistit žádné dvě repliky zůstává na stejném hostiteli (pokud to není to, co se již dělá). A pak použít spotInterruption Handler vypustit a odložit bez náhlých výpadků v místě přerušení.

2021-11-19 20:02:22

Díky @narain pro info, ve skutečnosti jsme již pomocí spotinterruption. Jelikož neexistuje rovný přístup, myšlení některých hack. Můžeme mít dva nasazení s dvěma různými názvy, které mají stejnou sadu štítků pro nasazení ( app=myapp) a služby mají na výběr stejné štítky (app =myapp), bude snažit tento není si jistý, zda to funguje, nebo ne.
Anil Kumar

Ahoj Anil, Ano, to bude fungovat. Ale vázání balíček nasazení založené na infrastrukturu požadavek představí spojky. Ale pokud to funguje pro vás, pak v pořádku.
Narain

díky @narain za komentář. Trochu zmást o tažné, Můžete mi, prosím, dejte mi vědět trochu víc o tom, jestli nějaký doktor/odkaz bude více ceněn.
Anil Kumar

Ahoj Anil, Vlastně žádný konkrétní dokument. Já jen říkám, že pojmenování nasazení jiný a používat stejné štítky pro přímý provoz. A všechny tyto sladit mezi spot a on-demand instance je druh spojovacího zařízení cloud setup vs k8s config zarovnání, což je druh spojovacího IMHO. Ale jak jsem řekl, pokud jste v Pořádku a váš tým je dobře vědom toho, pak v pořádku.
Narain

Jistě, mám to Narain. Díky za heads-up. Bude kontrolovat dva nasazení s stejné označení v non-prod pak budeme aktualizovat zde. Díky agian.
Anil Kumar

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................