Балансирање оптерећења помоћу АВС ЕЛБ-а

Здраво свима! Курс почиње данас „АВС за програмере“, у вези са којим смо одржали одговарајући тематски вебинар посвећен ЕЛБ смотри. Погледали смо типове балансера и направили неколико ЕЦ2 инстанци са балансером. Проучили смо и друге примере употребе.

Балансирање оптерећења помоћу АВС ЕЛБ-а

Након слушања вебинара, Хоћеш:

  • разуме шта је АВС балансирање оптерећења;
  • познају типове еластичног балансера оптерећења и његове компоненте;
  • користите АВС ЕЛБ у својој пракси.

Зашто ово уопште треба да знате?

  • корисно ако планирате да полажете испите за АВС сертификацију;
  • ово је једноставан начин расподеле оптерећења између сервера;
  • Ово је једноставан начин да додате Ламбда у вашу услугу (АЛБ).

Одржали отворену лекцију Рисхат Терегулов, систем инжењер у маркетиншкој компанији за развој и подршку веб сајтова.

Увод

Шта је еластични балансер оптерећења може се видети на дијаграму испод, који показује једноставан пример:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Лоад Баланцер прихвата захтеве и дистрибуира их по инстанцама. Имамо једну засебну инстанцу, постоје Ламбда функције и постоји група АутоСцалинг (група сервера).

АВС ЕЛБ типови

1. Хајде да погледамо главне врсте:

Класични балансер оптерећења. Први балансатор оптерећења из АВС-а, ради на ОСИ слоју 4 и слоју 7, подржавајући ХТТП, ХТТПС, ТЦП и ССЛ. Пружа основно балансирање оптерећења на више Амазон ЕЦ2 инстанци и ради на нивоу захтева и везе. Хајде да га отворимо (истакнуто сивом):

Балансирање оптерећења помоћу АВС ЕЛБ-а

Овај балансер се сматра застарелим, па се препоручује за употребу само у одређеним случајевима. На пример, за апликације које су изграђене на ЕЦ2‑Цлассиц мрежи. У принципу, нико нас не спречава да га креирамо:

Балансирање оптерећења помоћу АВС ЕЛБ-а

2. Мрежни балансер оптерећења. Погодно за велика оптерећења, ради на ОСИ слоју 4 (може се користити у ЕКС и ЕЦС), подржани су ТЦП, УДП и ТЛС.

Нетворк Лоад Баланцер усмерава саобраћај ка циљевима у Амазон ВПЦ-у и способан је да обради милионе захтева у секунди са ултра-ниским кашњењем. Поред тога, оптимизован је за руковање обрасцима саобраћаја са изненадним и променљивим оптерећењима.

3. Балансер оптерећења апликација. Ради на слоју 7, има Ламбда подршку, подржава правила нивоа заглавља и путање, подржава ХТТП и ХТТПС.
Пружа напредно рутирање захтева фокусирано на испоруку апликација изграђених на модерним архитектурама, укључујући микросервисе и контејнере. Усмерава саобраћај ка циљевима у Амазон ВПЦ-у на основу садржаја захтева.

За многе кориснике, Апплицатион Лоад Баланцер је био први избор да замени класични Лоад Баланцер, јер ТЦП није тако уобичајен као ХТТП.

Хајде да га креирамо, као резултат тога, већ ћемо имати два балансера оптерећења:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Компоненте баланса оптерећења

Заједничке компоненте равнотеже оптерећења (заједничко за све балансере):

  • Приступ политици евидентирања

— ваше ЕЛБ евиденције приступа. Да бисте извршили подешавања, можете да одете на Опис и изаберете дугме „Уреди атрибуте“:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Затим наводимо С3Буцкет - складиште Амазон објеката:

Балансирање оптерећења помоћу АВС ЕЛБ-а

  • Шема

— унутрашњи или екстерни балансер. Поента је да ли ваш ЛоадБаланцер мора да прими екстерне адресе да би био доступан споља, или то може бити ваш интерни балансатор оптерећења;

  • Сигурносне групе

— контрола приступа балансу. У суштини ово је заштитни зид високог нивоа.

Балансирање оптерећења помоћу АВС ЕЛБ-а

Балансирање оптерећења помоћу АВС ЕЛБ-а

  • Подмреже

— подмреже унутар вашег ВПЦ (и, сходно томе, зона доступности). Подмреже се специфицирају током креирања. Ако су ВПЦ-ови ограничени регионом, онда су подмреже ограничене зонама доступности. Када креирате Лоад Баланцер, боље је да га креирате у најмање две подмреже (помаже ако дође до проблема са једном зоном доступности);

  • Слушалице

— ваши протоколи за балансирање. Као што је раније поменуто, за Цлассиц Лоад Баланцер то може бити ХТТП, ХТТПС, ТЦП и ССЛ, за Нетворк Лоад Баланцер - ТЦП, УДП и ТЛС, за Апплицатион Лоад Баланцер - ХТТП и ХТТПС.

Пример за класични балансер оптерећења:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Али у апликацији за балансирање оптерећења видимо мало другачији интерфејс и генерално другачију логику:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Компоненте Лоад Баланцер в2 (АЛБ и НЛБ)

Сада погледајмо ближе балансере верзије 2 Апплицатион Лоад Баланцер и Нетворк Лоад Баланцер. Ови балансери имају своје карактеристике компоненти. На пример, појавио се концепт као што су циљне групе - инстанце (и функције). Захваљујући овој компоненти, имамо могућност да прецизирамо на коју од циљних група желимо да усмеримо саобраћај.

