Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1

Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1

Сёння раскажу пра тое, як з'явілася і рэалізавалася ідэя стварэння новай унутранай сеткі для нашай кампаніі. Пазіцыя кіраўніцтва - для сябе трэба зрабіць такі ж паўнавартасны праект, як для кліента. Калі зробім добра для сябе - зможам запрасіць заказчыка і паказаць, наколькі добра ўладкована і працуе тое, што мы яму прапануем. Таму да прапрацоўкі канцэпта новай сеткі для маскоўскага офіса мы падышлі вельмі грунтоўна, выкарыстаўшы поўны вытворчы цыкл: аналіз запатрабаванняў аддзелаў → выбар тэхнічнага рашэння → праектаванне → рэалізацыя → тэсціраванне. Такім чынам, пачынаем.

Выбар тэхнічнага рашэння: запаведнік мутантаў

Парадак працы над складанай аўтаматызаванай сістэмай пакуль лепш за ўсё апісаны ў ДАСТ 34.601-90 “Аўтаматызаваныя сістэмы. Стадыі стварэння», таму мы працавалі па ім. І ўжо на стадыях фармавання патрабаванняў і распрацоўкі канцэпцыі мы сутыкнуліся з першымі цяжкасцямі. Арганізацыям рознага профілю - банкам, страхавым кампаніям, распрацоўшчыкам софту і т. п. - пад іх задачы і стандарты патрэбны пэўныя тыпы сетак, спецыфіка якіх зразумелая і стандартызаваная. Аднак з намі такое не пракоціць.

Чаму?

"Інфасістэмы Джет" – буйная шматпрофільная ІТ-кампанія. Пры гэтым аддзел унутранай падтрымкі ў нас невялікі (але ганарлівы), ён забяспечвае працаздольнасць базавых сэрвісаў і сістэм. Кампанія змяшчае ў сабе мноства падраздзяленняў, якія выконваюць розныя функцыі: гэта і некалькі наймагутных аўтсорс-каманд, і ўласныя распрацоўшчыкі бізнес-сістэм, і информбезопасность, і архітэктары вылічальных комплексаў, – увогуле, хто толькі не. Адпаведна, задачы, сістэмы і палітыкі бяспекі ў іх таксама розныя. Што чакана стварыла складанасці ў працэсе аналізу патрэбнасцей і іх стандартызацыі.

Вось, напрыклад, аддзел распрацоўкі: яго супрацоўнікі пішуць і тэсціруюць код для вялікай колькасці заказчыкаў. Часта ўзнікае неабходнасць аператыўна арганізаваць тэставыя асяроддзі, і скажам шчыра, не заўсёды для кожнага праекта ўдаецца сфарміраваць патрабаванні, запытаць рэсурсы і пабудаваць асобнае тэставае асяроддзе ў адпаведнасці з усімі ўнутранымі рэгламентамі. Гэта спараджае кур'ёзныя сітуацыі: аднойчы ваш пакорны слуга зазірнуў у пакой распрацоўнікаў і выявіў пад сталом спраўна які працуе Hadoop-кластар з 20 дэсктопаў, які незразумелай выявай быў падлучаны да агульнай сеткі. Думаю, не варта ўдакладняць, што ІТ-аддзел кампаніі не ведаў аб яго існаванні. Гэта грунтоўна, як і многія іншыя, сталі вінаватымі ў тым, што ў ходзе распрацоўкі праекта ў нас нарадзіўся тэрмін «запаведнік мутантаў», які апісвае стан шматпакутнай інфраструктуры офіса.

