Meidän vahti käynnisti uudelleen palvelut, jotka olimme pysäyttäneet tarkoituksella

Ylläpito

Yksi vahteistamme käynnistää minkä tahansa palveluistamme, joka on otettu käyttöön mutta ei ole käynnissä. Kahdesti lokakuussa se käynnisti palveluita, jotka olimme pysäyttäneet tarkoituksella. Toisella kerralla yhden sivustomme kävijät saivat virheitä noin 45 minuutin ajan.

Miksi tämä vahti on olemassa

Palvelu, joka poistuu puhtaasti SIGTERM-signaalin saatuaan, esimerkiksi koska jokin tappoi sen nimellä, ei ole systemdin näkökulmasta "failed". Restart=on-failure ei tuo sitä takaisin, eikä systemctl --failed listaa sitä. Se pysyy alhaalla, kunnes joku sattuu huomaamaan sen. Siksi vahti etsii palveluita, jotka on otettu käyttöön mutta eivät ole käynnissä, ja käynnistää ne.

Ongelma on, että käsin pysäyttämäsi palvelu näyttää täsmälleen samalta.

Ensimmäinen kerta

7. lokakuuta pysäytimme videotyöntekijän komennolla systemctl stop kello 12:47 muokataksemme sen työhonoa. Kello 12:55 se oli jälleen käynnissä: vahti oli käynnistänyt sen.

Toinen kerta

21. lokakuuta tarvitsimme koneen muistia, joka palvelee myös kahta sivustoamme, mallitestia varten. Skripti pysäytti sivustojen web-sovellukset, synkronointityön ja tietokantasäiliön jälleen komennolla systemctl stop. Noin viiden minuutin kuluttua sivustoja valvova ajastin ja kello 19:14 vahti toivat tunnelin ja web-sovellukset takaisin.

Tunneli otti liikenteen jälleen vastaan, mutta web-sovellukset eivät pystyneet vastaamaan: testattava malli piti hallussaan 114 GiB koneen muistista. Noin kello 19:14–20:00 jotkut kävijät saivat 502-virheitä. Kello 20:00 poistimme tunnelin, web-sovellukset ja synkronointityön käytöstä ja pysäytimme valvonta-ajastimen.

Sääntö, jota käytämme nyt

Kaksi muuta systemd-anskaa samoilta kuukausilta

Factory Floor valvoo käytössä olevia palveluita, jotka eivät ole käynnissä. Oletuksena se vain raportoi niistä, ja käynnistää ne vain, jos otat tämän asetuksen käyttöön. Versiosta 1.0.3 lähtien sen hälytys kertoo myös, kuinka palvelun voi pysäyttää tarkoituksella, ja sen runbook kertoo saman.

Päivitetty: