Docker vs Kubernetes: артыкчылыктары жана кемчиликтери

Докер vs Кубернетес

La виртуалдаштыруу кеңири жайылган практикага айланды, айрыкча булут кызматтарында маалымат борборлорундагы серверлерден көбүрөөк мүмкүнчүлүк алуу. Бирок акыркы мезгилде контейнерге негизделген виртуалдаштыруу колдонулуп жатат, анткени ал кыйла натыйжалуу башкарууга мүмкүндүк берет (айрым процесстерди кайталабаш үчүн). Докер менен Кубернетестин кармашуусу дал ушул чокуда башталат.

Сиз буга чейин билген эки популярдуу долбоор. Экөө тең анын артыкчылыктары менен кемчиликтери жана айырмачылыктары менен бул сиздин муктаждыктарыңызга жараша долбоорду тандоого жардам берүү жөнүндө сөз болгондо ...

Контейнерге негизделген виртуалдаштыруу деген эмне?

контейнерлерге каршы виртуалдаштыруу

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

  • Виртуалдык машиналар- Бул виртуалдаштыруу ыкмасы. Ал гипервизорго негизделген, мисалы KVM, Xen, же VMWare, VirtualBox ж.б. Бул программалык камсыздоонун жардамы менен толук физикалык машина (vCPU, vRAM, диск дисктери, виртуалдык тармактар, перифериялык түзүлүштөр ж.б.) чыгарылат. Ошентип, бул виртуалдык жабдыкка операциялык тутумду (конокту) орнотууга болот жана ал жерден, тиркемелерди орнотуп, иштетүүчү түйүндүн тутумунда кандай иштесе, ошондой иштей берет.
  • контейнерлер: Бул дагы бир технология, бул тутумдун айрым бөлүктөрүнөн баш тартууга мүмкүн болгон бир түрдөгү капас же кум коробкасы, бул кыйла натыйжалуу жана портативдүүлүктүн жана кошумча коопсуздуктун айрым артыкчылыктары менен (бирок ал аялуу жерлерден таза эмес) . Чындыгында, гипервизордун ордуна, бул учурларда өзүнчө колдонмолорду иштетүү үчүн хост тутумун колдоно турган Docker жана Kubernetes сыяктуу программалар бар. Жаман жагы, ал хост тутумунун өзүнөн чыккан колдонмолорду жайылтууга мүмкүнчүлүк берет. Башкача айтканда, VMде сиз Linux дистрибутивинде Windowsну виртуалдаштыра аласыз жана ал үчүн Windows үчүн каалаган жергиликтүү колдонмону иштете аласыз, ал эми контейнерде хост тутуму колдогон колдонмолор менен гана жасай аласыз, бул Linux менен иштөө ...

Кеңейтүүлөрү же колдоосу экендигин унутпаңыз аппараттык виртуалдаштыруу, Intel VT жана AMD-V процессорлор үчүн 2% гана кошумча чыгымдарды эсептегенде, иштин көрсөткүчтөрүн бир топ жакшыртышкан. Бирок бул башка виртуалдаштыруу үчүн бөлүнгөн эс тутум же сактагыч сыяктуу башка ресурстарга тиешеси жок, бул ресурстарга чоң талапты билдирет.

Мунун баары кандай контейнерлерди чечүүгө келип жатат, кайсынысы айрым процесстерди кайталоонун кажети жок колдонмону жайгаштыра алуу. Мисалы, сиз Apache сервери менен контейнер түзгүңүз келсе, анда виртуалдык машинанын бардыгын алсаңыз, анда хост тутуму, гипервизор, конок иштетүү тутуму жана ошол кызматтын программасы болот. Башка жагынан алганда, контейнер менен аталган кызматты ишке ашырган программалык камсыздоону гана алышыңыз керек, анткени ал өзүнчө "кутучада" иштеп, хост тутумунун операциялык тутумун колдонот. Мындан тышкары, колдонмонун ишке киргизилиши OS конокторун жок кылуу менен тезирээк болот.

Docker деген эмне?

ютуб

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

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

Жыйынтыктап айтканда, Докер төмөнкүлөрдү сунуштайт белги ачкыч:

  • Айлана-чөйрөдөн обочолонуу.
  • Контейнерлерди башкаруу.
  • Версия башкаруу.
  • Жайгашкан жер / жакындык.
  • Ыкчамдык.
  • Өндүрүмдүүлүк.
  • Натыйжалуулук.