Балансирање оптерећења помоћу АВС ЕЛБ-а

Балансирање оптерећења помоћу АВС ЕЛБ-а

Једноставно речено, у циљним групама наводимо случајеве у које ће доћи саобраћај. Ако у истом класичном балансеру оптерећења једноставно одмах повежете интензитет са балансером, онда у апликацијском балансеру оптерећења прво:

  • креирајте балансер оптерећења;
  • креирајте циљну групу;
  • директно преко потребних портова или правила Лоад Баланцера до потребних циљних група;
  • у Циљним групама додељујете инстанце.

Ова оперативна логика може изгледати компликованија, али у ствари је згоднија.

Следећа компонента је Правила слушаоца (правила за рутирање). Ово се односи само на апликацију за балансирање оптерећења. Ако у Нетворк Лоад Баланцер једноставно креирате слушалац и он шаље саобраћај одређеној циљној групи, онда у апликацији за балансирање оптерећења све забавније и згодније.

Балансирање оптерећења помоћу АВС ЕЛБ-а

Хајде сада да кажемо неколико речи о следећој компоненти - Еластиц ИП (статичке адресе за НЛБ). Ако су правила рутирања правила слушаоца утицала само на балансер оптерећења апликације, онда је Еластиц ИП утицао само на балансер оптерећења мреже.

Хајде да направимо балансер мрежног оптерећења:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Балансирање оптерећења помоћу АВС ЕЛБ-а

И тек током процеса креирања видећемо да нам је дата могућност да изаберемо Еластиц ИП:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Еластична ИП адреса обезбеђује једну ИП адресу која се може повезати са различитим ЕЦ2 инстанцама током времена. Ако ЕЦ2 инстанца има Еластиц ИП адресу и та инстанца је прекинута или заустављена, можете одмах да повежете нову ЕЦ2 инстанцу са Еластиц ИП адресом. Међутим, ваша тренутна апликација неће престати да ради, пошто апликације и даље виде исту ИП адресу, чак и ако се прави ЕЦ2 променио.

ovde је други случај употребе на тему зашто је потребан Еластиц ИП. Видите, видимо 3 ИП адресе, али оне неће остати овде заувек:

Балансирање оптерећења помоћу АВС ЕЛБ-а

Амазон их мења током времена, можда сваких 60 секунди (али у пракси, наравно, ређе). То значи да се ИП адресе могу мењати. А у случају Нетворк Лоад Баланцер-а, можете само да повежете ИП адресу и наведете је у својим правилима, смерницама итд.

Балансирање оптерећења помоћу АВС ЕЛБ-а

Извуци закључке

ЕЛБ обезбеђује аутоматску дистрибуцију долазног саобраћаја на више циљева (контејнери, Амазон ЕЦ2 инстанце, ИП адресе и Ламбда функције). ЕЛБ је способан да дистрибуира саобраћај са различитим оптерећењима како унутар једне зоне доступности тако и преко више зона доступности. Корисник може да бира између три типа балансера који пружају високу доступност, аутоматско скалирање и добру заштиту. Све ово је важно како би се осигурала толеранција грешака ваших апликација.

Главне предности:

  • висока доступност. Уговор о услузи претпоставља 99,99% доступности балансера оптерећења. На пример, вишеструке зоне доступности обезбеђују да саобраћај обрађују само здрави објекти. У ствари, можете уравнотежити оптерећење у целом региону, преусмеравајући саобраћај на здраве циљеве у различитим зонама доступности;
  • сигурност. ЕЛБ ради са Амазон ВПЦ, пружајући различите безбедносне могућности - интегрисано управљање сертификатима, аутентификацију корисника и ССЛ/ТЛС дешифровање. Све заједно пружа централизовано и флексибилно управљање ТЛС поставкама;
  • еластичност. ЕЛБ може да поднесе изненадне промене у мрежном саобраћају. Дубока интеграција са аутоматским скалирањем даје апликацији довољно ресурса ако се оптерећење промени, без потребе за ручном интервенцијом;
  • еластичност. Можете да користите ИП адресе за усмеравање захтева ка циљевима ваших апликација. Ово пружа флексибилност при виртуелизацији циљних апликација, чиме се даје могућност хостовања више апликација на једној инстанци. Пошто апликације могу да користе један мрежни порт и да имају одвојене безбедносне групе, комуникација између апликација је поједностављена када имамо, рецимо, архитектуру засновану на микросервисима;
  • праћење и ревизија. Можете да надгледате апликације у реалном времену користећи функције Амазон ЦлоудВатцх. Говоримо о метрикама, евиденцијама, праћењу захтева. Једноставно речено, моћи ћете да идентификујете проблеме и прецизно одредите уска грла у перформансама;
  • хибридно балансирање оптерећења. Могућност балансирања оптерећења између локалних ресурса и АВС-а помоћу истог балансера оптерећења олакшава миграцију или проширење локалних апликација у облак. Руковање кваровима је такође поједностављено коришћењем облака.

Ако сте заинтересовани за детаље, ево још неколико корисних линкова са званичне Амазон веб странице:

  1. Еластично балансирање оптерећења.
  2. Могућности еластичног балансирања оптерећења.

Извор: ввв.хабр.цом

Додај коментар