Készültségi ellenőrzőlista a produkcióhoz

Az írás fordítása kifejezetten a kurzus hallgatói számára készült az új fordítást osztjuk meg veletek. Induljunk., amely már ma kezdődik!

Készültségi ellenőrzőlista a produkcióhoz

Valaha kiadtál új szolgáltatást éles környezetben? Vagy esetleg a meglévő szolgáltatások karbantartásával foglalkoztál? Ha igen, mire támaszkodtál? Mi számít jónak, és mi rossznak az éles üzemeltetésekben? Hogyan oktatod az új csapattagokat a kiadásokra vagy a meglévő szolgáltatások karbantartására?

A legtöbb vállalat, amikor az ipari gyakorlatok terén van szó, végül a „Vad Nyugat” megközelítésekhez jut el. Minden csapat a próbálkozások és hibák révén önállóan határozza meg az eszközöket és a legjobb gyakorlatokat. De ez gyakran nemcsak a projektek sikerét befolyásolja, hanem az mérnököket is.

A próbálkozás és a hiba módszere olyan környezetet teremt, ahol elterjedt a hibáztatás és a felelősség áthárítása. Ilyen magatartás mellett egyre nehezebb tanulni a hibákból és ezeket elkerülni a jövőben.

Sikeres szervezetek:

  • felismerik az éles üzemeltetésekhez szükséges irányelvek fontosságát,
  • tanulmányozzák a legjobb gyakorlatokat,
  • kezdik megvitatni az éles üzemeltetésre való felkészülés kérdéseit új rendszerek vagy komponensek fejlesztésekor,
  • biztosítják az éles üzemeltetéshez való felkészülési szabályok betartását.

Az éles üzemeltetésre való felkészülés magában foglalja a „felülvizsgálat” folyamatát. A felülvizsgálat lehet ellenőrzőlista vagy kérdések sorozata. A felülvizsgálatot lehet végezni manuálisan, automatikusan, vagy mindkét módon. A statikus követelménylisták helyett készíthetünk ellenőrzőlista sablonokat, amelyeket az adott igényekhez lehet igazítani. Így a mérnökök számára lehetőséget adunk a tudás öröklésére és a szükséges rugalmasságra.

Mikor érdemes ellenőrizni a szolgáltatást az éles üzemeltetésre való felkészültség szempontjából?

Az éles üzemeltetésre való felkészültség ellenőrzését hasznos nemcsak közvetlenül a kiadás előtt végezni, hanem amikor egy másik csapatnak átadjuk a karbantartást vagy egy új munkatársnak.

Ellenőrizz, amikor:

  • Új szolgáltatást bocsátasz ki éles üzemeltetésbe.
  • Éles üzemeltetésű szolgáltatást adsz át egy másik csapatnak, például az SRE-nek.
  • Éles üzemeltetésű szolgáltatást adsz át új munkatársaknak.
  • Műszaki támogatást szervezel.

Készültségi ellenőrzőlista az éles üzemeltetéshez

Hamarosan egy példaként, én kiadta készítettem egy készültségi ellenőrzőlistát az éles üzemeltetéshez. Bár ez a lista a Google Cloud ügyfeleivel végzett munka során készült, más területeken is hasznos és alkalmazható lesz.

Tervezés és fejlesztés

  • Fejlesszen ki egy reprodukálható építési folyamatot, amely nem igényel hozzáférést külső szolgáltatásokhoz, és nem függ a külső rendszerek meghibásodásától.
  • A tervezési és fejlesztési időszak alatt határozza meg és állítsa be az SLO-t a szolgáltatásaihoz.
  • Dokumentálja a külső szolgáltatások elérhetőségére vonatkozó elvárásokat, amelyekre támaszkodik.
  • Kerülje el az egyetlen hibapontot azáltal, hogy megszünteti a függőségeket egy globális erőforrástól. Replicate the resource or use a fallback when the resource is unavailable (e.g., hard-coded value).

