"Ang pag-asa ay isang masamang diskarte." SRE intensive sa Moscow, Pebrero 3-5

Inanunsyo namin ang unang praktikal na kurso sa SRE sa Russia: Slurm SRE.

Sa panahon ng intensive, gugugol tayo ng tatlong araw sa pagbuo, pagsira, pag-aayos at pagpapabuti ng isang aggregator website para sa pagbebenta ng mga tiket sa pelikula.

"Ang pag-asa ay isang masamang diskarte." SRE intensive sa Moscow, Pebrero 3-5

Pinili namin ang isang ticket aggregator dahil marami itong mga senaryo ng pagkabigo: isang pagdagsa ng mga bisita at pag-atake ng DDoS, ang pagkabigo ng isa sa maraming kritikal na microservices (awtorisasyon, reservation, pagpoproseso ng pagbabayad), ang hindi available na isa sa maraming mga sinehan (data exchange tungkol sa magagamit na mga upuan at reserbasyon), at higit pa sa ibaba ng listahan.

Bubuo kami ng konsepto ng Reliability para sa aming aggregator site, na higit naming bubuuin sa Engineering, pag-aralan ang disenyo mula sa punto ng view ng SRE, piliin ang mga sukatan, i-set up ang kanilang pagsubaybay, alisin ang mga umuusbong na insidente, magsagawa ng pagsasanay para sa team work na may mga insidente sa mga kondisyong malapit sa labanan, ayusin ang isang debriefing .

Ang programa ay pinapatakbo ng mga empleyado ng Booking.com at Google.
Sa pagkakataong ito ay walang malayuang paglahok: ang kurso ay binuo sa personal na pakikipag-ugnayan at pagtutulungan ng magkakasama.

Mga detalye sa ilalim ng hiwa

Mga nagsasalita

Ivan Kruglov
Principal Developer sa Booking.com (Netherlands)
Mula nang sumali sa Booking.com noong 2013, nagtrabaho siya sa mga proyektong pang-imprastraktura tulad ng distributed message delivery and processing, BigData at web-stack, search.
Kasalukuyang nagtatrabaho sa mga isyu ng pagbuo ng panloob na cloud at Service Mesh.

Ben Tyler
Principal Developer sa Booking.com (USA)
Nakikibahagi sa internal development ng Booking.com platform.
Dalubhasa sa service mesh / service discovery, batch job scheduling, incident response at postmortem process.
Nagsasalita at nagtuturo sa Russian.

Evgeniy Varavva
Pangkalahatang Developer sa Google (San Francisco).
Karanasan mula sa mga high-load na proyekto sa web hanggang sa pananaliksik sa computer vision at robotics.
Mula noong 2011, siya ay kasangkot sa paglikha at pagpapatakbo ng mga distributed system sa Google, na nakikilahok sa buong cycle ng buhay ng proyekto: conceptualization, disenyo at arkitektura, paglulunsad, pagtitiklop at lahat ng mga intermediate na yugto.

Eduard Medvedev
CTO sa Tungsten Labs (Germany)
Nagtrabaho bilang isang engineer sa StackStorm, responsable para sa paggana ng ChatOps ng platform. Binuo at ipinatupad ang mga ChatOps para sa automation ng data center. Tagapagsalita sa mga kumperensya ng Russia at internasyonal.

Programa

Ang programa ay aktibong binuo. Ngayon ay ganito na ang hitsura nito, sa Pebrero ay maaaring umunlad at lumawak.

Paksa #1: Mga pangunahing prinsipyo at pamamaraan ng SRE

  • Ano ang kinakailangan upang maging isang SRE?
  • DevOps kumpara sa SRE
  • Bakit pinahahalagahan ng mga developer ang SRE at napakalungkot kapag wala sila sa proyekto
  • SLI, SLO at SLA
  • Error sa badyet at ang papel nito sa SRE

Paksa #2: Disenyo ng mga distributed system

  • Arkitektura ng application at pag-andar
  • Di-Abstract na Malaking Disenyo ng System
  • Operability / Disenyo para sa pagkabigo
  • gRPC o REST
  • Pag-bersyon at pabalik na pagkakatugma

