Која оркестрација контејнера је најбоља за вас?

Многи избори су представљени тимовима информационих технологија (ИТ) приликом покретања контејнерских апликација, адресирајући све нивое техничке стручности.

Може бити тешко изабрати једну, с обзиром на то да након што одаберете, вероватно нећете ускоро прећи на другу опцију.

Овај пост супротставља две тешке опције: Амазон Еластиц Цонтаинер Сервице (ЕЦС) и Кубернетес.

Обе су способне платформе у домену оркестрације контејнера и управљања микроуслугама. А непосредно пре него што кренете даље, освежење на контејнерима не штети. Контејнери су популаризовани за олакшавање развоја, промоције и примене кода у многим окружењима. Они су апстракције на слојевима апликације, умотавање кода са потребним зависностима, библиотекама и поставкама окружења у извршни пакет.

Иако је главни циљ коришћења контејнера да се поједностави процес примене кода, управљање хиљадама контејнера постаје све изазовније. Потребан је још један механизам за имплементацију веома поузданих имплементација, скалирање апликација према оптерећењу, замену нездравих контејнера новим, балансирање оптерећења и откривање портова.

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

Овај део упоређује ЕЦС и Кубернетес, наглашавајући предности сваког од њих, и закључује се упутствима за одабир правог на основу вашег пројекта.

Шта је Амазон ЕЦС?

Амазон ЕЦС је услуга оркестрације контејнера која поједностављује примену, управљање и скалирање контејнерских апликација. У суштини, ви дефинишете своју апликацију и њене потребне ресурсе. Затим, Амазон ЕЦС покреће, надгледа и скалира вашу апликацију преко рачунарских опција, истовремено омогућавајући интеграцију других потребних АВС услуга. На пример, можете проверити статус и програмски модификовати своје кластере.

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

Такође прочитајте: Које АВС ЕЦ2 инстанце треба да користите?