бирок анда белгилүү бир көйгөйлөр жок болгон жок, Ошол контейнерлер бири-бири менен байланышып, байланышып турушу керек болгондой. Кубернетестин жаралышына себеп болгон себептердин бири ушул эле ...

Кийинчерээк комментарий берем Docker Swarm, Менимче, бул Docker иштеп чыгуучулары тарабынан түзүлгөн, бир катар Docker хостторун кластерге топтоштуруп, ошентип кластерлерди борборлоштуруп башкарып, ошондой эле контейнерлерди уюштура турган программа.

Докер жөнүндө көбүрөөк маалымат

Кубернетес деген эмне?

Kubernetes

Алгач Google тарабынан түзүлүп, кийинчерээк Cloud Native Computing Foundation фондуна берилген. Kubernetes Ошондой эле ал докерге окшош система, ачык булак, Apache лицензиясы бар жана Go программалоо тили аркылуу жазылган. Ал контейнердик тиркемелерди жайылтуу жана башкарууну автоматташтыруу үчүн колдонулат. Мындан тышкары, ал контейнерлерди иштетүү үчүн ар кандай чөйрөлөрдү, анын ичинде Dockerди колдойт.

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

  • Автоматтык расписание.
  • Өзүн-өзү айыктыруу мүмкүнчүлүктөрү.
  • Автоматташтырылган жайылтуу жана жайылтуу.
  • Жүктү теңдөө жана горизонталдык масштаб.
  • Ресурстарды пайдалануунун жогорку тыгыздыгы.
  • Бизнес чөйрөсүнө багытталган функциялар.
  • Колдонмону борборлоштурулган башкаруу.
  • Өз алдынча масштабдуу инфраструктура.
  • Декларативдик конфигурация.
  • Ишенимдүүлүк.

Кубернетес жөнүндө көбүрөөк маалымат

Докер vs Кубернетес

Докер vs Кубернетес

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

Бирок, көйгөй бул андан татаал нерсе. Кеп Докер менен Куернетес жөнүндө эмес, анткени такыр башка нерселерди салыштырып, бирөөсүн экинчисин тандашым керек деп ойлоп жаңылышып каласың. Докер менен Кубернетестин натыйжасы акылга сыйбайт, тескерисинче, контейнердеги тиркемелерди жакшыраак жеткирүү жана масштабдоо үчүн эки технологияны тең байланыштырыш керек.

Эң ылайыктуусу салыштыруу болмок Кубернетес менен докердин тобу. Docker Swarm бул контейнер кластерин түзүү үчүн Docker оркестринин технологиясы болгондуктан, бул ийгиликтүү болмок. Ошентсе дагы, анда ал толугу менен ийгиликтүү болмок эмес ... Чындыгында, Кубернетес кластерде иштөөгө ылайыкташтырылып, масштабдагы түйүндөрдүн класстарын өндүрүштө натыйжалуу координациялай алган, ал эми Докер муну бир режимде аткарат.

Докер менен Кубернетестин айырмачылыктары

Эгерде сиз билгисиңиз келсе, ар кандай нерселерди сактап калуу айырмачылыктар Docker Swarm жана Kubernetes ортосунда, алар:

  • Кубернетес көптөгөн варианттарды камтыйт Персоналдаштыруу Docker Swarm жок.
  • Docker Swarm is кыйла оңой жөнөкөйлүгүнө байланыштуу конфигурациялоо. Мындан тышкары, Docker экосистемасына интеграциялоо оңой.
  • Анын ордуна Күнөөлөргө жол бербөө Кубернетес жогору, бул жогорку жеткиликтүү серверлер сыяктуу чөйрөлөрдө оңураак болушу мүмкүн.
  • Docker Swarm is ылдамыраак контейнерлерди жайгаштырууга жана кеңейтүүгө байланыштуу.
  • Кубернетес өзүнүн бир бөлүгү үчүн сунуш кылат көбүрөөк кепилдиктер кластердик мамлекеттерге
  • El жүктү теңдөө Кубернетесте бул тең салмактуулукту жакшыртат, бирок ал Докердегидей автоматтык эмес.
  • Кубернетес сунуш кылат жакшы ийкемдүүлүктатаал тиркемелерде дагы.
  • Docker Swarm 2000-жылга чейин колдойт түйүндөр, Кубернетестеги 5000ге салыштырмалуу.
  • Кубернетес оптималдаштырылган көптөгөн чакан кластерлер үчүн, ал эми Докерлер чоң кластер үчүн.
  • Кубернетес татаал, Simpler Docker.
  • Кубернеттер уруксат бере алат сактоо мейкиндигин бөлүшүү каалаган контейнердин ортосунда, ал эми Docker чектелген жана ошол эле каптагы контейнерлер ортосунда гана бөлүшүлөт.
  • Docker Swarm колдонууга мүмкүндүк берет Үчүнчү Тарап Программасы журналы жана мониторинг жүргүзүү үчүн, Kubernetes өзүнө орнотулган шаймандарын камтыйт.
  • Docker Swarm 95.000 менен чектелген контейнерлер, Кубернетес болсо 300.000ге чейин колдой алат.
  • Ал эми Докерде а улуу жамаат Кубернетес Microsoft, Amazon, Google жана IBM сыяктуу компаниялардын колдоосуна ээ.
  • Докер колдонулат компаниялар сыяктуу Spotify, Pinterest, eBay, Twitter, ж.б. Кубернеттер 9GAG, Intuit, Buffer, Evernote ж.б.