Paksa #3: Paano tinatanggap ang isang proyekto ng SRE

  • Pinakamahuhusay na kagawian mula sa SRE
  • Checklist ng pagtanggap ng proyekto
  • Pag-log, sukatan, pagsubaybay
  • Ang pagkuha ng CI/CD sa sarili nating mga kamay

Paksa Blg. 4: Disenyo at paglulunsad ng isang distributed system

  • Reverse engineering - paano gumagana ang system?
  • Sumasang-ayon kami sa SLI at SLO
  • Magsanay sa pagpaplano ng kapasidad
  • Ang paglulunsad ng trapiko sa application, ang aming mga gumagamit ay nagsisimulang "gamitin" ito
  • Inilunsad ang Prometheus, Grafana, Elastic

Paksa #5: Pagsubaybay, Pagmamasid at Pag-alerto

  • Pagsubaybay vs. Pagmamasid
  • Pagse-set up ng pagsubaybay at pag-alerto sa Prometheus
  • Praktikal na pagsubaybay ng SLI at SLO
  • Sintomas vs. Mga sanhi
  • Black-Box vs. Pagsubaybay sa White-Box
  • Ibinahagi ang pagsubaybay sa application at pagkakaroon ng server
  • 4 na ginintuang signal (detect ng anomalya)

Paksa Blg. 6: Pagsasanay ng pagsubok sa pagiging maaasahan ng system

  • Nagtatrabaho sa ilalim ng presyon
  • Pagkabigo-iniksyon
  • Chaos Monkey

Paksa #7: Pagsasanay sa pagtugon sa insidente

  • Algorithm sa pamamahala ng stress
  • Pakikipag-ugnayan sa pagitan ng mga kalahok sa insidente
  • Postmortem
  • Pagbabahagi ng kaalaman
  • Paghubog ng kultura
  • Pagsubaybay sa pagkakamali
  • Pagsasagawa ng walang kapintasang debriefing

Paksa #8: Mga Kasanayan sa Pamamahala ng Pagkarga

  • Pagbalanse ng load
  • Application fault tolerance: muling subukan, timeout, failure injection, circuit breaker
  • DDoS (paglikha ng load) + Cascading Failures

Paksa #9: Pagtugon sa Insidente

  • Pagdidiskusyon
  • On-Call Practice
  • Iba't ibang uri ng aksidente (pagsubok, pagbabago ng configuration, pagkabigo ng hardware)
  • Mga protocol sa pamamahala ng insidente

Paksa #10: Diagnosis at paglutas ng problema

  • Pagtotroso
  • Pagde-debug
  • Magsanay ng pagsusuri at pag-debug sa aming application

Paksa #11: Pagsubok sa pagiging maaasahan ng system

  • Pagsusuri ng Stress
  • Pagsubok sa configuration
  • Subukan ang performance
  • Paglabas ng kanaryo

Paksa Blg. 12: Malayang gawain at pagsusuri

Mga rekomendasyon at kinakailangan para sa mga kalahok

Ang SRE ay isang pagsisikap ng pangkat. Lubos naming inirerekomendang kunin ang kurso bilang isang pangkat. Iyon ang dahilan kung bakit nag-aalok kami ng malalaking diskwento para sa mga handa na koponan.

Ang presyo ng kurso ay 60 β‚½ bawat tao.
Kung ang isang kumpanya ay nagpadala ng isang grupo ng 5+ tao - 40 β‚½.

Ang kurso ay binuo sa Kubernetes. Upang makapasa, kailangan mong malaman ang mga Kubernetes sa isang pangunahing antas. Kung hindi mo siya trabaho, maaari kang dumaan sa Slurm Basic (Online o masinsinang Nobyembre 18-20).
Bilang karagdagan, kailangan mong maging bihasa sa Linux at alam ang Gitlab at Prometheus.

rehistrasyon

Kung mayroon kang isang kumplikadong ideya para sa pakikilahok, halimbawa, para sa CEO, CTO at isang pangkat ng mga developer na pumunta sa kurso, at para sa kanila na sumailalim sa isang internship na isinasaalang-alang ang vertical ng pamamahala, sumulat sa akin sa isang personal na mensahe.

Pinagmulan: www.habr.com

Magdagdag ng komento