ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Доцкер Сварм, Кубернетес и Месос су најпопуларнији оквири за оркестрацију контејнера. У свом говору, Арун Гупта упоређује следеће аспекте Доцкер-а, Сварм-а и Кубернетеса:

  • Локални развој.
  • Функције распоређивања.
  • Апликације са више контејнера.
  • Откриће услуге.
  • Скалирање услуге.
  • Задаци који се извршавају једном.
  • Интеграција са Мавен-ом.
  • "Роллинг" упдате.
  • Креирање кластера Цоуцхбасе базе података.

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

Арун Гупта је главни технолог за производе отвореног кода у Амазон Веб Сервицес, који развија заједнице програмера Сун, Орацле, Ред Хат и Цоуцхбасе више од 10 година. Има велико искуство у вођењу вишефункционалних тимова који развијају и имплементирају стратегије за маркетиншке кампање и програме. Предводио је тимове Сун инжењера, један је од оснивача тима Јава ЕЕ и креатор америчког огранка Девокк4Кидс. Арун Гупта је аутор више од 2 хиљаде постова на ИТ блоговима и одржао је предавања у више од 40 земаља.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 1
ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 2

Ред 55 садржи ЦОУЦХБАСЕ_УРИ који указује на ову услугу базе података, која је такође креирана помоћу Кубернетес конфигурационе датотеке. Ако погледате ред 2, можете видети врсту: Услуга је услуга коју креирам која се зове цоуцхбасе-сервице, а исто име је наведено у реду 4. Испод су неки портови.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Кључне линије су 6 и 7. У служби кажем: „Хеј, ово су ознаке које тражим!“, а ове ознаке нису ништа друго до имена променљивих парова, а линија 7 указује на мој цоуцхбасе-рс-под апликација. Следе портови који обезбеђују приступ овим истим ознакама.

У реду 19 креирам нови тип РеплицаСет, ред 31 садржи име слике, а редови 24-27 указују на метаподатке повезане са мојим подом. То је управо оно што услуга тражи и на шта треба успоставити везу. На крају датотеке постоји нека врста везе између редова 55-56 и 4, која каже: „користите ову услугу!“

Дакле, покрећем свој сервис када постоји скуп реплика, а пошто сваки скуп реплика има свој порт са одговарајућом ознаком, он је укључен у услугу. Са тачке гледишта програмера, једноставно позивате услугу, која затим користи скуп реплика који су вам потребни.

Као резултат тога, имам ВилдФли под који комуницира са позадином базе података преко Цоуцхбасе услуге. Могу да користим фронтенд са неколико ВилдФли подова, који такође комуницира са позадином кауча преко услуге цоуцхбасе.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Касније ћемо погледати како услуга која се налази ван кластера комуницира преко своје ИП адресе са елементима који се налазе унутар кластера и имају интерну ИП адресу.

Дакле, контејнери без стања су одлични, али колико је добро користити контејнере са статусом? Хајде да погледамо системске поставке за контејнере са стањем или трајне контејнере. У Доцкер-у постоје 4 различита приступа распореду складиштења података на које треба обратити пажњу. Први је Имплицит Пер-Цонтаинер, што значи да када користите Цоуцхбасе, МиСКЛ или МиДБ сататефул контејнере, сви они почињу са подразумеваним Сандбок-ом. Односно, све што је ускладиштено у бази података чува се у самом контејнеру. Ако контејнер нестане, подаци нестају заједно са њим.

Други је Експлицитни по контејнеру, када креирате одређено складиште са командом за креирање волумена доцкер-а и у њега складиштите податке. Трећи приступ по хосту је повезан са мапирањем складишта, када се све што је ускладиштено у контејнеру истовремено дуплира на хосту. Ако контејнер не успе, подаци ће остати на хосту. Ово последње је употреба неколико Мулти-Хост хостова, што је препоручљиво у фази производње различитих решења. Рецимо да се ваши контејнери са вашим апликацијама покрећу на хосту, али желите да ускладиштите своје податке негде на Интернету, а за то користите аутоматско мапирање за дистрибуиране системе.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Свака од ових метода користи одређену локацију за складиштење. Имплицитни и експлицитни по контејнеру чувају податке на хосту на /вар/либ/доцкер/волумес. Када се користи метод Пер-Хост, складиште се монтира унутар контејнера, а сам контејнер се монтира на хост. За мултихостове могу се користити решења као што су Цепх, ЦлустерФС, НФС итд.

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

