Tuotantovalmiuden tarkistuslista

Artikkelin käännös on tehty erityisesti kurssin opiskelijoille "DevOps-käytännöt ja -työkalut", joka alkaa tänään!

Tuotantovalmiuden tarkistuslista

Oletko koskaan julkaissut uutta palvelua tuotantoon? Tai ehkä olet ollut mukana tukemassa tällaisia ​​palveluita? Jos kyllä, mikä motivoi sinua? Mikä on tuotannolle hyvää ja mikä huonoa? Kuinka koulutat uusia tiimin jäseniä olemassa olevien palveluiden julkaisuihin tai ylläpitoon.

Useimmat yritykset päätyvät omaksumaan "villin lännen" lähestymistapoja teollisten toimintatapojen suhteen. Jokainen tiimi päättää omista työkaluistaan ​​ja parhaista käytännöistään yrityksen ja erehdyksen avulla. Mutta tämä ei usein vaikuta vain projektien onnistumiseen, vaan myös insinööreihin.

Yritys ja erehdys luo ympäristön, jossa sormella osoittaminen ja syyttäminen ovat yleisiä. Tämän käytöksen myötä on yhä vaikeampaa oppia virheistä ja olla toistamatta niitä uudelleen.

Menestyneet organisaatiot:

  • ymmärtää tuotannon ohjeiden tarpeen,
  • opiskella parhaita käytäntöjä,
  • aloittaa keskustelut tuotantovalmiusasioista uusia järjestelmiä tai komponentteja kehitettäessä,
  • varmistaa tuotannon valmistelua koskevien sääntöjen noudattaminen.

Tuotannon valmistelu sisältää "tarkistusprosessin". Arvostelu voi olla tarkistuslistan tai kysymyssarjan muodossa. Tarkistukset voidaan tehdä manuaalisesti, automaattisesti tai molemmilla. Staattisten vaatimusluetteloiden sijaan voit tehdä tarkistuslistamalleja, jotka voidaan mukauttaa erityistarpeisiin. Näin insinööreille voidaan antaa mahdollisuus periä tietoa ja riittävästi joustavuutta tarvittaessa.

Milloin palvelun tuotantovalmius tarkistetaan?

Tuotannon valmiustarkastus on hyödyllistä tehdä paitsi välittömästi ennen julkaisua, myös siirrettäessä se toiselle toimintaryhmälle tai uudelle työntekijälle.

Tarkista milloin:

  • Olet vapauttamassa tuotantoon uuden palvelun.
  • Siirrät tuotantopalvelun toiminnan toiselle tiimille, kuten SRE:lle.
  • Siirrät tuotantopalvelun toiminnan uusille työntekijöille.
  • Järjestä tekninen tuki.

Tuotantovalmiuden tarkistuslista

Jokin aika sitten esimerkiksi minä julkaistu tarkistuslista tuotantovalmiuden testaamiseksi. Vaikka tämä luettelo on peräisin Google Cloud -asiakkailta, se on hyödyllinen ja sovellettavissa Google Cloudin ulkopuolella.

Suunnittelu ja kehitys

  • Kehitä toistettava rakennusprosessi, joka ei vaadi pääsyä ulkoisiin palveluihin ja joka ei ole riippuvainen ulkoisten järjestelmien vioista.
  • Määritä ja aseta palveluillesi SLO:t suunnittelu- ja kehitysvaiheen aikana.
  • Dokumentoi odotukset ulkoisten palvelujen saatavuudesta, joista olet riippuvainen.
  • Vältä yksittäinen vikakohta poistamalla riippuvuudet yhdestä globaalista resurssista. Replikoi resurssi tai käytä varavaihtoehtoa, kun resurssi ei ole käytettävissä (esimerkiksi kovakoodattu arvo).

