Web HighLoad - hvernig við stjórnum umferð fyrir tugþúsundir léna

Lögmæt umferð á DDoS-Guard netinu fór nýlega yfir hundrað gígabita á sekúndu. Sem stendur er 50% af allri umferð okkar mynduð af vefþjónustu viðskiptavina. Þetta eru margir tugir þúsunda léna, mjög mismunandi og í flestum tilfellum krefjast einstaklingsbundinnar nálgunar.

Fyrir neðan klippinguna er hvernig við stjórnum framhnútum og gefum út SSL vottorð fyrir hundruð þúsunda vefsvæða.

Web HighLoad - hvernig við stjórnum umferð fyrir tugþúsundir léna

Það er auðvelt að setja upp framhlið fyrir eina síðu, jafnvel mjög stóra. Við tökum nginx eða haproxy eða lighttpd, stillum það í samræmi við leiðbeiningarnar og gleymum því. Ef við þurfum að breyta einhverju gerum við endurhleðslu og gleymum aftur.

Allt breytist þegar þú vinnur úr miklu magni af umferð á flugi, metur lögmæti beiðna, þjappar saman og vistar innihald notenda og á sama tíma breytir breytum nokkrum sinnum á sekúndu. Notandinn vill sjá niðurstöðuna á öllum ytri hnútum strax eftir að hann hefur breytt stillingum á persónulegum reikningi sínum. Notandi getur einnig hlaðið niður nokkur þúsund (og stundum tugum þúsunda) léna með einstökum umferðarvinnslubreytum í gegnum API. Allt þetta ætti líka að virka strax í Ameríku, og í Evrópu og í Asíu - verkefnið er ekki það léttvægasta, miðað við að í Moskvu einni eru nokkrir líkamlega aðskildir síunarhnútar.

Af hverju eru margir stórir áreiðanlegir hnútar um allan heim?

  • Þjónustugæði fyrir umferð viðskiptavina - vinna þarf úr beiðnum frá Bandaríkjunum í Bandaríkjunum (þar á meðal vegna árása, flokkunar og annarra frávika), og ekki draga til Moskvu eða Evrópu, sem eykur vinnslutöfina ófyrirsjáanlega.

  • Árásarumferð verður að vera staðbundin - flutningsaðilar geta minnkað við árásir, en rúmmál þeirra er oft yfir 1Tbps. Það er ekki góð hugmynd að flytja árásarumferð yfir Atlantshafs- eða transasíutengsl. Við höfðum raunveruleg tilvik þegar Tier-1 rekstraraðilar sögðu: „Magn árása sem þú færð er hættulegt fyrir okkur. Þess vegna tökum við við streymum sem berast eins nálægt uppruna þeirra og mögulegt er.

  • Strangar kröfur um samfellda þjónustu - ræstingastöðvar ættu hvorki að vera háðar hver annarri né staðbundnum atburðum í ört breytilegum heimi okkar. Slökktirðu á rafmagni á allar 11 hæðir MMTS-9 í viku? - ekkert mál. Ekki einn viðskiptavinur sem er ekki með líkamlega tengingu á þessum tiltekna stað mun þjást og vefþjónusta mun ekki líða undir neinum kringumstæðum.

Hvernig á að stjórna þessu öllu?

Þjónustustillingum ætti að dreifa til allra fremstu hnúta eins fljótt og auðið er (helst samstundis). Þú getur ekki bara tekið og endurbyggt textastillingar og endurræst púkana við hverja breytingu - sami nginx heldur ferlum niður (starfsmaður stöðvast) í nokkrar mínútur í viðbót (eða kannski klukkutíma ef það eru langar nettengilotur).

Þegar nginx stillingarnar eru endurhlaðnar er eftirfarandi mynd nokkuð eðlileg:

Web HighLoad - hvernig við stjórnum umferð fyrir tugþúsundir léna

Um minnisnotkun:

Web HighLoad - hvernig við stjórnum umferð fyrir tugþúsundir léna

Gamlir starfsmenn éta upp minni, þar á meðal minni sem er ekki línulega háð fjölda tenginga - þetta er eðlilegt. Þegar biðlaratengingum er lokað losnar þetta minni.

Af hverju var þetta ekki vandamál þegar nginx var rétt að byrja? Það var engin HTTP/2, engin WebSocket, engar gríðarlegar langvarandi tengingar. 70% af vefumferð okkar er HTTP/2, sem þýðir mjög langar tengingar.