Ако хост не успе, директоријум за складиштење је недоступан у прва три случаја; у последњем случају, веза са складиштем није прекинута. Коначно, дељена функција је потпуно искључена за складиштење у првом случају и могућа је у осталом. У другом случају, можете да делите складиште у зависности од тога да ли ваша база података подржава дистрибуирано складиштење или не. У случају Пер-Хост-а, дистрибуција података је могућа само на датом хосту, а за мултихост је обезбеђена проширењем кластера.

Ово треба узети у обзир приликом креирања контејнера са стањем. Још једна корисна Доцкер алатка је додатак Волуме, који ради по принципу „батерије присутне, али морају да се замене“. Када покренете Доцкер контејнер, он каже: „Хеј, када покренете контејнер са базом података, можете да складиштите своје податке у овом контејнеру!“ Ово је подразумевана функција, али можете да је промените. Овај додатак вам омогућава да користите мрежни диск или нешто слично уместо базе података контејнера. Укључује подразумевани драјвер за складиштење засновано на хосту и омогућава интеграцију контејнера са спољним системима складиштења као што су Амазон ЕБС, Азуре Стораге и ГЦЕ Персистент дискови.

Следећи слајд приказује архитектуру додатка Доцкер Волуме.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

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

Додатак Доцкер Волуме може се користити са Портворк складиштем. ПКС-Дев модул је заправо контејнер који покрећете који се повезује са вашим Доцкер хостом и омогућава вам да лако складиштите податке на Амазон ЕБС.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

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

Концепт складиштења у Кубернетес-у је сличан Доцкер-у и представљен је директоријумима који су доступни вашем контејнеру у под-у. Они су независни од животног века било ког контејнера. Најчешћи доступни типови складиштења су хостПатх, нфс, авсЕластицБлоцкСторе и гсеПерсистентДиск. Хајде да погледамо како ове продавнице раде у Кубернетесу. Обично се процес њиховог повезивања састоји од 3 корака.

Први је да вам неко на мрежној страни, обично администратор, обезбеђује трајно складиште. За ово постоји одговарајућа конфигурациона датотека ПерсистентВолуме. Затим, програмер апликације пише конфигурациону датотеку под називом ПерсистентВолумеЦлаим, или ПВЦ захтев за складиштење, који каже: „Имам обезбеђено 50 ГБ дистрибуираног складишта, али да би други људи такође користили његов капацитет, говорим овом ПВЦ-у да тренутно потребно је само 10 ГБ". Коначно, трећи корак је да се ваш захтев монтира као складиште и апликација која има под, или скуп реплику, или нешто слично, почиње да га користи. Важно је запамтити да се овај процес састоји од 3 поменута корака и да је скалабилан.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Следећи слајд приказује Кубернетес Персистенце Цонтаинер АВС архитектуре.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Унутар смеђег правоугаоника који представља Кубернетес кластер, налази се један главни чвор и два радна чвора, означени жутом бојом. Један од радних чворова садржи наранџасту капсулу, складиште, реплику контролера и зелени Доцкер Цоуцхбасе контејнер. Унутар кластера, изнад чворова, љубичасти правоугаоник означава Сервис који је доступан споља. Ова архитектура се препоручује за чување података на самом уређају. Ако је потребно, могу да сачувам своје податке у ЕБС ван кластера, као што је приказано на следећем слајду. Ово је типичан модел за скалирање, али постоји финансијски аспект који треба узети у обзир када га користите – складиштење података негде на мрежи може бити скупље него на хосту. Приликом избора решења за контејнеризацију, ово је један од важних аргумената.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Баш као и код Доцкер-а, можете користити трајне Кубернетес контејнере са Портворк-ом.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