Предности Амазон ЕЦС-а

  • Традиционални ЕЦС – Ова верзија је лансирана 2015. године и покреће је Амазон ЕЦ2 за лако покретање Доцкерс контејнера у облаку. Традиционални ЕЦС вам даје основну контролу над ЕЦ2 опцијама омогућавајући флексибилност. То значи да бирате типове инстанци које желите да покренете на свом контејнеру. Модел вас додатно повезује са другим АВС услугама које можете да користите за надгледање и евиденцију активности на ЕЦ2 инстанцама.
  • Фаргате ЕЦС – Објављен 2017. за покретање контејнера без потребе за управљањем основним ЕЦ2 рачунарским опцијама. Фаргате користи другачији приступ тако што израчунава потребан ЦПУ и меморију. Ако желите да брзо покренете радна оптерећења, ово би могла бити ваша најбоља опција, јер нећете морати да бринете о основним рачунарским опцијама.
  • Поједностављене архитектуре апликација – ЕЦС је добра опција за апликације са неколико микросервиса (оне са мало спољних зависности или имају неколико покретних делова) које раде независно.
  • Лако надгледање и евидентирање – Можете лако да интегришете ЕЦС са АВС алаткама за евидентирање и праћење као што је ЦлоудВатцх. Не морате да конфигуришете видљивост радних оптерећења контејнера, штедећи вам мало времена.
  • Лака крива учења – ЕЦС се лако учи. Хостовани Кубернетес добија већу популарност од традиционалних модела као што су КОПС укуси и Кубеадм.
  • Инфраструктура без сервера – ЕЦС вам омогућава да покренете контејнере без потребе за управљањем виртуелним машинама; поставља контејнере без људске интервенције.
  • Уграђена безбедност – Амазон ЕЦС је подразумевано обезбеђен и каскадно поставља безбедносне мере преко изолованог механизма виртуелног приватног умрежавања.
  •   Најбољи алат за стварање звука који говори кроз текст

    Ограничења ЕЦС-а

  • Ограничено складиштење – Екстерна меморија је искључиво ограничена на Амазон, до Амазон ЕБС.
  • Ограничења валидације – ЕЦС је производ заснован на Амазону, стога није доступан за јавну примену изван Амазона.
  • Закључавање добављача – ЕЦС је пристрасан; може да управља само својим креираним контејнерима.
  • Недоступност ЕЦС кода – Велики део ЕЦС кода није јавно доступан. Алати као што је АВС Блок (оквир за прављење прилагођених планера) имају веома мали део базе кода отвореног кода.
  • Шта је Кубернетес?

    Кубернетес, који се обично назива К8с, је софтвер отвореног кода за аутоматизацију постављања, скалирања и администрације контејнерских апликација.

    Користећи 15 година искуства у вођењу Гоогле производних радних оптерећења (комбинујући најбоље идеје и праксе заједнице), К8с групише ваше контејнере апликација у логичке јединице које можете лако да откријете и којима управљате.

    Поред тога, примарне карактеристике К8с-а, као што су балансирање оптерећења, трајно складиштење, аутоматизовано враћање назад за контејнерске апликације, тајне, самоизлечење за Кубернетес кластере и управљање конфигурацијом.

    Такође прочитајте: Почетак рада са Кубернетесом: Увод за почетнике

    Предности Кубернетеса

  • Отворени код (без закључавања добављача) – Без обзира да ли се покреће локално или у облаку, можете да користите Кубернетес без поновног пројектовања стратегије оркестрације. За разлику од традиционалног софтвера који захтева одређене накнаде за лиценцу, К8с је бесплатан и отвореног кода. Као да то није довољно, К8с кластери се крећу кроз јавне и приватне облаке обезбеђујући виртуелизационе ресурсе на оба ентитета.
  • Флексибилност велике снаге – К8с је одлично решење ако је вашим апликацијама потребна висока доступност уз подршку ефикасности и скалабилности. Ова особина је тактички корисна у апликацијама које генеришу високе приходе. Једноставно речено, то је детаљна контрола над вашим радним оптерећењем. У случајевима када желите да пребаците своје апликације на моћније платформе, К8с није ограничен на закључавање добављача као што је ЕЦС.
  • Висока доступност – Као што је горе поменуто, К8с дизајн је усмерен да обезбеди доступност апликација и њихове потребне инфраструктуре, што га чини неопходном карактеристиком за контејнере у производњи. Под високом доступношћу, постоји неколико техника:
    • Здравствене провере и самоизлечење – Кубернетес штити ваше апликације од кварова кроз редовне инспекције чворова. Ако је капсула или контејнер здробљен због грешке, К8с аутоматски нуди замену.
    • Балансирање оптерећења и рутирање саобраћаја – Што се тиче рутирања саобраћаја, К8с ће слати захтеве само у одговарајуће контејнере. А са балансирањем оптерећења, К8с распоређује оптерећење на подове, балансирајући ваше ресурсе за неколико случајева као што су прекиди, случајни вршни саобраћај или групна обрада. Опет, можете користити и екстерне балансере оптерећења ако желите.
  • Скалабилност радног оптерећења – Иако је горе поменуто, хајде да то даље разложимо. К8с користи своје ресурсе да обезбеди ефикасно скалирање у следећим критеријумима.
    • Аутоматско скалирање – Ова функција вам омогућава да аутоматски прилагодите број покренутих контејнера према коришћењу ЦПУ-а и другим ЦПУ метрикама.
    • Ручно скалирање – Уз помоћ ове функције, можете скалирати број покренутих контејнера кроз командну линију или интерфејс.
    • Контролер репликације – Овај алат вам омогућава да одредите број подова који одговарају спецификацији ваше кластера; ако их је мало, почиње ново, а ако их има превише, прекида их.
      Како користити двоструки додир на Аппле Ватцх Ултра 2 и Серији 9
  • Дизајниран за примену – К8с је специјално дизајниран да убрза процес прављења, тестирања и испоруке софтвера. Ево неких од његових понуђених карактеристика:
    • Аутоматско враћање и увођење – Можда ћете желети да уведете неке нове конфигурације или ажурирања апликација током развоја. К8с вам омогућава да спроведете процес без застоја апликације. У случају квара, К8с се роботски враћа на претходну верзију.
    • Цанари имплементације – Ову функцију можете искористити тестирањем нових имплементација у производњи паралелно са претходном верзијом; К8с вам омогућава да смањите посљедњу верзију апликације док истовремено повећавате најновију верзију.
    • Разноврсна подршка за програмске језике и оквире – Било да долазите из програмског језика Го, Јава или .Нет, Кубернетес подржава многе развојне језике и оквире. Ако апликација може да ради на контејнеру, она ради на К8с.
  • Откривање услуге – Сваки програмер жели да све пружене услуге имају начин да међусобно комуницирају. Међутим, К8с оперативни модел укључује креирање и уништавање контејнера континуирано, чинећи неке услуге непостојећим на одређеним локацијама. У традиционалном развоју, регистар услуга би био прилагођен за праћење локација ових услуга. К8с решава овај проблем кроз концепт изворне услуге за груписање подова и неприметно откривање услуга. Дакле, К8с обезбеђује ИП адресе за све подове, додељује ДНС имена за сваки сет под, а затим балансира саобраћај учитавања на сваком скупу под. Ова архитектура генерише окружење у коме се откривање услуге апстрахује из сваког контејнера.
  • Жива заједница – К8с подржава живахна заједница са хиљадама програмера који користе његове услуге. У време писања овог текста, преко 100 милиона програмера користи К8с за откривање, доприносећи 330 милиона пројеката. Заједница не показује знаке успоравања и подстиче сарадњу међу програмерима.
  • Ограничења Кубернетеса

  • Стрма крива учења – Да бисте започели са Кубернетес-ом, мораћете да разумете његов пејзаж. Осим тога, испорука решења од краја до краја захтева укључивање разних технологија и услуга. А са додатним технологијама које се значајно разликују (понекад, нека решења потичу из времена у коме је доминирао УНИКС, док су друга нове технологије са ниским степеном усвајања), откривање које треба укључити може бити ужурбано. Такође ћете морати да схватите како се све компоненте уклапају да бисте обезбедили свеобухватније решење за одређене проблеме. Документација је доступна, али мораћете да разумете како да испоручите и управљате овим услугама.
  • Разликовање карактеристика и пројеката – Разумевање разлика између пројеката и карактеристика може бити изазовно. Иако можете лако да добијете савете о управљању пројектима, можда нећете добити јасну разлику између функција и пројеката заједнице.
  • Знање изван Кубернетеса – Кубернетес је софистицирана платформа. Уз сву ову сложеност у испоруци решења, вероватно ћете наићи на конфузију, посебно ако сте нови у томе. Ипак, организације и даље желе да обезбеде решења (као што су складишта података као услуга), повећавајући криву учења. Ако користите такве услуге на свом производу, морате проширити своје знање изван Кубернетеса.
  • Управљање Кубернетес-ом је тешко – доћи до производње са К8с-ом је једна ствар. Мораћете да обезбедите све потребне ресурсе за ваше апликације да бисте њиме управљали. Такође ћете морати да управљате свом безбедношћу и интегришете је са својом инфраструктуром. Такође, биће вам потребна нека стручност на високом нивоу да бисте ефикасно обрађивали и управљали његовим алатима. Мораћете да стекнете дубоко знање да управљате Кубернетес кластерима, надгледате и решавате проблеме у кластерима и подржавате их у великом обиму.
  •   Колико су уназад компатибилни Ксбок серије Кс и С?

    Поређење ЕЦС-а и Кубернетеса

    Ево упоредног поређења које показује разлике:

    Тачка разликеКубернетесАмазон ЕЦСА дефиниција апликације Апликације се постављају комбиновањем модула, чворова и услуга. Примена апликације има облик задатака. Задаци су инстанце контејнера – на пример, Доцкер контејнери који се покрећу на ЕЦС инстанцама. ДеплоиментЦомплек јер морате ручно да примените и конфигуришете кластере. Лако постављање преко АВС конзоле. Подршка за чворове (број машина) 5000 чворова по кластеру. 1000 чворова по кластеру .Контејнери До 300.000 контејнера по кластеру. Ограничено искоришћеним капацитетом инфраструктуре. Балансирање оптерећењаПодови су изложени кроз услуге које се користе као балансери оптерећења иза улазних контролера. Доступна су два балансера оптерећења; ЕЛБ-Апплицатион или Нетворк.ПрицингФрее.ЕЦС је бесплатан, али морате да платите за ЕЦ2 ресурсе.ОптимизацијаДобро оптимизована за један велики кластер.Унапред конфигурисана са захтевима и захтевима за контејнере.Аутоматско скалирањеВи дефинишете параметре аутоматског скалирања када правите имплементације.Користите услуге надгледања као што је ЦлоудВатцх за аутоматско скалирање на основу ЦПУ-а, меморије и прилагођених параметара. Здравствена провера Доступне су две провере здравља: ​​спремност и живост. Постигнуто је путем сервиса за праћење као што је ЦлоудВатцх. Откривање услуге Уведено преко променљивих окружења или ДНС-а. Постигнуто кроз услуге надгледања – ЦлоудВатцх. Закључавање добављача инНе.Да.

    Случајеви употребе ЕЦС-а и Кубернетеса

    Ево како ЕЦС и Кубернетес технологија контејнеризације револуционише индустрије:

    ЕЦС ИНЦ Интернатионал истиче бројне случајеве употребе у којима је ЕЦС технологија имплементирана. У савременим медицинским уређајима, наћи ћете револуционарне методе за лечење пацијената и технике испоруке лекова. Постоје многи алати, попут електронских инхалатора, медицинских ауто-ињектора и инфузионих пумпи.

    У домену ИоТ-а имамо паметне кућне уређаје. Ако усмерите пажњу на аутомобилску индустрију, имамо паметне електричне аутомобиле са побољшаним искуством у вожњи и побољшаним безбедносним мерама као што су системи за помоћно кочење.

    За сада, то је врх леденог брега; можете погледати више апликација ЕЦС-а које нису ограничене на бежичну технологију, уређаје за ношење и случајеве индустријске употребе.

    Са друге стране, Кубернетес има свој део практичних примена. Прво, ИБМ облак нуди приватне, јавне и хибридне функционалности у широком опсегу времена извршавања.

    Спотифи, гигант на пољу стриминга музике, користи Кубернетес технологију да олакша беспрекорне операције, до 10 милиона захтева у секунди. Иако су ово случајеви коришћења у стварном свету, К8с служи више функционалности у архитектури микросервиса, мрежним функцијама које су изворне у облаку, машинском учењу и окретању животног циклуса развоја софтвера.

    Завршне речи

    Након што сте прошли кроз овај водич, имате солидан преглед предности и недостатака избора за ЕЦС или К8. Кључ за одабир праве опције је заснован на неколико аргумената. Мораћете да одмерите између трошкова, ограничења услуге и трошкова талента.

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

    Затим погледајте детаљан водич за Кубернетес против Доцкер-а.