Përkthimi i artikullit është përgatitur veçanërisht për studentët e kursit , e cila fillon që sot!

A keni ndonjĂ«herĂ« nxjerrĂ« njĂ« shĂ«rbim tĂ« ri nĂ« prodhim? Apo ndoshta keni qenĂ« pjesĂ« e mbĂ«shtetjes sĂ« kĂ«tyre shĂ«rbimeve? NĂ«se po, çfarĂ« keni pasur parasysh? ĂfarĂ« Ă«shtĂ« e mirĂ« pĂ«r prodhimin dhe çfarĂ« jo? Si i ndani informacionet pĂ«r lansimin e shĂ«rbimeve tĂ« reja ose pĂ«r mbĂ«shtetje nĂ« shĂ«rbimet ekzistuese pĂ«r anĂ«tarĂ«t e ri tĂ« ekipit?
Shumica e kompanive nĂ« lidhje me praktikat e eksploatimit pĂ«rfundojnĂ« nĂ« qasje si "PerĂ«ndimi i egĂ«r". Ădo ekip, pĂ«rmes provave dhe gabimeve, pĂ«rcakton vetĂ« mjetet dhe praktikat mĂ« tĂ« mira. Por kjo shpesh ndikon jo vetĂ«m tek sukseset e projekteve, por edhe tek inxhinierĂ«t.
Metoda e provave dhe gabimeve krijon një ambient ku kërkimi i të fajshëm është i përhapur dhe përgjegjësia është e kaluar. Me një sjellje të tillë, bëhet gjithnjë e më e vështirë të mësojmë nga gabimet dhe të mos i përsërim ato.
Organizatat e suksesshme:
- kanë vetëdijen për nevojën e udhëzimeve për prodhimin,
- studjojnë praktikat më të mira,
- nisin diskutimin mbi çështjet e gatishmërisë për prodhim gjatë zhvillimit të sistemeve ose komponenteve të reja,
- sigurojnë përputhshmërinë me rregullat e përgatitjes për prodhim.
Përgatitja për prodhim përfshin procesin e "rishikimit". Rishikimi mund të jetë në formën e një liste kontrolli ose një grupi pyetjesh. Rishikimi mund të bëhet manualisht, automatikisht ose me të dyja mënyrat. Në vend të listave statike të kërkesave, mund të krijohen shembuj liste kontrolli që janë të përshtatshëm për nevojat specifike. Kështu, inxhinierëve mund t'u jepet një mënyrë për të pasur njohuri dhe fleksibilitet të mjaftueshëm kur është e nevojshme.
Kur të kontrolloni shërbimin për gatishmërinë për prodhim?
Kontrolli i gatishmërisë për prodhim është i dobishëm jo vetëm menjëherë para lansimit, por edhe kur e kaloni atë ekipit tjetër të eksploatimit ose një punonjësi të ri.
Kontrolloni kur:
- Nxirrni një shërbim të ri në prodhim.
- Kalon eksploatimin e shërbimit të prodhimit në një ekip tjetër, si SRE.
- Kalon eksploatimin e shërbimit të prodhimit në punonjës të rinj.
- Organizoni mbështetje teknike.
Lista e kontrollit për kontrollin e gatishmërisë për prodhim
Një kohë më parë, për shembull, unë lista e kontrollit për gatishmërinë për prodhim. Nëse ky listë u zhvillua gjatë punës me klientët e Google Cloud, ai do të jetë i dobishëm dhe i aplikueshëm edhe jashtë Google Cloud.
Dizajnimi dhe zhvillimi
- Zhvilloni një proces ndërtimi të ripërsëritshëm, që nuk kërkon akses në shërbime të jashtme dhe që nuk varet nga dështimi i sistemeve të jashtme.
- Në periudhën e projektimit dhe zhvillimit, përcaktoni dhe vendosni SLO për shërbimet tuaja.
- Dokumentoni pritshmëritë për disponueshmërinë e shërbimeve të jashtme nga të cilat vareni.
- Shmangni pikën unike të dështimit duke eliminuar varësitë nga një burim global. Replikoni burimin ose përdorni një variant rezervë kur burimi nuk është i-accessueshëm (p.sh. një vlerë e koduar e fortë).
Menaxhimi i konfiguracionit
- Një konfiguracion statik, të vogël dhe jo sekret mund të transmetohet përmes parametrave të linjës së komandës. Për gjithçka tjetër, përdorni shërbime ruajtjeje të konfiguracionit.
- Konfigurimi dinamik duhet të ketë cilësime rezervë në rast se shërbimi i konfiguracionit nuk është i-accessueshëm.
- Konfigurimi i mjedisit të zhvillimit nuk duhet të lidhet me konfigurimin e prodhimtarisë. Në të kundërt, kjo mund të çojë në qasje nga mjedisi i zhvillimit në shërbimet e prodhimit, e cila mund të shkaktojë probleme privatësie dhe rrjedhje të të dhënave.
- Dokumentoni atë që mund të konfigurohet në mënyrë dinamike, dhe përshkruani sjelljen rezervë, nëse sistemi i shpërndarjes së konfigurimit është i pa-accessueshëm.
Menaxhimi i lëshimeve
- Dokumentoni në detaje procesin e lëshimit. Përshkruani se si lëshimet ndikojnë në SLO (p.sh. rritje përkohësore e vonesave për shkak të dështimeve të caches).
- Dokumentoni lëshimet kanar.
- Zhvilloni një plan për analizën e lëshimeve kanar dhe, kur është e mundur, mekanizmat e rikthimit automatik.
- Sigurohuni që rithehjet mund të përdorin të njëjtat procese si shpërndarjet.
Dallueshmëria (Observability)
- Sigurohuni që të mblidhet një grup metrike që është e nevojshme për SLO.
- Sigurohuni që mund të bëni dallimin midis të dhënave klientit dhe atyre serverike. Kjo është e rëndësishme për identifikimin e arsyeve të dështimeve.
- Konfiguroni njoftime për të zvogëluar kostot e punës. Për shembull, fshini njoftimet që shkaktohen nga operacionet rutinë.
- Nëse përdorni Stackdriver, aktivizoni metrikat e platformës GCP në dashboardet tuaja. Konfiguroni njoftime për varësitë GCP.
- Gjithmonë shpërndani gjurmimin e hyrjes. Edhe nëse nuk merrni pjesë në gjurmim, kjo do t'i japë shërbimeve më të ulëta mundësinë për të zgjidhur problemet në prodhim.
Mbrojtja dhe siguria
- Sigurohuni që të gjitha lidhjet e jashtme të jenë të enkriptuara.
- Sigurohuni që projektet tuaja prodhuese të kenë konfigurimin e duhur IAM.
- Përdorni rrjetet për të izoluar grupe të instancave virtuale.
- Përdorni VPN për një lidhje të sigurt me rrjetet e largëta.
- Dokumentoni dhe monitoroni qasjen e përdoruesve në të dhëna. Sigurohuni që çdo qasje e përdoruesve në të dhëna të verifikohet dhe të registrohet.
- Sigurohuni që pikët finale për debug të jenë të kufizuara me ACL.
- Sanitizoni hyrjet e përdoruesve. Konfiguroni kufizimet e madhësisë së ngarkesës për hyrjet e përdoruesve.
- Sigurohuni që shërbimi juaj të jetë në gjendje të bllokojë selektivisht trafikun e ardhshëm për përdorues të veçantë. Kjo do të lejojë bllokimin e shkeljeve pa ndikuar te përdoruesit e tjerë.
- Shmangni pikët e jashtme që nisin një numër të madh operacionesh të brendshme.
Planifikimi i kapaciteteve
- Dokumentoni si e zgjeron shërbimi juaj. Për shembull: numri i përdoruesve, madhësia e ngarkesës së ardhshme, numri i mesazheve të ardhshme.
- Dokumentoni kërkesat për burime për shërbimin tuaj. Për shembull: numri i instancave të ndara të makinave virtuale, numri i instancave Spanner, pajisje speciale si GPU ose TPU.
- Dokumentoni kufizimet e burimeve: lloji i burimit, rajoni etj.
- Dokumentoni kufizimet e kuotave për krijimin e burimeve të reja. Për shembull, kufizimi i numrit të kërkesave API GCE, nëse po përdorni API për të krijuar instanca të reja.
- Mundohuni të kryeni teste ngarkese për të analizuar rënien e performancës.
Kjo është gjithçka. Takohemi në ligjërata!
Burimi: habr.com
