Orchestra Performance

Wax dhib ah ma noqon doonto in la yiraahdo dadka ugu wanaagsan
rafaad ku hel farxad.
Ludwig van Beethoven

Orchestra Performance

Waxaan ahay Sergey, oo ka shaqeeya Yandex.Money kooxda cilmi-baarista waxqabadka. Waxaan jeclaan lahaa in aan la wadaago bilawga sheekada safarkayaga si aan u isticmaalno abaabulka-sida aan u dooranay qalabka iyo waxa aan tixgelinnay. Wax kasta oo maqaalkan ku jira ayaa dhacaya waqtiga dhabta ah, markaa adiga, akhristayaasha qaaliga ah, waxaad la socon kartaa horumarka si ficil ah.

Maxaynu ugu baahanahay kirishboyga kooxdayada?

Haddaba, waa kuma kirishbooyada? Laga soo bilaabo diiriger-ka Faransiiska-si loo maareeyo, toosiyo, ama loo toosiyo-adduunka muusiga, waa qofka haga barashada iyo waxqabadka muusiga isku-dhafka ah. Xaaladeena, doorkan waxaa qabsaday orchestration iyo hababka otomaatiga ah.

Doorkoodu kama duwana kan kireeyaha ee muusiga - waxay u joogaan inay caawiyaan kooxda, toosiyaan oo habeeyaan waxqabadkooda.

Caadi ahaan, kooxdu waxay leedahay awood gaar ah β€” aynu ugu yeedhno adeegayaasha β€” kuwaas oo ay ku fuliyaan mashaariicdooda.

Habka loo helo iyo u hawlgalinta adeegayaashan way kala duwan tahay. Waa kuwan dhowr tusaale:

  • Kooxdu waxay codsi u dirtaa, tusaale ahaan kooxda hawl-gallada, si ay u siiyaan agabka cabbirro gaar ah.
  • Kooxda hawlgaladu waxay bixiyaan cadadka loo baahan yahay-daruur ama bir qaawan-waxayna ka go'an tahay inay ku sii hayaan xaalad wanaagsan sida uu qabo SLA. Habaynta sidoo kale waxa gacanta ku haya kooxda hawl-gallada.
  • Kooxdu waxa ay kooxda hawlgallada ka heshaa daruur ama agab bir ah oo qaawan, oo iskeed ayay u qaabaynaysaa.
  • Kooxda lafteedu waxay "iibsataa" agabka waxayna u ilaalisaa/u habaysataa si buuxda.

Kooxdayadu waxay adeegsataa adeegayaasha u baahan dayactirka-cusboonaysiinta nidaamka hawlgalka, rakibida xidhmooyin cusub, iwm.

Nafteena, waxaanu u kala saarnay laba nooc oo waaweyn:

  • kooxda taangiyada,
  • kooxda adeegga.

Kooxda taangiyada waxay ka kooban yihiin martigeliyayaal leh Yandex.Tank.

Kooxda adeegga waxaa ku jira wax kasta oo la xiriira dayactirkaβ€”adeegyo kala duwan oo loogu talagalay bixinta taageerada wareegga siideynta, soo saarista warbixinnada tooska ah, iwm.

Hal mar, waxa ay noqotay wax aan haboonayn in gacanta lagu maareeyo waxaas oo dhan, sidaa awgeed waxa aanu bilownay in aanu ka fikirno hab-socodka oo dhan, laga bilaabo habaynta server-ka ilaa horumarinta, geynta, iyo bilaabista adeegayaga gudaha.

Waa maxay sababta kirishbooyada loogu baahan yahay, xitaa haddii kooxda orchestra lafteeda ay ciyaari karto?

Si aan ku bilowno, waxa aanu awoodnay Aansible waxaana aanu bilownay in aanu dhisno server-yadayada birta ah ee qaawan si aan ugu tiirsanaano maamulayaasha nidaamka. Tani waa xaalad guul-guul ah: waxaan helnaa xirfado cusub oo aan ka nafiso maamulayaasha qaar ka mid ah shaqooyinka ay horeba u haysteen. Waxaan ku dadaaleynaa inaan horumarino wax ka baxsan takhasuskeena oo aan hubinno madax-bannaanida kooxda intii suurtagal ah.

Shirkaddu waxay la shaqaynaysay Ansible in muddo ah hadda, markaa waxaan si fudud u dhexgelinay xalkayaga habkan.

Hadda, bixinta martigeliyaha waxay ka kooban tahay saddex door oo macquul ah:

  • doorka ugu horeeya ayaa rakibaya OS,
  • Midka labaad wuxuu wadaa dejinta aasaasiga ah ee martida loo yahay, oggolaanshaha LDAP, tusaale ahaan,
  • iyo tan saddexaad waxay ku rakibtaa Yandex.Tank iyo ku-tiirsanaanta la xidhiidha weelka Docker.