То је оно што се у тренутној терминологији Кубернетес 1.6 назива „СтатефулСет“ – начин рада са Статефул апликацијама које обрађују догађаје о заустављању Под-а и извођењу Грацефул Схутдовн-а. У нашем случају, такве апликације су базе података. У мом блогу можете прочитати како да креирате СтатефулСет у Кубернетесу користећи Портворк.
Хајде да причамо о аспекту развоја. Као што сам рекао, Доцкер има 2 верзије - ЦЕ и ЕЕ, у првом случају говоримо о стабилној верзији Цоммунити Едитион-а, која се ажурира једном на 3 месеца, за разлику од месечно ажуриране верзије ЕЕ. Можете преузети Доцкер за Мац, Линук или Виндовс. Једном инсталиран, Доцкер ће се аутоматски ажурирати и врло је лако започети.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

За Кубернетес, више волим верзију Миникубе – то је добар начин да почнете са платформом креирањем кластера на једном чвору. За креирање кластера од неколико чворова, избор верзија је шири: то су копс, кубе-авс (ЦореОС+АВС), кубе-уп (застарело). Ако желите да користите Кубернетес заснован на АВС-у, препоручујем да се придружите АВС СИГ-у, који се састаје на мрежи сваког петка и објављује разне занимљиве материјале о раду са АВС Кубернетес-ом.

Хајде да погледамо како се Роллинг Упдате изводи на овим платформама. Ако постоји група од неколико чворова, онда користи одређену верзију слике, на пример, ВилдФли:1. Непрекидно ажурирање значи да се верзија слике узастопно замењује новом на сваком чвору, једна за другом.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Да бих то урадио, користим команду доцкер сервице упдате (име услуге) у којој наводим нову верзију слике ВилдФли:2 и метод ажурирања упдате-параллелисм 2. Број 2 значи да ће систем ажурирати 2 слике апликације истовремено, затим кашњење ажурирања од 10 секунди 10с, након чега ће следеће 2 слике бити ажуриране на још 2 чвора, итд. Овај једноставан механизам за ажурирање је обезбеђен као део Доцкер-а.

У Кубернетесу, ажурирање које се креће овако функционише. Контролер репликације рц креира скуп реплика исте верзије, а сваки под у овој вебапп-рц има ознаку која се налази у етцд. Када ми затреба под, користим апликацијски сервис да приступим етцд спремишту, које ми обезбеђује под користећи наведену ознаку.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

У овом случају имамо 3 модула у контролеру репликације који покреће апликацију ВилдФли верзије 1. Приликом ажурирања у позадини, креира се други контролер репликације са истим именом и индексом на крају - - ккккк, где су к насумични бројеви, и са истим етикетама. Сада Апплицатион Сервице има три модула са старом верзијом апликације и три модула са новом верзијом у новом контролеру репликације. Након овога, стари подови се бришу, контролер репликације са новим подовима се преименује и ставља у рад.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Пређимо на праћење. Доцкер има много уграђених команди за надгледање. На пример, интерфејс командне линије статс доцкер контејнера вам омогућава да прикажете информације о стању контејнера на конзоли сваке секунде - коришћење процесора, коришћење диска, оптерећење мреже. Доцкер Ремоте АПИ алат пружа податке о томе како клијент комуницира са сервером. Користи једноставне команде, али је заснован на Доцкер РЕСТ АПИ-ју. У овом случају, речи РЕСТ, Фласх, Ремоте значе исту ствар. Када комуницирате са домаћином, то је РЕСТ АПИ. Доцкер Ремоте АПИ вам омогућава да добијете више информација о покретању контејнера. Мој блог описује детаље коришћења овог надзора са Виндовс Сервером.

Надгледање доцкер системских догађаја приликом покретања кластера са више хостова омогућава добијање података о рушењу хоста или контејнера на одређеном хосту, услугама скалирања и слично. Почевши од Доцкер 1.20, укључује Прометхеус, који уграђује крајње тачке у постојеће апликације. Ово вам омогућава да примате метрике преко ХТТП-а и приказујете их на контролној табли.