Або вось яшчэ прыклад. Перыядычна ўнутры якога-небудзь падраздзялення заводзіцца тэставы стэнд. Так было з Jira і Confluence, якія абмежавана выкарыстоўваліся Цэнтрам праграмнай распрацоўкі ў некаторых праектах. Праз некаторы час аб гэтых карысных рэсурсах даведаліся ў іншых падраздзяленнях, ацанілі, і ў канцы 2018 года Jira і Confluence перайшлі са статусу "лакальная цацка праграмістаў" у статус "рэсурсы кампаніі". Цяпер за гэтымі сістэмамі павінен быць замацаваны ўладальнік, павінны быць вызначаны SLA, палітыкі доступу / ИБ, палітыка рэзервовага капіявання, маніторынгу, правілы маршрутызацыі заявак на ліквідацыю праблем, - увогуле, павінны прысутнічаць усе атрыбуты паўнавартаснай інфармацыйнай сістэмы.
Кожнае наша падраздзяленне - гэта яшчэ і інкубатар, які гадуе ўласныя прадукты. Некаторыя з іх гінуць на стадыі распрацоўкі, нейкія мы выкарыстоўваем у перыяд працы над праектамі, іншыя ж прыжываюцца і становяцца якія тыражуюцца рашэннямі, якія мы пачынаем ужываць самі і прадаваць кліентам. Для кожнай падобнай сістэмы пажадана мець уласнае сеткавае асяроддзе, дзе яно будзе развівацца, не замінаючы іншым сістэмам, і ў нейкі момант зможа быць інтэграваная ў інфраструктуру кампаніі.

Апроч распрацоўкі, у нас ёсць вельмі вялікі сэрвісны цэнтр з больш чым 500 супрацоўнікамі, сфарміраванымі ў каманды пад кожнага заказчыка. Яны займаюцца абслугоўваннем сетак і іншых сістэм, выдаленым маніторынгам, урэгуляваннем заявак, і гэтак далей. Гэта значыць інфраструктура СЦ - гэта, па сутнасці, інфраструктура таго заказчыка, з якім яны цяпер працуюць. Асаблівасць працы з гэтым участкам сеткі заключаецца ў тым, што іх працоўныя станцыі для нашай кампаніі з'яўляюцца часткова знешнімі, а часткова – унутранымі. Таму для СЦ мы рэалізавалі наступны падыход – кампанія прадастаўляе адпаведнаму падраздзяленню сеткавыя і іншыя рэсурсы, разглядаючы працоўныя станцыі гэтых падраздзяленняў як знешнія падключэння (па аналогіі з філіяламі і выдаленымі карыстальнікамі).

Праектаванне магістралі: мы - аператар (сюрпрыз)

Пасля адзнакі ўсіх падводных камянёў мы зразумелі, што ў нас атрымліваецца сетка тэлекамунікацыйнага аператара ў рамках аднаго офіса, і сталі дзейнічаць якая адпавядае выявай.

Стварылі апорную сетку, пры дапамозе якой любому ўнутранаму, а ў даляглядзе і вонкаваму спажыўцу падаецца патрабаваны сэрвіс: L2 VPN, L3 VPN або звычайная маршрутызацыя L3. Адным падраздзяленням патрэбен бяспечны доступ у інтэрнэт, іншым - чысты доступ без міжсеткавых экранаў, але пры гэтым з абаронай нашых карпаратыўных рэсурсаў і апорнай сеткі ад іх трафіку.

З кожным падраздзяленнем мы нефармальна "заключылі SLA". У адпаведнасці з ім усе інцыдэнты, якія ўзнікаюць, павінны ўстараняцца за пэўны, загадзя ўзгоднены прамежак часу. Патрабаванні да сваёй сеткі ў кампаніі аказаліся жорсткімі. Максімальны час рэагавання на інцыдэнт пры збоях тэлефоннай сувязі і электроннай пошты склаў 5 хвілін. Час аднаўлення працаздольнасці сеткі пры тыпавых адмовах - не больш за хвіліну.

Паколькі ў нас сетка аператарскага класа, да яе можна падлучацца толькі ў строгай адпаведнасці з правіламі. Абслугоўваючыя падраздзяленні ўстанаўліваюць палітыкі і прадастаўляюць сэрвісы. Ім нават не патрэбна інфармацыя аб падлучэннях пэўных сервераў, віртуальных машын і працоўных станцый. Але пры гэтым патрэбныя механізмы абароны, таму што ніводнае падлучэнне не павінна выводзіць сетку са строю. Пры выпадковым стварэнні завесы іншыя карыстачы не павінны гэтага заўважаць, гэта значыць неабходна адэкватная рэакцыя сеткі. Любы аператар сувязі ўвесь час вырашае падобныя, здавалася б, складаныя, задачы ўсярэдзіне сваёй апорнай сеткі. Ён дае сэрвіс мноству кліентаў з рознымі патрэбамі і трафікам. Пры гэтым розныя абаненты не павінны адчуваць нязручнасці ад трафіку іншых.
У сябе мы вырашылі гэтую задачу наступным чынам: пабудавалі апорную L3-сетку з поўным рэзерваваннем, з выкарыстаннем пратаколу IS-IS. Па-над апорнай пабудавалі накладзеную сетку на аснове тэхналогіі EVPN/VXLAN, з выкарыстаннем пратакола маршрутызацыі MP-BGP. Для паскарэння збежнасці пратаколаў маршрутызацыі прымянілі тэхналогію BFD.

Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1
Структура сеткі