Aan u gudubno adeegyada aan ku isticmaalno kooxda dhexdeeda.

Hawlahayaga, waxaan u isticmaalnaa Kotlin iyo Python si isku mid ah, oo leh Golang yar. Si loo habeeyo horumarinta iyo geynta adeegyadayada, waxaanu go'aansanay inaanu ku xidhno weelasha Docker. Tani waxay ina siinaysaa xoriyada aan ku doorano luuqadeena barnaamijka iyadoo isla mar ahaantaana la xaqiijinayo qaabka gaarsiinta isku midka ah ee codsiyadayada.

Qoraal degdeg ah oo ku saabsan IPV6 gudaha Docker

Qaar ka mid ah adeegyada aan la falgalno waxaa kaliya oo lagu heli karaa IPV6, marka waxay ahayd inaan ogaano sida loogu suurtageliyo IPV6 weelasha.

Marka loo eego dukumeentiyada IPv6 ee ku yaal degelka rasmiga ah ee Docker, IPv6 waxaa karti u leh in lagu daro cabbirada daemon.json:

{
  "ipv6": true,
  "fixed-cidr-v6": "2001:db8:1::/64"
}

Xaaladdan oo kale, bixiyaha waa inuu bixiyaa IPV6 subnet, kaas oo aad geli doonto fixed-cidr-v6.
Si kastaba ha noqotee, waxaan dooranay ikhtiyaar ka duwan - ipv6 NAT, waana tan sababta:

  • Hadda docker ma isticmaali karo kaliya leh iPV6.
  • Haysashada ciwaanka caalamiga ah ee weel kasta waxay ka dhigan tahay in dhammaan dekedaha (xitaa kuwa aan la daabicin) ay heli karaan qof kasta ilaa aan sifeyn dheeraad ah la samayn.
  • userland proxy ee daabacaadda dekedaha, iptables ee loogu talagalay IPv4 kaliya.

IPv6 NAT waa Weelka docker, kaas oo laftiisa maamusha xeerarka ip6tables oo wax ka beddela marka lagu daro weel cusub.

Si uu xalkani si sax ah ugu shaqeeyo, dhawr tillaabo oo kale ayaa loo baahnaa. Waa lama huraan in lagu bilaabo ip6table_nat nidaamka. In moduleka lagu rakibo nidaamka ma dammaanad qaadayso in lagu shubi doono kernel-ka marka la bilaabayo. Waxa aanu la kulanay tan markii aanu helnay khaladkan soo socda markii aanu ku shubnay weel NAT ah martigeliyaha cusub:

2019/01/22 14:59:54 running [/sbin/ip6tables -t filter -N DOCKER --wait]: exit status 3: modprobe: can't change directory to '/lib/modules': No such file or directory
ip6tables v1.6.2: can't initialize ip6tables table `filter': Table does not exist (do you need to insmod?)

Dhibaatada ayaa la xalliyey ka dib markii lagu daray bilawga doorka macquulka ah iyadoo la adeegsanayo moduleka modprobe oo lagu soo raro bilowga OS iyadoo la adeegsanayo lineinfile:

- name: Add ip6table_nat module
 modprobe:
   name: ip6table_nat
   state: present
- name: Add ip6table_nat to boot
 lineinfile:
   path: /etc/modules
   line: 'ip6table_nat'

By habka, waxaa jira mid wanaagsan oo ku saabsan Habr maqaal, kaas oo si kooban oo cad u qeexaya faa'iidooyinka iyo khasaarooyinka tan ama habkaas ee loogu talagalay la shaqaynta IPV6 ee Docker.

Laakin aan u soo laabano su'aashayagii la weydiiyay bilowgii:
Waa maxay sababta kirishbooyada loogu baahan yahay, xitaa haddii kooxda orchestra lafteeda ay ciyaari karto?

Hadda qof kastaa wuu garanayaa sida loogu ciyaaro kooxdeena:

  • habka "buuxinta" server ayaa la abuuray,
  • Horumarinta iyo geynta adeegyadu waa midaysan.

Su'aal macquul ah ayaa soo baxda: sidee ayaan u geyn karnaa, u cusbooneysiin karnaa, oo ula socon karnaa adeegyadeena ku jira weelasha Docker si hufan iyo sida tooska ah ee suurtogalka ah?

Inkasta oo xubin kasta oo ka mid ah kooxda orkestra ay yaqaanaan qaybtooda, way ku wareeri karaan oo way ka leexan karaan qorshihii asalka ahaa. Halkani waa halka aan ku soo gabagabeyno in la'aanteed, orkesterkeenu uusan si fiican u tababaran doonin oo uusan u ciyaari doonin si wadajir ah. Daareeyaha ayaa mas'uul ka ah dhammaan dhinacyada waxqabadka, isaga oo hubinaya in wax walba ay ku mideysan yihiin ku-meel-gaar ah iyo niyadda.