Lausnin er einföld - ekki nota nginx, ekki hafa umsjón með framhliðum sem byggjast á textaskrám og örugglega ekki senda þjappaða textastillingar yfir rásir sem eru í friðsælu umhverfi. Rásirnar eru að sjálfsögðu tryggðar og fráteknar, en það gerir þær ekki síður milli meginlands.

Við erum með okkar eigin miðlarajafnvægi að framan, innri hluti sem ég mun tala um í eftirfarandi greinum. Aðalatriðið sem það getur gert er að beita þúsundum stillingabreytinga á sekúndu á flugi, án endurræsingar, endurhleðslu, skyndilegrar aukningar á minnisnotkun og allt það. Þetta er mjög svipað og Hot Code Reload, til dæmis í Erlang. Gögnin eru geymd í geo-dreifðum lykilgilda gagnagrunni og eru lesin strax af framvirkum. Þeir. þú hleður upp SSL vottorðinu í gegnum vefviðmótið eða API í Moskvu og eftir nokkrar sekúndur er það tilbúið til að fara í hreinsunarstöðina okkar í Los Angeles. Ef heimsstyrjöld verður skyndilega og internetið hverfur um allan heim, munu hnútar okkar halda áfram að vinna sjálfstætt og gera við klofna heilann um leið og ein af sérstöku rásunum Los Angeles-Amsterdam-Moskvu, Moskvu-Amsterdam-Hong Kong- Los-Los verður fáanlegt. Angeles eða að minnsta kosti ein af GRE öryggisafritunum.

Þetta sama fyrirkomulag gerir okkur kleift að gefa út og endurnýja Let's Encrypt vottorð samstundis. Mjög einfaldlega virkar þetta svona:

  1. Um leið og við sjáum að minnsta kosti eina HTTPS beiðni fyrir lén viðskiptavinar okkar án vottorðs (eða með útrunnið vottorð), tilkynnir ytri hnúturinn sem samþykkti beiðnina þetta til innri vottunaryfirvaldsins.

    Web HighLoad - hvernig við stjórnum umferð fyrir tugþúsundir léna

  2. Ef notandinn hefur ekki bannað útgáfu Let's Encrypt, býr vottunaraðilinn til CSR, fær staðfestingartákn frá LE og sendir það til allra vígstöðva yfir dulkóðaða rás. Nú getur hvaða hnút sem er staðfest staðfestingarbeiðni frá LE.

    Web HighLoad - hvernig við stjórnum umferð fyrir tugþúsundir léna

  3. Eftir örfá augnablik fáum við rétt skilríki og einkalykil og sendum á vígstöðvarnar á sama hátt. Aftur, án þess að endurræsa púkana

    Web HighLoad - hvernig við stjórnum umferð fyrir tugþúsundir léna

  4. 7 dögum fyrir fyrningardag er ferlið við endurmóttöku vottorðsins hafið

Núna erum við að snúa 350 vottorðum í rauntíma, algjörlega gagnsæ fyrir notendur.

Í eftirfarandi greinum seríunnar mun ég tala um aðra eiginleika rauntímavinnslu stórrar vefumferðar - til dæmis um að greina RTT með því að nota ófullnægjandi gögn til að bæta gæði þjónustunnar fyrir flutningsþjónustuaðila og almennt um að vernda flutningsumferð frá terabit árásir, um afhendingu og söfnun umferðarupplýsinga, um WAF, næstum ótakmarkað CDN og margar aðferðir til að hámarka afhendingu efnis.

Aðeins skráðir notendur geta tekið þátt í könnuninni. Skráðu þig inn, takk.

Hvað myndir þú vilja vita fyrst?

  • 14,3%Reiknirit til að klasa og greina gæði vefumferðar<3

  • 33,3%Innri DDoS-Guard7 jafnvægistæki

  • 9,5%Vernd flutnings L3/L4 umferð2

  • 0,0%Að vernda vefsíður fyrir umferðarumferð0

  • 14,3%Vefforritseldveggur 3

  • 28,6%Vörn gegn þáttun og smelli6

21 notendur greiddu atkvæði. 6 notendur sátu hjá.

Heimild: www.habr.com

Bæta við athugasemd