Rajaa self-healingin valtuudet
Automatisoi tunnettu palautustoimi selkein oikeuksin, varmennuksin ja pysäytysehdoin. Erota ajonaikainen palautus ohjelmiston muuttamisesta.
Julkaisija TaigaNäin kirjoitamme
Mitä opit
- Erotat self-healingin pysyvästä ohjelmistokorjauksesta.
- Määrität rajatun palautuspolicyn ja riippumattoman onnistumisen tarkistuksen.
- Tunnistat tilanteet, joissa automaation pitää pysähtyä ja eskaloida.
Palaudu tunnetusta viasta
Self-healing tunnistaa määritellyn vian ja yrittää valtuutettua palautustoimea automaattisesti. Esimerkkejä ovat pysähtyneen prosessin käynnistys ja epäterveen instanssin korvaaminen. Toimen pitää sopia vikaan ja palvelun tilamalliin.
Kubernetes voi korvata epäonnistuneita workload-instansseja ja sovittaa toteutunutta tilaa määriteltyyn tilaan. Se ei korjaa sovelluslogiikkaa tai kaikkia tallennuksen virheitä. Infran palautuminen ja ohjelmiston oikea toiminta tarvitsevat eri tarkistukset. Kubernetes self-healing.
Määritä tavoite ennen mekanismia. Viennin palautuminen tarkoittaa sallitun työn valmistumista oikein. Käynnissä oleva kontti on vain yksi edellytys.
Erota kolme muutosta
| Muutos | Esimerkki | Tarvittava päätös |
|---|---|---|
| Ajonaikainen palautus | Yhden pysähtyneen stateless-workerin korvaaminen | Ennalta hyväksytty palautuspolicy voi valtuuttaa toimen |
| Ohjelmistokorjaus | Workerin pysäyttävän muistivuodon korjaaminen | Review, testit, julkaisukontrollit ja tuotannon varmennus |
| Policyn muutos | Sallitun restart-tahdin tai käyttöoikeuden laajentaminen | Policyn omistajan erillinen hyväksyntä |
Agentti voi ehdottaa korjausta palautumisen jälkeen. Ehdotus on uusi ohjelmistomuutos. Se ei saa periä palautuscontrollerilta rajatonta valtuutta.
Controller ei myöskään saa muuttaa omia onnistumiskriteerejään tarkistuksen epäonnistuessa. Muuten järjestelmä voi raportoida parannusta palvelun paranematta.
Kirjoita palautuspolicy ennen käyttöönottoa
Seuraava policy on kuvitteellinen. Luvut havainnollistavat valintoja, eivät ole suositeltuja oletusarvoja.
| Policyn osa | Kuvitteellisen export-workerin sääntö |
|---|---|
| Trigger | Heartbeat puuttuu 90 sekuntia ja jonossa on työtä |
| Edellytykset | Toinen worker toimii; riippuvuustarkistukset onnistuvat; ei epäiltyä tietomurtoa tai eheysvirhettä |
| Sallittu toimi | Korvaa yksi worker nykyisellä hyväksytyllä artefaktilla |
| Tilan suojaus | Jobit käyttävät pysyvää tallennusta ja varmennettua idempotency keytä |
| Raja | Enintään kaksi korvausta 15 minuutissa, aina yksi kerrallaan |
| Cooldown | Odota korvauksen jälkeen viisi minuuttia ennen uutta yritystä |
| Onnistuminen | Synteettinen job valmistuu oikein ja kyseinen jono alkaa purkautua |
| Pysäytys ja eskalointi | Edellytys pettää, yritysraja täyttyy tai onnistumista ei voida varmentaa |
Käytä vähimpiin tarvittaviin oikeuksiin rajattua identiteettiä. Tallenna policyn versio, triggerin näyttö, toimi, resurssi ja tulos. Tarjoa riippumaton tapa pysäyttää controller. Nimeä eskaloinnin vastaanottava ihminen.
Testaa myös epäonnistuminen
Retry voi toistaa sivuvaikutuksen. Worker saattaa tallentaa tiedoston ja pysähtyä ennen jobin kuittausta. Varmista idempotenssi ennen uutta suoritusta. Katso cloud native -esimerkki.
Retryt voivat pahentaa riippuvuuden ylikuormaa. Rajaa yritykset ja käytä timeoutia sekä sopivaa backoffia. Estä koko fleetin samanaikaiset retryt. AWS kuvaa backoffin ja jitterin merkitystä kuorman hallinnassa. Retry-ohje.
Testaa kuvitteellinen policy kolmella tilanteella. Yhden pysähtyneen workerin pitäisi palautua. Tietokantakatkon pitäisi estää toistuva korvaaminen. Epäselvän eheysvirheen pitäisi pysäyttää automaatio ja pyytää päätös jatkotoimista.
Testaa myös puuttuva telemetria. Heartbeatin puuttuminen voi kertoa workerin viasta tai keruuketjun häiriöstä. Controller tarvitsee toimeen riittävän näytön, ei luottamusta AI:n selitykseen.
Mittaa policyn hyöty
Kirjaa varmennetut palautumiset, epäonnistuneet yritykset, eskaloinnit, toistettu työ ja käyttäjävaikutuksen kesto. Vertaa niitä aiempaan toimintatapaan vastaavissa olosuhteissa.
Pidä alkuperäinen vika kehitystehtävänä. Muistia vuotavan prosessin toistuva restart voi lieventää vaikutusta korjaamatta vuotoa. Jatka self-improvementiin, jossa havainto yhdistyy pysyvään korjaukseen.
Sovella käytäntöön
Suunnittele palautuspolicy oppitunnin kuvitteelliselle export-workerille. Määritä trigger, poissulkevat ehdot, sallittu toimi, yritysraja, cooldown, onnistumisen tarkistus ja eskaloinnin omistaja. Testaa policy tietokantakatkoa ja epäselvää datan eheysvirhettä vasten.
Lataa työpohja (Markdown)Testaa, mitä opit
Lähteet ja lisälukeminen
- Kubernetes: Self-Healing ↗
- AWS Builders’ Library: Timeouts, retries, and backoff with jitter ↗
- Google SRE: Automation at Google ↗
Aiheesta Taigan sivuilla
Valinnan poistaminen poistaa kaikki tälle selaimelle tallennetut suoritusmerkinnät.
Edistyminen tallentuu tähän selaimeen. Ei käyttäjätiliä eikä seurantaa.