Sidee loo helaa kirishbooye wanaagsan oo leh maalgelin ugu yar?

Mawduuca abaabulka ayaa si fiican ugu horumaray suuqa. Laakin marka hore, aan ka hadalno agabka caawinta ee caawin kara kirishbooyga.

Qunsulka - nidaam bixiya laba hawlood oo waaweyn:

  • helitaanka adeegga,
  • dukaanka qiimaha muhiimka ah ee la qaybiyay.

Kooxdeena, Qunsulka ayaa mas'uul ka noqon doona diiwaangelinta adeegyada iyo kaydinta habayntooda. Waxaa jira laba ikhtiyaar oo diiwaan gelin:

  • Firfircooni waa marka adeeggu isdiiwaangeliyo isagoo isticmaalaya HTTP API;
  • Passive - adeegga waa in lagu diwaan galiyo gacanta.

Vault waa xal kaydinta oo jaangoysa oo midaysa kaydinta sugan iyo maaraynta siraha-passwords, shahaadooyinka.
Waa kuwan faa'iidooyinka aan heli doonno haddii aan isticmaalno qalabkan:

  • Hal xarun oo loogu talagalay abuurista iyo kaydinta siraha, iyo maaraynta meertada noloshooda iyada oo loo marayo HTTP API.
  • Matoorka Sirta Gaadiidka - xogta sireed iyo kala saarid iyada oo aan la kaydin. Waxay sahlaysa wareejinta xogta sir ah ee marinnada isgaarsiineed ee aan la hubin.
  • Nidaamyada gelitaanka ee fudud in la habeeyo.
  • Hantidhawrka helitaanka siraha.
  • Awoodda aad u leedahay in aad abuurto CA (Maamulka Shahaadada) si aad u maamusho shahaadooyinka iskiis u saxeexay ee kaabayaashaaga dhexdiisa.

Iyadoo la tixgalinayo dhammaan shuruudahayada, laba ikhtiyaar ayaa ku habboon doorka kirishbooyada: Kubernetes iyo Nomad.

Kubureteska

Immisa maqaallo iyo buug ayaa hore looga qoray isaga (halkan sida, tusaale ahaan), warbixino ayaa la soo bandhigay, kuwaas oo aan si kooban u soo koobayo: waa qalab caalami ah oo wax kasta qaban kara. Qiimaha tani waa in dejinta iyo dayactirka kutlada Kubernetes aysan mar walba fududeyn.

Nomad

Qalabka oo ka socota HashiCorp, oo ah shirkad caan ku ah qunsulka iyo khasnadda aan soo sheegnay.

Waxaan ogaanay in Nomad uu aad uga sahlan yahay rakibidda iyo habaynta marka loo eego Kubernetes. Midka binary-ga ah wuxuu ku shaqeeyaa server-ka iyo hababka macmiilka labadaba. Intaa waxa dheer, Nomad waxa ay dabooshaa dhammaan hawlaha aanu rabnay in ay qabato: maamulka kooxda, jadwal-dejiye degdeg ah, iyo taageero xog-ururin. Intaa waxaa dheer, isticmaalka qunsulka iyo khasnadda waxay na siinaysaa is-dhexgal adag si loo abaabulo adeegyadeena.

Maxaa hadda ku jira shaqada:

  • server-yada loo diyaariyey in Qunsulka la geeyo,
  • Qunsulka waxa lagu cusboonaysiin doonaa qaabaynta kooxda reer guuraaga, taas oo u ogolaan doonta reer guuraaga in si toos ah loo geeyo,
  • Si barbar socda, waxaan ku rakibi doonaa khasnad lagu kaydiyo siraha.

Su'aal loogu talagalay dhageystayaasha: miyay mudan tahay in la shaqaaleysiiyo kiriyaha hawlahan oo kale, mise kooxda orkestra ayaa si fiican u shaqeyneysa mid la'aan? La wadaag fikradahaaga faallooyinka.

Isdiiwaangeli blog-ka oo la xidhiidh-waxaanu dhawaan kuu sheegi doonaa sida ay wax u dhaceen iyo haddii aanu u samaynay kooxda reer guuraaga sidii aanu rabnay.

Soo gal annaga oo raaxo leh Telegram chat, halkaas oo aad had iyo jeer weydiisan kartaa talo, caawin asxaabta, oo si fudud uga sheekeysan kartaa cilmi-baarista wax soo saarka iyo in ka badan.

Source: www.habr.com

U soo iibso martigelin lagu kalsoonaan karo oo loogu talagalay bogagga leh ilaalinta DDoS, VPS VDS servers πŸ”₯ Iibso martigelin degel oo lagu kalsoonaan karo oo leh ilaalinta DDoS, VPS VDS servers | ProHoster