Konfigurációkezelés

  • A statikus, kis méretű és nem titkos konfigurációt át lehet adni parancssori paramétereken keresztül. Minden egyébhez használja a konfigurációtároló szolgáltatásokat.
  • A dinamikus konfigurációnak kell lennie biztonsági mentésének a konfigurációs szolgáltatás elérhetetlensége esetére.
  • A fejlesztési környezet konfigurációjának nem szabad kapcsolódnia a termelési környezet konfigurációjához. Különben ez problémát okozhat a titkosítással és az adatvesztéssel kapcsolatosan a fejlesztési környezetből a termelési szolgáltatásokra való hozzáféréssel.
  • Dokumentálja azokat a dolgokat, amelyek dinamikusan konfigurálhatók, és írja le a tartalék viselkedést, ha a konfigurációs rendszer nem elérhető.

Kiadáskezelés

  • Részletesen dokumentálja a kiadási folyamatot. Írja le, hogyan befolyásolják a kiadások az SLO-t (például ideiglenes késleltetések a cache hibáinak következtében).
  • Dokumentálja a kanáralakos kiadásokat.
  • Fejlesszen ki egy kanáralakos kiadás-elemzési tervet, és ahol lehetséges, automatizált visszaállítási mechanizmusokat.
  • Győződjön meg róla, hogy a visszaállítások ugyanolyan folyamatokat használhatnak, mint a telepítések.

Megfigyelhetőség

  • Győződjön meg róla, hogy összegyűjtik az SLO-hoz szükséges metrikák halmazát.
  • Győződjön meg róla, hogy meg tudja különböztetni az ügyfél- és szerveradatokat. Ez fontos a meghibásodások okainak felkutatásához.
  • Állítson be figyelmeztetéseket, hogy csökkentse a munkaerőigényt. Például távolítsa el a rutinszerű műveletekből eredő figyelmeztetéseket.
  • Ha Stackdrivert használ, akkor aktiválja a GCP platform metrikáit a műszerfalain. Állítson be figyelmeztetéseket a GCP-függőségekre.
  • Mindig terjessze az bejövő nyomkövetést. Még ha nem is vesz részt a nyomkövetésben, ez lehetővé teszi, hogy az alacsonyabb szintű szolgáltatások hibaelhárítást végezzenek a termelésben.

Védelem és biztonság

  • Győződjön meg arról, hogy minden külső kapcsolat titkosítva van.
  • Győződjön meg arról, hogy a produkciós projektjei megfelelő IAM beállítással rendelkeznek.
  • Használjon hálózatokat a virtuális gépek csoportjainak elszigetelésére.
  • Használjon VPN-t a távoli hálózatok biztonságos elérésére.
  • Dokumentálja és figyelje a felhasználói hozzáférést az adatokhoz. Győződjön meg arról, hogy az összes felhasználói hozzáférést az adatokhoz ellenőrzik és naplózzák.
  • Győződjön meg arról, hogy a hibakeresési végpontokat ACL korlátozza.
  • Sanitizálja a felhasználói bevitelt. Állítson be payload méretkorlátokat a felhasználói bevitel számára.
  • Győződjön meg arról, hogy a szolgáltatása szelektíven blokkolni tudja a bejövő forgalmat egyes felhasználók számára. Ez lehetővé teszi a megsértések blokkolását anélkül, hogy más felhasználókat érintene.
  • Kerülje azokat a külső végpontokat, amelyek nagyszámú belső műveletet indítanak.

Kapacitás tervezés

  • Dokumentálja, hogyan skálázódik a szolgáltatása. Például: a felhasználók száma, a beérkező payload mérete, a bejövő üzenetek száma.
  • Dokumentálja a szolgáltatásához szükséges erőforrásokat. Például: a dedikált virtuális gépek száma, a Spanner példányok száma, speciális hardverek, mint például GPU vagy TPU.
  • Dokumentálja az erőforrás-korlátokat: erőforrás típusa, régió stb.
  • Dokumentálja az új erőforrások létrehozására vonatkozó kvótakorlátokat. Például: GCE API hívások számának korlátozása, ha API-t használ új példányok létrehozására.
  • Fontolja meg terheléses tesztek végrehajtását a teljesítmény csökkenésének elemzésére.

Ennyi volt. Találkozunk az órákon!

Forrás: habr.com

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster