Серверге башкы-кампадагы bond, фабрикага all-active Ethernet сегментин коюңуз, жана кайтарылган трафиктин жарымы бир да ката эсептегичи кыймылдабастан жок болушу мүмкүн. Эки конфигурациянын экөө тең өз алдынча туура эмес эмес. Маселе алардын ортосундагы өткөрүп берүүдө: бир тарап бир портту тандаса, экинчиси ар бир туташкан leaf жеткире алат деп болжолдойт. Ар бир багытта бир кадрды ээрчип көрүңүз, шайкешсиздик айкын болот.

Башкы-кампадагы кирүүчү кадрга эмне кылат

Bonding режими 1 жөнөтүү жолунда так бир slave кармайт жана аны учурдагысы иштен чыкканда гана алмаштырат. Бул бөлүк жакшы белгилүү. Бул жерде маанилүүсү кабыл алуу тарабы: ядро кадрды стекке slave активдүү болгондо гана берет, ал эми башка slave'де пайда болгон кадрларды таштайт. Бул all_slaves_active жөндөө так ошол эрежени жумшартуу үчүн бар жана демейки боюнча өчүк. ip -d link show bond0 учурдагы маанини режимдин жанына басып чыгарат.

/proc/net/bonding/bond0 активдүү slave'ди атайт жана ар бир slave үчүн шилтеме абалын билдирет. Ошол файл кайсы порт азыр трафик ташып жатканы тууралуу жалгыз чынчыл булак.

Бул режимдеги хосттун бир убакта бир гана колдонууга боло турган кабыл алуу жолу бар, ал фабрика тууралуу билими жок жергиликтүү түрдө тандалат. Эгер ошол хостко арналган кадр башка кабель менен келсе, коммутатордун порту аны кабыл алынган деп эсептейт, хосттун стеги аны эч качан көрбөйт, ал эми хосттун өз таштоо эсептегичинен башка бардык эсептегичтер толук соо көрүнөт.

All-active multihoming алыскы кийинки хопко эмне кылат

EVPN multihoming ESI менен аныкталган бир Ethernet сегментин бөлүшкөн leaf'тердин жыйындысын сүрөттөйт жана ошол сегментти фабриканын калган бөлүгүнө жарыялайт. All-active моделинде алыскы peer'лер сегменттин дареги үчүн бирден көп кийинки хоп орнотушат. Сервер тарапка unicast анда каалаган leaf'ке жетиши мүмкүн, ал эми фабрика ар бир агым үчүн эркин тандай алат. Бул долбоордун бүткүл мааниси жана сервердин bond'у аткарышы керек болгон божомол да.

Ташкындаган трафик башка эрежеге баш ийет. Leaf'тер ар бир сегмент үчүн дайындалган forwarder'ди тандашат, ошондуктан broadcast, белгисиз unicast жана multicast адатта алардын бири аркылуу кирет. Ошентип unicast менен ташкын эки өзүнчө чечим кабыл алат жана алардын бири гана хосттун bond абалында көрүнөт.

Эки тандоо кайсы жерде макулдашпайт

Ядро өзүнүн активдүү slave'ин шилтеме абалынан жана өз саясатынан тандайт. Фабрика кийинки хопторду EVPN маршруттарынан, ал эми дайындалган forwarder'ди leaf'тердин ортосундагы тандоодон тандайт. Эки процесстин эч бири экинчиси менен кеңешпейт. Алар ар башка leaf'терди тандаса, бузулуу багытка көз каранды: сервер жөнөткөн нерсе кадимкидей чыгат, ал эми жооптор жок болот.

Эки колдоого алынган чыгуу жолу бар жана алар бирин-бири алмаштырбайт. Хостко фабрика бир логикалык туташуу катары карай ала турган bond бериңиз, бул иш жүзүндө leaf'тер менен келишилген LACP bond'ду билдирет жана эки шилтеме тең чындыгында чогуу активдүү. Же фабрикадан single-active жеткирүүнү да кабыл алыңыз, ошондо сегмент bond'го окшош бир-порт-кезеги менен моделин аткарат. Иштебегени — бир гана портто уга турган bond'дун алдындагы all-active сегмент, эгер сиз атайын түрдө активдүү эмес slave'дерде кабыл алууну күйгүзүп, андан кийин келүүчү кош жеткирүүнү кабыл албасаңыз.

Резервдик кабель эмне үчүн соо көрүнө берет

Трафик ташыбаган кабель да шилтемени жогору деп билдирет, ал эми bond'догу күтүүчү slave даяр көрүнүүгө арналган. Операторлор муну ашыкчалык деп окуп, суроо берүүнү токтотушат.

Анын ордуна кайтарылган кадр кайсы физикалык портту колдонгонун сураңыз. Хостто кабыл алынган пакеттерди bond боюнча эмес, slave боюнча санаңыз, анткени bond'дун эсептегичи асимметрияны жашырат. Leaf'те караңыз сервердин MAC дареги үчүн көпүрөнүн жөнөтүү жазууларын жана EVPN маршруту ташыган кийинки хоптор жыйындысын. Эгер жазуу хосттун шилтемеси резервдик болгон leaf'ти көрсөтсө, долбоор хост этибарга албаган портко жеткирип жатат. Бул аппараттык бузулуу эмес, конфигурация шайкешсиздиги жана шилтеме абалын канча байкасаңыз да ал бетке чыкпайт.

Жеткирүүнү эки багытта тең сынаңыз, шилтеме абалын эмес

Ар бир бузулуу үчүн бир сап жана ар бир багыт үчүн бир мамыча бар матрица куруп, анан интерфейс абалынын ордуна жеткирилген трафикти толтуруңуз. Биринчи сап кадимки иш, жана шайкешсиздик дал ошол жерде жашырылат, анткени белги колдонмо көйгөйүнө окшош.

Андан кийин активдүү хост шилтемесин алып салыңыз, бир leaf'ти алып салыңыз, ошол leaf'тин uplink'терин алып салыңыз жана ар бирин кезеги менен калыбына келтириңиз. Ар бир кадамдан кийин активдүү slave'ди, EVPN сегментинин абалын, алыскы жөнөтүү жазуусун жана эки багытта байкалган өткөрүү жөндөмүн жазып алыңыз. Хост шилтемеси жогору турганда фабрика жолун жоготкон leaf кызыктуу учур, анткени туташуу жарыяланган бойдон калат жана үнсүз туюкка айланышы мүмкүн. Жаңы unicast агымдары менен жана колдонмо көз каранды болгон ташкындаган трафик менен сынаңыз, анткени экөө ар башка жөнөтүү чечимдерин колдонот.

Долбоорду матрица сиз көздөгөн жол аркылуу эки тараптуу жеткирүүнү көрсөткөндө гана кабыл алыңыз. Шилтемеси жогору эки кабель — бул натыйжа эмес.

Тектеш макалалар