На выпрабаваннях такая схема паказала сябе выдатна – пры адключэнні любога канала або камутатара час збежнасці не больш за 0.1-0.2 с, губляецца мінімум пакетаў (часта – ніводнага), TCP-сесіі не рвуцца, тэлефонныя размовы не перарываюцца.

Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1
Узровень Underlay - маршрутызацыя

Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1
Узровень Overlay - маршрутызацыя

У якасці камутатараў размеркавання выкарыстоўваліся камутатары Huawei CE6870 з ліцэнзіямі VXLAN. Гэтая прылада мае аптымальнае спалучэнне кошт/якасць, дазваляе падлучаць абанентаў на хуткасці 10 Гбіт/з, і падлучацца да магістралі на хуткасцях 40–100 Гбіт/з, у залежнасці ад выкарыстоўваных трансівераў.

Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1
Камутатары Huawei CE6870

У якасці камутатараў ядра выкарыстоўваліся камутатары Huawei CE8850. З задача - хутка і надзейна перадаваць трафік. Да іх не падлучаюцца ніякія прылады, акрамя камутатараў размеркавання, яны нічога не ведаюць пра VXLAN, таму была абраная мадэль з 32 партамі 40/100 Гбіт/з, з базавай ліцэнзіяй, якая забяспечвае L3-маршрутызацыю і падтрымку пратаколаў IS-IS і MP-BGP .

Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1
Самы ніжні - камутатар ядра Huawei CE8850

На этапе праектавання ўнутры каманды вылілася дыскусія аб тэхналогіях, з дапамогай якіх можна рэалізаваць адмоваўстойлівае падключэнне да вузлоў апорнай сеткі. Наш маскоўскі офіс размяшчаецца ў трох будынках, у нас 7 кросавых памяшканняў, у кожным з якіх было ўсталявана два камутатара размеркавання Huawei CE6870 (яшчэ ў некалькіх кросавых памяшканнях усталёўваліся толькі камутатары доступу). Пры распрацоўцы канцэпцыі сеткі было разгледжана два варыянты рэзервавання:

  • Аб'яднанне камутатараў размеркавання ў абароненай ад збояў стэк ў кожным кросавым памяшканні. Плюсы: прастата і зручнасць наладкі. Мінусы: вышэй верагоднасць выхаду са строю ўсяго стэка пры праяве памылак убудаванага праграмнага забеспячэння сеткавых прылад ("уцечкі памяці" і падобныя).
  • Ужыць тэхналогіі M-LAG і Anycast gateway для падлучэння прылад да камутатараў размеркавання.

У выніку спыніліся на другім варыянце. Ён некалькі складаней у наладзе, але паказаў на практыцы сваю працаздольнасць і высокую надзейнасць.
Разгледзім спачатку падлучэнне канцавых прылад да камутатараў размеркавання:
Як мы спраектавалі і рэалізавалі новую сетку на Huawei у маскоўскім офісе, частка 1
Кросавая

Камутатар доступу, сервер або любая іншая прылада, якое патрабуе адмоваўстойлівага падлучэння, уключаецца ў два камутатара размеркавання. Тэхналогія M-LAG забяспечвае рэзерваванне на канальным узроўні. Мяркуецца, што два камутатара размеркавання выглядаюць для якое падключаецца абсталявання як адна прылада. Рэзерваванне і балансіроўка нагрузкі ажыццяўляюцца па пратаколе LACP.