Још једна функција надгледања је цАдвисор (скраћеница од контејнера саветника). Он анализира и обезбеђује податке о коришћењу ресурса и перформансама из покренутих контејнера, обезбеђујући Прометхеус метрику одмах из кутије. Посебност овог алата је што даје податке само за последњих 60 секунди. Стога, морате бити у могућности да прикупите ове податке и ставите их у базу података како бисте могли пратити дугорочни процес. Такође се може користити за графички приказ метрике контролне табле користећи Графана или Кибана. Мој блог има детаљан опис како да користите цАдвисор за надгледање контејнера користећи Кибана контролну таблу.

Следећи слајд показује како изгледа излаз Прометхеус крајње тачке и метрике доступне за приказ.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

У доњем левом углу видите метрику за ХТТП захтеве, одговоре итд., а десно је њихов графички приказ.

Кубернетес такође укључује уграђене алате за праћење. Овај слајд приказује типичан кластер који садржи један главни и три радна чвора.

ДЕВОКСКС УК конференција. Изаберите оквир: Доцкер Сварм, Кубернетес или Месос. део 3

Сваки од радних чворова садржи аутоматски покренут цАдвисор. Поред тога, постоји Хеапстер, систем за праћење перформанси и прикупљање метрика компатибилан са Кубернетес верзијом 1.0.6 и новијим. Хеапстер вам омогућава да прикупите не само метрику учинка радних оптерећења, подова и контејнера, већ и догађаје и друге сигнале које генерише цео кластер. Да би прикупио податке, разговара са Кубелет-ом сваког под-а, аутоматски складишти информације у ИнфлукДБ бази података и шаље их као метрику на Графана контролну таблу. Међутим, имајте на уму да ако користите миниКубе, ова функција није доступна подразумевано, тако да ћете морати да користите додатке за надгледање. Дакле, све зависи од тога где покрећете контејнере и које алате за праћење можете да користите подразумевано и које морате да инсталирате као засебне додатке.

Следећи слајд приказује Графана контролне табле које приказују статус покретања мојих контејнера. Овде има доста занимљивих података. Наравно, постоји много комерцијалних Доцкер и Кубернетес алата за праћење процеса, као што су СисДиг, ДатаДог, НевРелиц. Неки од њих имају 30-годишњи бесплатни пробни период, тако да можете покушати да пронађете онај који вам највише одговара. Лично, више волим да користим СисДиг и НевРелиц, који се добро интегришу са Кубернетес-ом. Постоје алати који се подједнако добро интегришу у Доцкер и Кубернетес платформе.

Неки огласи 🙂

Хвала вам што сте остали са нама. Да ли вам се свиђају наши чланци? Желите да видите још занимљивијег садржаја? Подржите нас тако што ћете наручити или препоручити пријатељима, ВПС у облаку за програмере од 4.99 УСД, јединствени аналог сервера почетног нивоа, који смо ми измислили за вас: Цела истина о ВПС (КВМ) Е5-2697 в3 (6 језгара) 10ГБ ДДР4 480ГБ ССД 1Гбпс од 19 долара или како делити сервер? (доступно са РАИД1 и РАИД10, до 24 језгра и до 40 ГБ ДДР4).

Делл Р730кд 2 пута јефтинији у Екуиник Тиер ИВ дата центру у Амстердаму? Само овде 2 к Интел ТетраДеца-Цоре Ксеон 2к Е5-2697в3 2.6ГХз 14Ц 64ГБ ДДР4 4к960ГБ ССД 1Гбпс 100 ТВ од 199 УСД у Холандији! Делл Р420 - 2к Е5-2430 2.2Гхз 6Ц 128ГБ ДДР3 2к960ГБ ССД 1Гбпс 100ТБ - од 99 долара! Читали о Како изградити инфраструктурну корпорацију. класе уз коришћење Делл Р730кд Е5-2650 в4 сервера у вредности од 9000 евра за пени?

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

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