Am un cluster k3s cu mai multe noduri, să spunem 3 noduri. Pe fiecare nod, am mai multe pod-uri de implementat. Este o „implementare statică”, ceea ce înseamnă că vreau să implementez fiecare pod pe un anumit nod. Nu vreau să-l las pe k3s să o facă automat.
De exemplu:
Node_1:
pod_a
pod_b
pod_c
Node_2:
pod_d
pod_e
pod_f
Node_3:
pod_h
pod_i
pod_g
Pentru a realiza acest lucru, folosesc etichete. Etichet fiecare nod cu etichete specifice și apoi specific eticheta în yaml
fișier de implementare:
De exemplu, ceva de genul:
apiVersion: v1
fel: Nod
metadate:
nume: nodul 3
etichete:
db: „adevărat”
Si yaml
fișiere de implementare, de exemplu pentru db:
apiVersion: apps/v1
fel: StatefulSet
metadate:
nume: db
spatiu de nume: implicit
specificație:
specificație:
nodeSelector:
db: „adevărat”
Deci, în mod normal, pod db
ar trebui desfășurat pe Nodul 3
. Dar uneori, nu este cazul. Când fac o redistribuire, pod-ul se redistribuie pe un alt Nod și nu înțeleg de ce și cum să-l mut înapoi la nodul corect.
Acest lucru este destul de enervant, deoarece pentru unele poduri critice, am date montate pe gazdă și dacă podul nu este implementat corect aplicația mea poate eșua.
Cum să mă asigur că-mi găsesc mereu se implementeaza corect? Și de ce uneori nu reușește să se implementeze corect? Mulțumesc