Тэхналогія Anycast gateway забяспечвае рэзерваванне на сеткавым узроўні. На кожным з камутатараў размеркавання настроена досыць вялікая колькасць VRF (кожны VRF прызначаны для сваіх мэт – асобна для «звычайных» карыстачоў, асобна – для тэлефаніі, асобна – для розных тэставых асяроддзяў і асяроддзяў распрацоўкі, і т. п.), і ў кожным VRF настроена некалькі VLAN. У нашай сетцы камутатары размеркавання з'яўляюцца шлюзамі па змаўчанні для ўсіх прылад, падлучаных да іх. IP-адрасы, якія адпавядаюць інтэрфейсам VLAN, аднолькавыя для абодвух камутатараў размеркавання. Маршрутызацыя трафіку вырабляецца праз бліжэйшы камутатар.

Цяпер разгледзім падлучэнне камутатараў размеркавання да ядра:
Адмаўстойлівасць забяспечваецца на сеткавым узроўні, па пратаколе IS-IS. Звярніце ўвагу - паміж камутатарамі прадугледжана асобная лінія сувязі L3, на хуткасці 100G. Фізічна гэтая лінія сувязі ўяўляе сабой кабель Direct Access, яго можна ўбачыць справа на фатаграфіі камутатараў Huawei CE6870.

Альтэрнатывай было б арганізаваць «сумленную» полносвязную тапалогію «двайная зорка», але, як было сказана вышэй, у нас 7 кросавых памяшканняў у трох будынках. Адпаведна, калі б мы абралі тапалогію «двайная зорка», то нам бы спатрэбілася роўна ў два разы больш «дальнабойных» трансівераў 40G. Эканомія тут вельмі істотная.

Трэба сказаць некалькі слоў аб тым, як сумесна працуюць тэхналогіі VXLAN і Anycast gateway. VXLAN, калі не ўдавацца ў дэталі - гэта тунэль для транспарціроўкі кадраў Ethernet ўнутры пакетаў UDP. У якасці мэтавага (destination) IP-адрасы VXLAN-тунэля выкарыстоўваюцца loopback-інтэрфейсы камутатараў размеркавання. У кожнай кросавай усталяваныя два камутатара з аднолькавымі адрасамі loopback-інтэрфейсаў, адпаведна пакет можа прыйсці на любы з іх, і з яго можа быць выняты кадр Ethernet.

Калі камутатар ведае аб мэтавым MAC-адрасе вынятага кадра, кадр будзе карэктна дастаўлены па прызначэнні. За тое, каб абодва камутатара размеркавання, усталяваныя ў адной кросавай, мелі актуальную інфармацыю аб усіх MAC-адрасах, «якія прылятаюць» з камутатараў доступу, адказвае механізм M-LAG, які прадугледжвае сінхранізацыю табліц MAC-адрасоў (а таксама ARP-табліц) на абодвух камутатарах M-LAG-пары.

Балансаванне трафіку дасягаецца дзякуючы наяўнасці ў underlay-сеткі некалькіх маршрутаў на loopback-інтэрфейсы камутатараў размеркавання.

замест заключэння

Як ужо было сказана вышэй, на выпрабаваннях і ў працы сетка паказала высокую надзейнасць (час аднаўлення пры тыпавых адмовах не больш за сотню мілісекунд) і добрую прадукцыйнасць — кожная кросавая злучана з ядром двума каналамі па 40 Гбіт/з. Камутатары доступу ў нашай сетцы аб'ядноўваюцца ў стэкі і падлучаюцца да камутатараў размеркавання па LACP/M-LAG двума каналамі па 10 Гбіт/з. У стэку звычайна 5 камутатараў па 48 партоў у кожным, да размеркавання ў кожнай кросавай падлучаюцца да 10 стэкаў доступу. Такім чынам, магістраль забяспечвае каля 30 Мбіт/с на карыстача нават пры максімальнай тэарэтычнай загрузцы, што на момант напісання артыкула досыць для ўсіх нашых практычных ужыванняў.

Сетка дазваляе без праблем арганізаваць спалучэнне любых адвольных падлучаных прылад як па L2, так і па L3, забяспечваючы поўную ізаляцыю трафіку (што падабаецца службе інфармацыйнай бяспекі) і даменаў адмоваў (што падабаецца службе эксплуатацыі).

У наступнай частцы раскажам, як мы праводзілі міграцыю на новую сетку. Stay tuned!

Максім Клачкоў
Старэйшы кансультант групы сеткавага аўдыту і комплексных праектаў
Цэнтра сеткавых рашэнняў
«Інфасістэмы Джэт»


Крыніца: habr.com

Дадаць каментар