Puncte:0

Google GCE VM - cum să omorâți mașinile virtuale dacă scriptul de pornire eșuează

drapel ie

Lansăm sarcini de lucru în GCE folosind Managed Instance Groups (MIG), care supraveghează ciclul de viață și starea de sănătate a acestor VM.

Noile VM sunt furnizate cu un script de pornire (bash), care, în rare ocazii, eșuează într-un fel. Cu toate acestea, VM-ul este încă capabil să pornească, să-și lanseze volumul de lucru și să-și treacă controalele de sănătate.

Există vreo setare în GCE / MIG-uri care spune „dacă scriptul de init nu se execută cu succes, omorâți VM și recreați-l”?

Aș putea închide dacă o eroare este blocată, de exemplu:

...
excepție() {
  echo 'eroare de script de pornire; se închide!'
  oprire -h acum
}

capcană „excepție” ERR
...

Dar speram că există o opțiune mai gestionată.

Puncte:0
drapel id
Leo

Aș dori să știu mesajul de eroare din jurnalul dvs. MIG, deoarece ar putea fi o problemă cu întârzierea inițială, așa că sugerez să revizuiți modul în care verificarea sănătății și politica de vindecare automată sunt configurate în MIG. În aceasta, există câteva sonde și setări pe care le puteți ajusta ca vm --initial-delay. Această setare întârzie vindecarea automată de la recrearea potențială prematură a VM-ului dacă VM-ul este în curs de pornire și ar putea ajuta la problema cu scriptul de pornire. Uneori, când vm-ul pornește, are nevoie de mai mult timp pentru a executa scriptul de pornire. De asemenea, ajută dacă există o întârziere în rețea, deoarece unele probleme cu scripturile de pornire sunt legate de conexiunea la rețea cu serverul de metadate. Deci, pentru a evita acest lucru, puteți crește întârzierea inițială a controlului dumneavoastră de sănătate. Puteți obține verificarea sănătății cu următoarea comandă:

gcloud compute health-checks descrie <numele verificării de sănătate>

Vă puteți actualiza verificarea de sănătate utilizând comanda de actualizare, așa cum este prezentat în exemplul următor:

gcloud compute grupuri de instanțe gestionate actualizare my-mig \
        --verificare-sănătate exemplu-verificare \
        --initial-delay 300 \
        --zona us-east1-b

În aceasta, puteți vedea că întârzierea inițială a fost setată la 5 min, în cele ce urmează legătură veți găsi mai multe informații despre cum să configurați verificarea sănătății și vindecarea automată într-un MIG.

De asemenea, vă puteți verifica instanța în orice moment cu această comandă:

gcloud compute grupuri-instanțe gestionate list-instances grupul-voastră-instanță

NUME ZONE STARE HEALTH_STATE ACȚIUNE INSTANCE_TEMPLATE VERSION_NAME LAST_ERROR
igm-with-hc-fvz6 europe-west1 RUNNING HEALTHY NONE șablonul meu
igm-with-hc-gtz3 europe-west1 RUNNING HEALTHY NONE șablonul meu
Danielle M. avatar
drapel ie
Salut @Leo! Problema nu este cu adevărat cu verificările de sănătate, ci cu scriptul de pornire. Trebuie să comunic cu MIG că această VM nu a reușit să furnizeze și trebuie să fie recreată.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.