Kokoonpanon hallinta

  • Staattinen, pieni ja ei-salainen konfiguraatio voidaan välittää komentoriviparametreilla. Käytä kaikkeen muuhun määritysten tallennuspalveluita.
  • Dynaamisessa kokoonpanossa on oltava vara-asetukset siltä varalta, että määrityspalvelu ei ole käytettävissä.
  • Kehitysympäristön konfiguraatio ei saa liittyä tuotantokokoonpanoon. Muuten tämä voi johtaa kehitysympäristöstä pääsyyn tuotantopalveluihin, mikä voi aiheuttaa tietosuojaongelmia ja tietovuotoja.
  • Dokumentoi, mitä voidaan määrittää dynaamisesti, ja kuvaile varakäyttäytymistä, jos kokoonpanon toimitusjärjestelmä ei ole käytettävissä.

Julkaisun hallinta

  • Dokumentoi julkaisuprosessi yksityiskohtaisesti. Kuvaile, kuinka julkaisut vaikuttavat SLO:ihin (esimerkiksi viiveen tilapäinen kasvu välimuistin puuttumisesta johtuen).
  • Dokumentoi kanarian julkaisut.
  • Kehitä kanarian julkaisun tarkistussuunnitelma ja, jos mahdollista, automaattiset palautusmekanismit.
  • Varmista, että palautukset voivat käyttää samoja prosesseja kuin käyttöönotot.

Havaittavuus

  • Varmista, että SLO:lle vaadittavat mittarit on kerätty.
  • Varmista, että pystyt erottamaan asiakkaan ja palvelimen tiedot. Tämä on tärkeää toimintahäiriöiden syiden selvittämiseksi.
  • Määritä hälytykset työvoimakustannusten vähentämiseksi. Poista esimerkiksi rutiinitoimintojen aiheuttamat hälytykset.
  • Jos käytät Stackdriveria, sisällytä GCP-alustan tiedot kojelautaihisi. Määritä ilmoitukset GCP-riippuvuuksista.
  • Levitä aina saapuvat jäljet. Vaikka et olisi mukana jäljittämisessä, alemman tason palvelut voivat korjata tuotannon ongelmia.

Suojaus ja turvallisuus

  • Varmista, että kaikki ulkoiset yhteydet on salattu.
  • Varmista, että tuotantoprojekteissasi on oikea IAM-asetukset.
  • Käytä verkkoja virtuaalikoneen esiintymien ryhmien eristämiseen.
  • Käytä VPN:ää muodostaaksesi turvallisen yhteyden etäverkkoihin.
  • Dokumentoi ja valvo käyttäjien pääsyä tietoihin. Varmista, että kaikki käyttäjien pääsy tietoihin on tarkastettu ja kirjattu.
  • Varmista, että ACL-luettelot rajoittavat virheenkorjauksen päätepisteitä.
  • Puhdista käyttäjän syöte. Määritä hyötykuorman kokorajoitukset käyttäjän syötteelle.
  • Varmista, että palvelusi voi valikoivasti estää yksittäisten käyttäjien saapuvan liikenteen. Tämä estää rikkomukset vaikuttamatta muihin käyttäjiin.
  • Vältä ulkoisia päätepisteitä, jotka käynnistävät paljon sisäisiä toimintoja.

Kapasiteettisuunnittelu

  • Dokumentoi, kuinka palvelusi laajenee. Esimerkiksi: käyttäjien määrä, saapuvan hyötykuorman koko, saapuvien viestien määrä.
  • Dokumentoi palvelusi resurssivaatimukset. Esimerkiksi: omistettujen virtuaalikoneen esiintymien määrä, Spanner-esiintymien määrä, erikoislaitteisto, kuten GPU tai TPU.
  • Asiakirjan resurssirajoitukset: resurssityyppi, alue jne.
  • Dokumentoi kiintiörajoitukset uusien resurssien luomiseksi. Esimerkiksi GCE-sovellusliittymäpyyntöjen määrän rajoittaminen, jos käytät sovellusliittymää uusien esiintymien luomiseen.
  • Harkitse kuormitustestien suorittamista suorituskyvyn heikkenemisen analysoimiseksi.

Siinä kaikki. Nähdään luokassa!

Lähde: will.com

Lisää kommentti