пайда

Айрым пикир келишпестиктерди көрүп, эми кезек келди артыкчылыктары ар бири:

  • Kubernetes:
    • Бакалчандар менен кызматты оңой уюштуруу.
    • Булут тармагында чоң тажрыйбасы бар, Google тарабынан иштелип чыккан.
    • Чоң жамаат жана контейнер оркестринин куралдары.
    • Сактоонун ар кандай варианттары, анын ичинде жергиликтүү SAN жана коомдук булуттар.
  • ютуб:
    • Эффективдүү жана оңой баштапкы орнотуу.
    • Вариацияларды текшерүү үчүн контейнердин версияларын көзөмөлдөйт.
    • Ылдамдык.
    • Абдан жакшы документтер.
    • Колдонмолордун ортосунда жакшы обочолонуу.

кемчиликтери

катары кемчиликтери:

  • Kubernetes:
    • Татаал миграция.
    • Комплекстүү орнотуу жана конфигурациялоо процесси.
    • Учурдагы Docker шаймандары менен шайкеш келбейт.
    • Кол менен кластерди ишке ашыруу татаал.
  • ютуб:
    • Ал сактоо мүмкүнчүлүгүн бербейт.
    • Жаман көзөмөл.
    • Активдүү эмес түйүндөрдү автоматтык түрдө кайра программалоо жок.
    • Аракеттер CLIде жүргүзүлүшү керек.
    • Бир нече инстанцияны кол менен башкаруу.
    • Башка куралдар үчүн сизге колдоо керек.
    • Кластерди жайылтуу кыйын.
    • Ден-соолугун текшерүү үчүн эч кандай колдоо жок.
    • Docker коммерциялык компания жана анын айрым маанилүү компоненттери, мисалы Docker Engine жана Docker Desktop ачык булак эмес.

Докер жана Кубернетес: Жыйынтык

Сиз элестеткендей, аны тандоо анчалык оңой эмес тигил же бул ортосунда. Доккер менен Кубернетестин кармашы сезилгенден да татаал. Жана бардыгы сиз койгон максатка жараша болот. Тигил же бул экөө жакшыраак жарашат, бул сиздин тандооңуз болушу керек.

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


Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

3 комментарий, өзүңүздүкүн калтырыңыз

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт. Милдеттүү талаалар менен белгиленет *

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.

  1.   чуур ал мындай деди:

    Чоң рахмат ! Көпчүлүк учурларда, эң жакшысын тандап алуу маселеси болбосо, андан жакшы же жаман нерсе жок экендигин түшүнүү мен үчүн айкыныраак болуп калды.
    Балким, мага тигил же бул сценарийдин жакшыраак иштешин түшүнүү жана аларды чогуу колдонуу үчүн айкын мисал керек.
    Ошондой эле, ушул типтеги программалык камсыздоодо бизде кандай альтернатива бар?

  2.   чуур ал мындай деди:

    Ал эми контейнерлер жөнүндө билип баштаганыбыз, ири компанияларда иштөөнү күтпөстөн чыныгы жагдайларды көрө билүү үчүн эмне кылсак болот?

  3.   Эриксон Мелгарехо ал мындай деди:

    Менимче, бул жерде бир нерсе туура эмес аныкталган, докер - контейнер башкаруучусу, аны Оркестрге салыштырууга болбойт.

    Салыштыруу Docker Swarm vs Kubernetes ортосунда болмок.

    Кыязы, ушул кереметтүү постту даярдап жатканда (менин оюмча, чындыгында кызыктуу), айрым терминдер өтүп кетти.