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

A keni lançuar ndonjĂ«herĂ« njĂ« shĂ«rbim tĂ« ri nĂ« prodhim? Apo ndoshta keni trajtuar mbĂ«shtetje pĂ«r kĂ«to shĂ«rbime? NĂ«se po, çfarĂ« kriteresh keni pasur? ĂfarĂ« Ă«shtĂ« e mirĂ« pĂ«r prodhim dhe çfarĂ« jo? Si i trajtoni anĂ«tarĂ«t e rinj tĂ« ekipit pĂ«r lĂ«shimet ose mbĂ«shtetje pĂ«r shĂ«rbimet ekzistuese?
Shumica e kompanive, nĂ« lidhje me praktikat e operacioneve industriale, pĂ«rfundojnĂ« duke u mbĂ«shtetur nĂ« qasje 'tĂ« PerĂ«ndimit tĂ« 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 nĂ« suksesin e projekteve, por edhe te inxhinierĂ«t.
Metoda e provave dhe gabimeve krijon një mjedis ku kërkimi i fajtoreve dhe kalimi i përgjegjësisë janë të përhapura. Në një sjellje të tillë, bëhet gjithnjë e më e vështirë të mësohet nga gabimet dhe të mos i përsëritni ato.
Organizatat e suksesshme:
- e kuptojnë nevojën për udhëzime për prodhimin,
- studiojnë praktikat më të mira,
- fillojnë diskutimin mbi gatishmërinë për prodhim gjatë zhvillimit të sistemeve ose komponentëve të rinj,
- sigurojnë përputhjen 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ë grup pyetjesh. Rishikimi mund të bëhet manual, automatikisht, ose të dyja së bashku. Në vend të listave statike të kërkesave, mund të krijoni shabllone kontrollesh që të adaptohen për nevoja specifike. Kështu, inxhinierëve u ofrohet një mënyrë për të trashëguar njohuri dhe mjaft fleksibilitet kur kjo kërkohet.
Kur të kontrolloni shërbimin për gatishmërinë për prodhim?
Kontrolli i gatishmërisë për prodhim është i dobishëm të realizohet jo vetëm pak para lëshimit, por edhe kur i kaloni një ekipi tjetër për operim ose një punonjësi të ri.
Bëni kontrollin kur:
- Lëshoni një shërbim të ri në prodhim.
- Kaloni operimin e një shërbimi të prodhimit në një ekip tjetër, si SRE.
- Kaloni operimin e një shërbimi të prodhimit në punonjës të rinj.
- Organizoni mbështetje teknike.
Lista e kontrollit për gatishmërinë për prodhim
Disa kohë më parë, si një shembull, unë lista e kontrollit për gatishmërinë për prodhim. Megjithëse kjo listë doli gjatë punës me klientët e Google Cloud, ajo do të jetë e dobishme dhe e aplikueshme edhe jashtë Google Cloud.
Projektimi dhe zhvillimi
- Zhvilloni një proces ndërtimi të riprodhueshëm, që nuk kërkon akses në shërbime të jashtme dhe nuk varet nga dështimi i sistemeve të jashtme.
- Gjatë fazës së projektimit dhe zhvillimit, përcaktoni dhe vendosni SLO për shërbimet tuaja.
- Dokumentoni pritjet për disponueshmërinë e shërbimeve të jashtme, nga të cilat ju vareni.
- Shmangni pikën e vetme të dështimit, duke hequr varësitë nga një burim global të vetëm. Republiko burimin ose përdorni një variant rezervë, kur burimi nuk është i disponueshëm (p.sh. një vlerë e koduar ngushtësisht).
Menaxhimi i konfigurimit
- Një konfigurim statik, i 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ërbimet e ruajtjes së konfigurimit.
- Konfigurimi dinamik duhet të ketë opsione rezervë në rast se shërbimi i konfigurimit nuk është i disponueshëm.
- Konfigurimi i ambientit të zhvillimit nuk duhet të lidhet me konfigurimin e prodhimit. Përndryshe, mund të çojë në akses nga ambienti i zhvillimit në shërbimet e prodhimit, gjë që mund të shkaktojë probleme për privatësinë dhe shkeljet e të dhënave.
- Dokumentoni atë që mund të konfigurohet dinamikisht, dhe përshkruani sjelljen rezervë, nëse sistemi i dorëzimit të konfigurimit do të jetë i paqasshëm.
Menaxhimi i lëshimeve
- Dokumentoni në detaje procesin e lëshimit. Shpjegoni si lëshimet ndikojnë në SLO (p.sh. rritja e përkohshme e vonesave për shkak të gabimeve në memorie).
- Dokumentoni lëshimet kanarëse.
- Zhvilloni një plan për analizimin e lëshimeve kanarëse dhe, kur të jetë e mundur, mekanizmat për rikthim automatik.
- Sigurohuni që rikthimet të mund të përdorin të njëjtat procese si dhe implementimi.
Përshtatshmëria për monitorim (Observability)
- Sigurohuni që të mbledhni një grup metrikash të nevojshme për SLO.
- Sigurohuni që të jeni në gjendje të bëni dallimin midis të dhënave klient dhe atyre të serverit. Kjo është e rëndësishme për të gjetur shkakun e defekteve.
- Konfiguroni alarmet për të zvogëluar punën manuale. Për shembull, fshini alarmet që shkaktohen nga operacione rutinore.
- Nëse përdorni Stackdriver, aktivizoni metrikat e platformës GCP në tabelat e bllokimeve. Konfiguroni alarmet për varësitë GCP.
- Gjithmonë përhapni gjurmën hyrëse. Edhe nëse nuk merrni pjesë në gjurmë, kjo do t'i ndihmojë shërbimeve më të ulëta të diagnostikojnë problemet në prodhim.
Mbrojtja dhe siguria
- Sigurohuni që të gjitha lidhjet e jashtme janë të enkriptuara.
- Sigurohuni që projektet tuaja të prodhimit të kenë konfigurimin e duhur të IAM.
- Përdorni rrjetet për të izoluar grupet e instanceve të makinave virtuale.
- Përdorni VPN për lidhje të sigurt me rrjetet e largëta.
- Dokumentoni dhe monitoroni aksesin e përdoruesve në të dhëna. Sigurohuni që çdo akses i përdoruesve në të dhëna të verifikohet dhe regjistrohet.
- Sigurohuni që piket për debugging të jenë të kufizuara me ACL.
- Sanitizoni inputin e përdoruesve. Konfigurojeni kufizimin e madhësisë së ngarkesave për inputin e përdoruesve.
- Sigurohuni që shërbimi juaj të mund të bllokojë përzgjedhshëm trafikun që vjen për përdorues të veçantë. Kjo do të lejojë bllokimin e shkeljeve pa ndikuar në përdorues të tjerë.
- Shmangni piketat e jashtme që nisin një numër të madh operacionesh të brendshme.
Planifikimi i kapacitetit
- Dokumentoni se si shkallëzohet shërbimi juaj. Për shembull: numri i përdoruesve, madhësia e ngarkesës në hyrje, numri i mesazheve në hyrje.
- Dokumentoni kërkesat për burime për shërbimin tuaj. Për shembull: numri i instanceve të dedikuara të makinave virtuale, numri i instanceve Spanner, pajisje të specializuara 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 të GCE API, nëse përdorni API për të krijuar instance të reja.
- Mundohuni të realizoni teste ngarkesash për të analizuar rënien e performancës.
Kaq është. Shihemi në mësim!
Burimi: habr.com
