
U našoj agregaciji lokalne mreže bilo je šest parova preklopnika Arista DCS-7050CX3-32S i jedan par preklopnika Brocade VDX 6940-36Q. Nije da su nas preklopnici Brocade previše opterećivali u ovoj mreži, rade i obavljaju svoje funkcije, ali pripremali smo potpunu automatizaciju nekih radnji, a tu mogućnost nismo imali na tim preklopnicima. Također, željeli smo preći s 40GE sučelja na mogućnost korištenja 100GE, kako bismo osigurali kapacitet za sljedeće 2-3 godine. Tako smo odlučili zamijeniti Brocade s Arista.
Ovi preklopnici su preklopnici agregacije lokalne mreže za svaki podatkovni centar. Na njih se izravno povezuju preklopnici distribucije (druga razina agregacije), koji već okupljaju preklopnike Top-of-Rack lokalne mreže u ormarićima sa serverima.
Svaki server može biti povezan na jedan ili dva preklopnika pristupa. Preklopnici pristupa su povezani s parom preklopnika distribucije (dva preklopnika distribucije i dva fizička linka od preklopnika pristupa do različitih preklopnika distribucije koriste se za rezervaciju).
Svaki server može koristiti svoj klijent, tako da klijent dobiva poseban VLAN. Taj VLAN se zatim postavlja na drugom serveru tog klijenta u bilo kojem ormariću. Podatkovni centar se sastoji od nekoliko takvih nizova (POD-ova), a svaki niz ormarića ima svoje preklopnike distribucije. Nakon toga, ti preklopnici distribucije povezuju se s preklopnicima agregacije.
Klijenti mogu naručiti server u bilo kojem nizu, unaprijed predvidjeti da će server biti dodijeljen ili instaliran u neki određeni niz u neki određeni ormarić nije moguće, stoga na preklopnicima agregacije postoji oko 2500 VLAN-a u svakom podatkovnom centru.
Oprema za DCI (Data-Center Interconnect) povezuje se s preklopnicima agregacije. Ona može biti namijenjena za L2 povezanost (par preklopnika koji čine VXLAN tunel u drugi podatkovni centar), ili za L3 povezanost (dva MPLS usmjerivača).
Kao što sam već napisao, za unifikaciju procesa automatizacije konfiguracije usluga na opremi u jednom data centru, bilo je potrebno zamijeniti centralne agregacijske switcheve. Instalirali smo nove switcheve pored postojećih, spojili ih u MLAG par i počeli se pripremati za radove. Odmah su spojeni s postojećim agregacijskim switchovima, čime su dobili zajednički L2 domen preko svih klijentskih VLAN-ova.
Detalji sheme
Za konkretizaciju nazovimo stare agregacijske switcheve A1 i A2, nove — N1 i N2. Pretpostavimo da se u POD 1 i POD 4 nalaze serveri jednog klijenta C1, klijentov VLAN označen je plavom bojom. Ovaj klijent koristi uslugu L2 povezanosti s drugim data centrom, stoga je njegov VLAN povezan na par VXLAN switcheva.
Klijent C2 smješta servere u POD 2 i POD 3, klijentov VLAN označavamo tamnozelenom bojom. Ovaj klijent također koristi uslugu povezanosti s drugim data centrom, ali L3, pa je njegov VLAN povezan na par L3VPN usmjerivača.
Klijentovi VLAN-ovi su nam potrebni da bismo razumjeli na kojim se fazama radova tijekom zamjene što događa, gdje dolazi do prekida veze te kolika može biti njegova trajnost. STP protokol se u ovoj shemi ne koristi, jer bi širina stabla za njega u tom slučaju bila velika, a konvergencija protokola raste u geometrijskoj progresiji s brojem uređaja i poveznica između njih.
Svi uređaji spojeni dvostrukim poveznicama čine stek, MLAG par ili VCS Ethernet tvornicu. Za par L3VPN usmjerivača takve tehnologije se ne koriste, jer nema potrebe za rezervacijom L2, dovoljno je da imaju L2 povezanost jedni s drugima preko agregacijskih switchova.
Opcije implementacije
Pri analizi opcija daljnjih događaja shvatili smo da postoje nekoliko načina za izvođenje ovih radova. Od globalnog prekida na cijeloj lokalnoj mreži do malih doslovno 1-2 sekunde dugih prekida u dijelovima mreže.
Mreža, stanite! Switchevi, mijenjajte se!
Najlakši način je, naravno, proglasiti globalni prekid veze za sve POD-ove i sve usluge DCI te prebaciti sve linkove iz switchova A u switcheve N.
Osim prekida, čije vrijeme ne možemo jamčiti (da, znamo broj linkova, ali ne znamo koliko puta nešto može poći po zlu — od slomljenog patch kabela ili oštećenog konektora do kvara porta ili transivera), također ne možemo unaprijed predvidjeti hoće li dužina patch kablova, DAC, AOC koji su povezani na stare switcheve A biti dovoljni da dođu do novih switcheva N koji su iako su u blizini, ipak malo pomjerani, te hoće li isti transiveri / DAC / AOC iz Brocade switcha raditi u Arista switchevima.
I sve to pod strogim pritiskom klijenata i tehničke podrške („Natasha, ustani! Natasha, ništa ne radi! Natasha, već smo kontaktirali tehničku podršku, iskreno! Natasha, sve su već srušili! Natasha, koliko još neće raditi? Natasha, kada će raditi?!“). Čak i unatoč unaprijed najavljenom prekidu i obavijesti klijentima, priliv upita u to vrijeme je zajamčen.
Stani, 1-2-3-4!
A ako ne najavimo globalni prekid, nego najavimo seriju malih prekida veze po POD-u i DCI uslugama. U prvom prekidu prebaciti na switcheve N samo POD 1, u drugom — za nekoliko dana — POD 2, zatim još nekoliko dana POD 3, dalje POD 4…[N], zatim VXLAN switchevi i nakon toga L3VPN ruteri.
Ovom organizacijom rada na prebacivanju smanjujemo složenost simultanih radova i povećavamo vrijeme za rješavanje problema ako nešto iznenada pođe po zlu. Povezanost POD 1 nakon prebacivanja s drugim POD-ovima i DCI se ne gubi. Međutim, sami radovi se odlažu na duže, tijekom tih radova u data centru potrebno je osigurati inženjera za fizičko obavljanje prebacivanja, a tijekom radova (a takvi se radovi obično obavljaju noću, od 2 do 5 ujutro) potrebno je imati online mrežnog inženjera visoke kvalifikacije. Ali dobijamo kratke prekide veze, obično se radovi mogu provesti u intervalu od pola sata s prekidom do 2 minute (u praksi, često 20-30 sekundi pri očekivanom ponašanju opreme).
U datom primjeru klijenta C1 ili klijenta C2 Bit će potrebno upozoriti o radovima s prekidom veze barem tri puta — prvi put za izvođenje radova na jednom POD-u, u kojem se nalazi jedan njegov server, drugi put — za drugi, i treći put — prilikom prebacivanja opreme za DCI usluge.
Prebacivanje agregiranih komunikacijskih kanala
Zašto govorimo o očekivanom ponašanju opreme i kako se mogu s minimalnim prekidom veze prebacivati agregirani kanali. Zamislimo sljedeću sliku:
S jedne strane veze — distributivni prekidači POD-a — D1 i D2, oni između sebe tvore MLAG par (stek, VCS tvornicu, vPC par), s druge strane dva linka — Link 1 i Link 2 — uključeni su u MLAG par starih agregacijskih prekidača A. Na strani prekidača D formiran je agregirani sučelj s nazivom Port-channel A, na strani agregacijskih prekidača A — agregirani sučelj s nazivom Port-channel D.
Agregirani sučelja u svom radu koriste LACP, tj. prekidači s obje strane redovito razmjenjuju LACPDU pakete preko oba linka, kako bi se uvjerili da su linkovi:
- aktivni;
- uključeni u jedan par uređaja na udaljenoj strani.
Pri razmjeni paketa, u paketu se prenosi vrijednost system-id, koja označava uređaj kojem su ovi linkovi uključeni. Za MLAG par (stek, tvornicu itd.) vrijednost system-id za uređaje koji čine agregirani sučelj je ista. Prekidač D1 šalje u Link 1 vrijednost system-id D, i prekidač D2 šalje u Link 2 vrijednost system-id D.
Prekidači A1 i A2 analiziraju LACPDU pakete primljene preko jednog sučelja Po D i provjeravaju podudarnost system-id u njima. Ako primljeni system-id preko nekog linka iznenada bude drugačiji od trenutačne aktivne vrijednosti, tada se taj link isključuje iz agregiranog sučelja do ispravke situacije. Trenutno imamo na strani prekidača D trenutnu vrijednost system-id od LACP partnera — A, a na strani prekidača A — trenutnu vrijednost system-id od LACP partnera — D.
U slučaju potrebe za prebacivanjem agregiranog sučelja možemo postupiti na dva različita načina:
Način 1 — Jednostavno
Isključiti oba linka iz prekidača A.Pri tome agregirani kanal ne radi.
Uključiti oba linka naizmjenično u prekidače N, tada će se ponovno izvršiti usklađivanje parametara rada LACP, formiranje sučelja Po D na prekidačima N i prijenos na linkovima vrijednosti system-id N.
Metoda 2 — Smanjenje prekida
Isključite iz prekidača A2 vezu Link 2. U tom slučaju, promet između A i D nastavlja se prenositi samo putem jednog od linkova koji ostaje u sastavu agregiranog sučelja.
Priključite Link 2 na prekidač N2. Na prekidaču N već je postavljeno agregirano sučelje Po DN, i prekidač N2 započinje prijenos u LACPDU system-id N. U ovoj fazi možemo već provjeriti da prekidač N2 ispravno radi s transiverom koji se koristi za Link 2, da je port povezivanja prešao u stanje Up, i da prilikom prijenosa LACPDU ne dolazi do grešaka na portu povezivanja.
Ali činjenica da prekidač D2 za agregirano sučelje Po A s strane Link 2 dobiva vrijednost system-id N, koja se razlikuje od trenutne radne vrijednosti system-id A, ne dopušta prekidačima D da unesu Link 2 u sastav agregiranog sučelja. Po APrekidač N ne može uvesti Link 2 u rad, jer ne prima potvrdu o operabilnosti od LACP partnera prekidača D2. Promet na kraju ne prolazi preko Link 2 .
A sada isključujemo Link 1 iz prekidača A1, čime oduzimamo prekidačima A i D aktivnog agregiranog sučelja. Tako na strani prekidača D nestaje trenutna radna vrijednost system-id za sučelje Po A.
To omogućava prekidačima D i N dogovor o razmjeni system-id A-N na sučeljima Po A i Po DN, tako da promet počinje prolaziti putem linka Link 2. Prekid u ovom slučaju iznosi, u praksi, do 2 sekunde.
A sada mirno prebacujemo Link 1 na prekidač N1, obnavljajući kapacitet i razinu rezervacije sučelja Po A i Po DN. Budući da prilikom spajanja ovog linka ne mijenja trenutnu vrijednost system-id s nijedne strane, prekid se ne događa.
Dodatni linkovi
No, prebacivanje se može izvršiti bez prisutnosti inženjera u trenutku prebacivanja. Za to ćemo unaprijed postaviti dodatne linkove između distributivnih prekidača D i novim agregacijskoj prekidačima N.
Postavljamo nove linkove među agregacijskim prekidačima N i distributivnim prekidačima svih POD-ova. To zahtijeva naručivanje i postavljanje dodatnih patch-kabela, kao i instalaciju dodatnih transivera i N, tako i u D. To možemo učiniti, jer na našim prekidačima D svakog POD-a imamo slobodne portove (ili ih prethodno oslobađamo). Na kraju je svaki POD fizički povezan s dva linka na stare switcheve A i nove switcheve N.
Na switchu D formirana su dva agregirana sučelja — Po A s linkovima Link 1 i Link 2, i Po N — s linkovima Link N1 i Link N2. U ovoj fazi provjeravamo ispravnost povezivanja sučelja i linkova, razine optičkih signala na oba kraja linkova (putem DDM informacija sa switcheva), možemo čak provjeriti funkcionalnost linka pod opterećenjem ili nadgledati stanje optičkih signala i temperature transceivera tijekom nekoliko dana.
Promet se i dalje prenosi preko sučelja Po A, a sučelje Po N je bez prometa. Postavke na sučeljima su otprilike sljedeće:
Sučelje Port-channel A
Switchport mode trunk
Switchport allowed vlan C1, C2
Sučelje Port-channel N
Switchport mode trunk
Switchport allowed vlan noneSwitchevi D obično podržavaju sesijsko mijenjanje konfiguracije, koriste se modeli switcheva koji imaju ovu funkcionalnost. Tako da promjenu postavki sučelja Po A i Po N možemo napraviti u jednom potezu:
Konfiguriraj sesiju
Sučelje Port-channel A
Switchport allowed vlan none
Sučelje Port-channel N
Switchport allowed vlan C1, C2
ZavršitiTada će se promjena konfiguracije dogoditi dovoljno brzo, a prekid će u praksi trajati ne više od 5 sekundi.
Ovaj način omogućava nam da unaprijed obavimo sve pripremne radove, izvršimo sve potrebne provjere, uskladimo radove s učesnicima procesa, detaljno predvidimo radnje u proizvodnji radova, bez kreativnih skretanja kada "sve nije išlo kako treba", i imamo na raspolaganju plan za povratak na prethodnu konfiguraciju. Radovi po ovom planu izvode se od strane mrežnog inženjera bez prisutnosti inženjera data centra na licu mjesta, koji fizički izvršava prebacivanja.
Što je još važno pri ovakvom načinu prebacivanja — svi novi linkovi već su unaprijed postavljeni na nadzor. Greške, uključivanje linkova u agregat, opterećenje linkova — sve potrebne informacije su već u sustavu nadzora i to je već prikazano na kartama.
D-Day
POD
Odabrali smo najmanje bolnu opciju za klijente i najmanje sklonoj varijantama "nešto je krenulo po zlu" način prebacivanja s dodatnim linkovima. Tako smo u par noći prebacili sve POD-ove na nove agregacijske switcheve.
Ali preostaje prebaciti opremu koja osigurava DCI usluge.
L2
U slučaju opreme koja osigurava L2 povezanost, nismo mogli izvršiti slične radove s dodatnim vezama. Razlozi za to su najmanje dva:
- Nedostatak slobodnih portova potrebne brzine na VXLAN preklopnicima.
- Nedostatak funkcionalnosti za promjenu konfiguracije sesije na VXLAN preklopnicima.
Prebacivanje veza ‘jedan po jedan’ sa prekidom samo za vrijeme usklađivanja novog para system-id nismo izveli, jer nismo imali 100% sigurnosti da će postupak proći ispravno, a test u laboratoriju je pokazao da, u slučaju da ‘nešto ne ide kako treba’, ipak dobivamo prekid veze, i što je najgore — ne samo za klijente koji imaju L2 povezanost s drugim data centrima, već i za sve klijente ovog data centra.
Unaprijed smo proveli kampanju za prelazak s L2 kanala, stoga je broj klijenata pogođenih radovima na VXLAN preklopnicima bio nekoliko puta manji nego prošle godine. Na kraju smo se odlučili za prekid veze po usluzi L2 povezanosti pod uvjetom da zadržimo normalan rad usluga lokalne mreže u jednom data centru. Osim toga, SLA za ovu uslugu predviđa mogućnost izvođenja planiranih radova s prekidom.
L3
Zašto smo preporučili svima da pređu na korištenje L3VPN-a prilikom organiziranja DCI usluga? Jedan od razloga je mogućnost izvođenja radova na jednom od usmjerivača koji pružaju ovu uslugu, jednostavno smanjujući razinu rezervacije na N+0, bez prekida veze.
Pogledajmo shemu pružanja usluge pomnije. U ovoj usluzi L2 segment ide od klijentskih poslužitelja samo do L3VPN usmjerivača Selectel. Na usmjerivačima se terminira klijentska mreža.
Svaki klijentov server, na primjer, S2 i S3 u prikazanoj shemi, ima svoju privatnu IP adrese — 10.0.0.2/24 za server S2 i 10.0.0.3/24 za server S3. Adrese 10.0.0.252/24 i 10.0.0.253/24 pripremaju se s strane Selectel na usmjerivače L3VPN-1 i L3VPN-2, redom. IP adresa 10.0.0.254/24 je VRRP VIP adresa na usmjerivačima Selectel.
Detaljnije o usluzi L3VPN možete pročitati na našem blogu.
Do trenutka prebacivanja, sve je izgledalo otprilike kao na shemi:
Dva usmjerivača L3VPN-1 i L3VPN-2 bila su povezana na stari agregacijski preklopnik A. Master za VRRP VIP adresu 10.0.0.254 je usmjerivač L3VPN-1On ima postavljen viši prioritet na ovu adresu nego router. L3VPN-2.
unit 1006 {
description C2;
vlan-id 1006;
family inet {
address 10.0.0.252/24 {
vrrp-group 1 {
priority 200;
virtual-address 10.100.0.254;
preempt {
hold-time 120;
}
accept-data;
}
}
}
}Server S2 koristi gateway 10.0.0.254 za komunikaciju sa serverima na drugim lokacijama. Stoga, isključenje iz mreže routera L3VPN-2 (naravno, nakon njegovog isključivanja iz MPLS domene) ne utiče na povezanost servera klijenta. U tom trenutku samo se smanjuje nivo rezervacije sheme.
Nakon toga možemo mirno ponovo spojiti router. L3VPN-2 na par switch-eva. N. Postaviti linkove, promeniti transiveri. Logički interfejsi routera, od kojih zavisi rad usluga za klijente, su isključeni do trenutka potvrde da sve funkcioniše kako treba.
Nakon provere linkova, transivera, nivoa signala, nivoa grešaka na interfejsima, router se aktivira, ali već povezan na novu par switch-eva.
Nakon toga smanjujemo VRRP prioritet routeru L3VPN-1 i VIP adresa 10.0.0.254 se prenosi na router L3VPN-2. Ovi radovi se takođe obavljaju bez prekida u komunikaciji.
Prijenos VIP adrese 10.0.0.254 na router. L3VPN-2 omogućava isključenje routera. L3VPN-1 bez prekida u komunikaciji za klijenta i njegovo povezivanje na novu par switch-eva agregacije. N.
Vratiti VRRP VIP na router L3VPN-1 ili ne — to je već drugo pitanje, a ako se vraća, to se radi bez prekida u komunikaciji.
U konačnici
Nakon svih ovih akcija zapravo smo zamenili switch-eve agregacije u jednom od naših data centara, minimizirajući time prekide za naše klijente.
Dalje ostaje samo demontaža. Demontaža starih switch-eva, demontaža starih linkova između switch-eva A i D, demontaža transivera sa tih linkova, ispravka monitoringa, ispravka sheme mreže u dokumentaciji i monitoringu.
Switch-evi, transiveri, patch-cordovi, AOC, DAC preostali nakon prebacivanja, možemo koristiti u drugim projektima ili pri drugim sličnim prebacivanjima.
„Natasha, sve smo prebacili!“
Izvor: habr.com
