ProHoster > Blogs > AdministrÄcija > KrÄtuve Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor
KrÄtuve Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor
AtjauninÄt!. KomentÄros kÄds no lasÄ«tÄjiem ieteica pamÄÄ£inÄt Linstors (varbÅ«t viÅÅ” pats pie tÄ strÄdÄ), tÄpÄc esmu pievienojis sadaļu par Å”o risinÄjumu. Es arÄ« rakstÄ«ju ierakstu par to, kÄ to instalÄt, jo process ļoti atŔķiras no pÄrÄjiem.
Ja godÄ«gi, es padevos un padevos Kubernetes (vismaz pagaidÄm). es izmantoÅ”u Heroku. KÄpÄc? GlabÄÅ”anas dÄļ! KurÅ” to bÅ«tu domÄjis, ka es vairÄk lÄpÄ«Å”os ar uzglabÄÅ”anu, nevis paÅ”u Kubernetes. ES izmantoju Hecnera mÄkonisjo tas ir lÄts un veiktspÄja ir laba, un no paÅ”a sÄkuma es izvietoju klasterus, izmantojot fermeris. Es neizmÄÄ£inÄju pÄrvaldÄ«tos Kubernetes pakalpojumus no Google/Amazon/Microsoft/DigitalOcean utt., u.c., jo gribÄju visu apgÅ«t pats. Es arÄ« esmu taupÄ«gs.
TÄtad, jÄ, es pavadÄ«ju daudz laika, mÄÄ£inot izlemt, kuru krÄtuvi izvÄlÄties, izvÄrtÄjot iespÄjamo Kubernetes steku. Es dodu priekÅ”roku atvÄrtÄ pirmkoda risinÄjumiem ne tikai cenas dÄļ, bet arÄ« ziÅkÄrÄ«bas dÄļ esmu izskatÄ«jis dažas maksas iespÄjas, jo tÄm ir bezmaksas versijas ar ierobežojumiem. Esmu pierakstÄ«jis dažus skaitļus no nesenajiem testiem, kad salÄ«dzinÄju dažÄdas iespÄjas, un tie varÄtu bÅ«t interesanti tiem, kas mÄcÄs par Kubernetes krÄtuvi. Lai gan es personÄ«gi pagaidÄm esmu atvadÄ«jies no Kubernetes. Es arÄ« gribu pieminÄt CSI draiveris, kas var tieÅ”i nodroÅ”inÄt Hetzner Cloud apjomus, taÄu es to vÄl neesmu izmÄÄ£inÄjis. Es izpÄtÄ«ju mÄkoÅa programmatÅ«ras definÄtu krÄtuvi, jo man bija nepiecieÅ”ama replikÄcija un iespÄja Ätri uzstÄdÄ«t pastÄvÄ«gus sÄjumus jebkurÄ mezglÄ, it Ä«paÅ”i mezgla kļūmju un citu lÄ«dzÄ«gu situÄciju gadÄ«jumÄ. Daži risinÄjumi piedÄvÄ momentuzÅÄmumus un dublÄjumus Ärpus vietnes, kas ir Ärti.
Es pÄrbaudÄ«ju 6ā7 uzglabÄÅ”anas risinÄjumus:
KÄ jau teicu iepriekÅ”ÄjÄ ierakstÄPÄrbaudÄ«jis lielÄko daļu no saraksta opcijÄm, es sÄkotnÄji izvÄlÄjos OpenEBS. OpenEBS ir ļoti viegli instalÄjams un lietojams, taÄu, godÄ«gi sakot, pÄc testÄÅ”anas ar reÄliem datiem zem slodzes, biju vÄ«lies par tÄ veiktspÄju. Tas ir atvÄrts avots, un izstrÄdÄtÄji ir paÅ”i Slavens kanÄls vienmÄr ļoti palÄ«dzÄja, kad man bija vajadzÄ«ga palÄ«dzÄ«ba. DiemžÄl tai ir ļoti vÄja veiktspÄja salÄ«dzinÄjumÄ ar citÄm opcijÄm, tÄpÄc testi bija jÄveic atkÄrtoti. OpenEBS paÅ”laik ir 3 krÄtuves dzinÄji, bet es publicÄju cStor etalona rezultÄtus. Man vÄl nav Jiva un LocalPV numuru.
ÄŖsumÄ, Jiva ir nedaudz ÄtrÄks, un LocalPV parasti ir Ätrs, ne sliktÄks par diska etalonu tieÅ”i. VietÄjÄ PV problÄma ir tÄda, ka sÄjumam var piekļūt tikai tajÄ mezglÄ, kurÄ tas tika sagatavots, un vispÄr nav replikÄcijas. Man bija dažas problÄmas ar dublÄjuma atjaunoÅ”anu, izmantojot Buru laiva jaunÄ klasterÄ«, jo mezglu nosaukumi bija atŔķirÄ«gi. Ja mÄs runÄjam par dublÄÅ”anu, cStor ir spraudnis Velero, ar kuru jÅ«s varat izveidot momentuzÅÄmumu dublÄjumus Ärpus vietnes noteiktÄ brÄ«dÄ«, kas ir ÄrtÄk nekÄ faila lÄ«meÅa dublÄjumkopijas ar Velero-Restic. ES rakstÄ«ju vairÄki skripti, lai atvieglotu dublÄjumu un atjaunoÅ”anas pÄrvaldÄ«bu, izmantojot Å”o spraudni. KopumÄ man ļoti patÄ«k OpenEBS, bet tÄ veiktspÄja...
Rook ir arÄ« atvÄrtÄ koda un atŔķiras no pÄrÄjÄm opcijÄm sarakstÄ ar to, ka tas ir krÄtuves orÄ·estrÄtÄjs, kas veic sarežģītus krÄtuves pÄrvaldÄ«bas uzdevumus ar dažÄdÄm aizmugursistÄmÄm, piemÄram, Cef, EdgeFS un citi, kas ievÄrojami vienkÄrÅ”o darbu. Man bija problÄmas ar EfgeFS, kad es to izmÄÄ£inÄju pirms dažiem mÄneÅ”iem, tÄpÄc es testÄju galvenokÄrt ar Ceph. Ceph piedÄvÄ ne tikai bloku krÄtuvi, bet arÄ« objektu krÄtuvi, kas ir saderÄ«ga ar S3/Swift un izplatÄ«to failu sistÄmu. Tas, kas man patÄ«k Ceph, ir iespÄja izplatÄ«t apjoma datus vairÄkos diskos, lai sÄjums varÄtu izmantot vairÄk diska vietas, nekÄ var ievietot vienÄ diskÄ. Tas ir Ärti. VÄl viena lieliska iezÄ«me ir tÄ, ka, pievienojot diskus klasterim, tas automÄtiski pÄrdala datus visos diskos.
Ceph ir momentuzÅÄmumi, bet, cik man zinÄms, tos nevar izmantot tieÅ”i Rook/Kubernetes. Tiesa, es tajÄ neiedziļinÄjos. Bet Ärpus vietnes nav dublÄjumu, tÄpÄc jums bÅ«s kaut kas jÄizmanto ar Velero/Restic, taÄu ir tikai faila lÄ«meÅa dublÄjumkopijas, nevis momentuzÅÄmumi brÄ«dÄ«. Man ļoti patika Rook tas, cik viegli ir strÄdÄt ar Ceph ā tas slÄpj gandrÄ«z visas sarežģītÄs lietas un piedÄvÄ rÄ«kus, lai tieÅ”i sarunÄtos ar Ceph problÄmu novÄrÅ”anai. DiemžÄl Ceph apjomu stresa testa laikÄ man joprojÄm radÄs problÄmas ar Ŕī problÄma, kas izraisa Ceph nestabilitÄti. PagaidÄm nav skaidrs, vai tÄ ir kļūda paÅ”Ä Ceph vai problÄma tajÄ, kÄ Rook pÄrvalda Ceph. Es pÄrdomÄju atmiÅas iestatÄ«jumus, un tas kļuva labÄks, taÄu problÄma netika pilnÄ«bÄ atrisinÄta. KÄ redzams zemÄk esoÅ”ajos etalonos, Ceph ir pienÄcÄ«gs sniegums. Tam ir arÄ« labs informÄcijas panelis.
Man ļoti patÄ«k Longhorn. ManuprÄt, tas ir daudzsoloÅ”s risinÄjums. Tiesa, paÅ”i izstrÄdÄtÄji (Rancher Labs) atzÄ«st, ka tas vÄl nav piemÄrots darba videi, un tas arÄ« liecina. Tas ir atvÄrtÄ koda, un tam ir pienÄcÄ«ga veiktspÄja (lai gan viÅi to vÄl nav optimizÄjuÅ”i), taÄu sÄjumiem ir nepiecieÅ”ams ļoti ilgs laiks, lai izveidotu savienojumu ar podziÅu, un sliktÄkajos gadÄ«jumos tas aizÅem 15ā16 minÅ«tes, Ä«paÅ”i pÄc lielas dublÄjuma atjaunoÅ”anas vai darba slodzes uzlaboÅ”ana. Tam ir Å”o momentuzÅÄmumu momentuzÅÄmumi un dublÄjumkopijas Ärpus vietnes, taÄu tie attiecas tikai uz sÄjumiem, tÄpÄc jums joprojÄm bÅ«s nepiecieÅ”ams kaut kas lÄ«dzÄ«gs Velero, lai dublÄtu citus resursus. DublÄÅ”ana un atjaunoÅ”ana ir ļoti uzticama, taÄu nepieklÄjÄ«gi lÄna. Nopietni, vienkÄrÅ”i neticami lÄni. StrÄdÄjot ar vidÄju datu apjomu programmÄ Longhorn, centrÄlÄ procesora lietojums un sistÄmas slodze bieži palielinÄs. Lai pÄrvaldÄ«tu Longhorn, ir Ärts informÄcijas panelis. Es jau teicu, ka man patÄ«k Longhorn, bet ar to ir jÄpiestrÄdÄ.
StorageOS ir pirmais maksas produkts sarakstÄ. Tam ir izstrÄdÄtÄja versija ar ierobežotu pÄrvaldÄ«to krÄtuves lielumu 500 GB, taÄu es nedomÄju, ka mezglu skaits ir ierobežots. PÄrdoÅ”anas nodaļa man teica, ka izmaksas sÄkas no 125 USD mÄnesÄ« par 1 TB, ja pareizi atceros. Ir pamata informÄcijas panelis un Ärts CLI, taÄu ar veiktspÄju notiek kaut kas dÄ«vains: dažos etalonos tas ir diezgan pieklÄjÄ«gs, bet skaļuma noslodzes testÄ Ätrums man nepatika. KopumÄ es nezinu, ko teikt. TÄpÄc es Ä«sti daudz nesapratu. Å eit nav dublÄjumu Ärpus vietnes, un sÄjumu dublÄÅ”anai bÅ«s jÄizmanto arÄ« Velero ar Restic. DÄ«vaini, jo prece ir apmaksÄta. Un izstrÄdÄtÄji nevÄlÄjÄs sazinÄties Slack.
Es uzzinÄju par Robinu vietnÄ Reddit no viÅu tehniskÄ direktora. Es nekad agrÄk par viÅu nebiju dzirdÄjis. VarbÅ«t tÄpÄc, ka meklÄju bezmaksas risinÄjumus, bet Robinam maksÄ. ViÅiem ir diezgan dÄsna bezmaksas versija ar 10 TB krÄtuvi un trim mezgliem. KopumÄ produkts ir diezgan pienÄcÄ«gs un tam ir jaukas Ä«paŔības. Ir lieliska CLI, taÄu pats forÅ”Äkais ir tas, ka varat izveidot momentuzÅÄmumu un dublÄt visu lietojumprogrammu (resursu atlasÄ«tÄjÄ to sauc par Helm izlaidumiem vai āflex appsā), ieskaitot apjomus un citus resursus, lai jÅ«s varÄtu iztikt bez Velero. Un viss bÅ«tu brÄ«niŔķīgi, ja ne tikai viena sÄ«ka detaļa: ja atjaunotu (vai āimportÄtuā, kÄ to sauc RobinÄ) lietojumprogrammu jaunÄ klasterÄ« - piemÄram, atkopÅ”anas gadÄ«jumÄ pÄc katastrofas - atjaunoÅ”ana, protams, darbojas, bet turpinÄt dublÄt lietojumprogrammu tas ir aizliegts. Å ajÄ laidienÄ tas vienkÄrÅ”i nav iespÄjams, kÄ to apstiprinÄjuÅ”i izstrÄdÄtÄji. Tas ir, maigi izsakoties, dÄ«vaini, Ä«paÅ”i Åemot vÄrÄ citas priekÅ”rocÄ«bas (piemÄram, neticami Ätras dublÄÅ”anas un atjaunoÅ”anas). IzstrÄdÄtÄji sola visu salabot lÄ«dz nÄkamajam laidienam. VeiktspÄja kopumÄ ir laba, taÄu es pamanÄ«ju dÄ«vainÄ«bu: ja es palaižu etalonu tieÅ”i sÄjumÄ, kas pievienots resursdatoram, lasÄ«Å”anas Ätrums ir daudz ÄtrÄks, nekÄ palaist to paÅ”u skaļumu no poda. Visi pÄrÄjie rezultÄti ir identiski, taÄu teorÄtiski atŔķirÄ«bai nevajadzÄtu bÅ«t. Lai gan viÅi pie tÄ strÄdÄ, es biju sarÅ«gtinÄts par problÄmu ar atjaunoÅ”anu un dublÄÅ”anu - es domÄju, ka beidzot esmu atradis piemÄrotu risinÄjumu, un es pat biju gatavs par to maksÄt, kad man vajadzÄja vairÄk vietas vai vairÄk serveru.
Man te nav daudz ko teikt. Å is ir maksas produkts, vienlÄ«dz forÅ”s un dÄrgs. IzrÄde ir vienkÄrÅ”i pÄrsteidzoÅ”a. Tas ir lÄ«dz Å”im labÄkais rÄdÄ«tÄjs. Slack man teica, ka cenas sÄkas no USD 205 mÄnesÄ« par mezglu, kÄ norÄdÄ«ts Google GKE Marketplace. Nezinu, vai bÅ«s lÄtÄk, pÄrkot pa tieÅ”o. Es tik un tÄ nevaru to atļauties, tÄpÄc biju ļoti, ļoti vÄ«lies, ka izstrÄdÄtÄja licence (lÄ«dz 1 TB un 3 mezgliem) ir praktiski bezjÄdzÄ«ga ar Kubernetes, ja vien jÅ«s neesat apmierinÄts ar statisko nodroÅ”inÄjumu. Es cerÄju, ka izmÄÄ£inÄjuma perioda beigÄs lielapjoma licence automÄtiski tiks pazeminÄta uz izstrÄdÄtÄju, taÄu tas nenotika. IzstrÄdÄtÄja licenci var izmantot tikai tieÅ”i ar Docker, un Kubernetes konfigurÄcija ir ļoti apgrÅ«tinoÅ”a un ierobežota. Protams, es dodu priekÅ”roku atvÄrtajam pirmkodam, bet, ja man bÅ«tu nauda, āāes noteikti izvÄlÄtos Portworx. LÄ«dz Å”im tÄ veiktspÄja vienkÄrÅ”i nav salÄ«dzinÄma ar citÄm iespÄjÄm.
Å o sadaļu pievienoju pÄc ieraksta publicÄÅ”anas, kad kÄds lasÄ«tÄjs ieteica izmÄÄ£inÄt Linstor. IzmÄÄ£inÄju un man patika! Bet mums joprojÄm ir jÄrok dziļÄk. Tagad varu teikt, ka sniegums nav slikts (zemÄk pievienoju etalona rezultÄtus). BÅ«tÄ«bÄ es saÅÄmu tÄdu paÅ”u veiktspÄju kÄ disks tieÅ”i, bez papildu izmaksÄm. (NejautÄjiet, kÄpÄc Portworx ir labÄki skaitļi nekÄ piedziÅas etalons tieÅ”i. Man nav ne jausmas. MaÄ£ija, es domÄju.) TÄtad Linstor pagaidÄm Ŕķiet ļoti efektÄ«vs. To nav tik grÅ«ti uzstÄdÄ«t, taÄu tas nav tik vienkÄrÅ”i kÄ citas iespÄjas. Vispirms man bija jÄinstalÄ Linstor (kodola modulis un rÄ«ki/pakalpojumi) un jÄkonfigurÄ LVM plÄnam nodroÅ”inÄjumam un momentuzÅÄmumu atbalstam Ärpus Kubernetes, tieÅ”i resursdatorÄ, un pÄc tam jÄizveido resursi, kas nepiecieÅ”ami, lai izmantotu krÄtuvi no Kubernetes. Man nepatika, ka tas nedarbojÄs uz CentOS, un man bija jÄizmanto Ubuntu. Nav, protams, briesmÄ«gi, bet nedaudz kaitinoÅ”i, jo dokumentÄcijÄ (kas, starp citu, izcila) ir minÄtas vairÄkas paketes, kuras nevar atrast norÄdÄ«tajÄs Epel krÄtuvÄs. Linstor ir momentuzÅÄmumi, bet ne izbraukuma dublÄjumkopijas, tÄpÄc Å”eit man atkal bija jÄizmanto Velero ar Restic, lai dublÄtu apjomus. Es dotu priekÅ”roku momentuzÅÄmumiem, nevis faila lÄ«meÅa dublÄjumkopijÄm, taÄu to var pieļaut, ja risinÄjums ir veiktspÄjÄ«gs un uzticams. Linstor ir atvÄrtÄ koda, taÄu tam ir arÄ« maksas atbalsts. Ja pareizi saprotu, to var izmantot bez ierobežojumiem, pat ja nav noslÄgts atbalsta lÄ«gums, bet tas ir jÄprecizÄ. Nezinu, cik Linstor ir pÄrbaudÄ«ts Kubernetes, bet pats krÄtuves slÄnis atrodas Ärpus Kubernetes un acÄ«mredzot risinÄjums vakar neparÄdÄ«jÄs, tÄpÄc, iespÄjams, tas jau ir pÄrbaudÄ«ts reÄlos apstÄkļos. Vai Å”eit ir kÄds risinÄjums, kas liks man mainÄ«t domas un atgriezties pie Kubernetes? ES nezinu. Mums joprojÄm ir jÄiedziļinÄs un jÄizpÄta replikÄcija. PaskatÄ«simies. Bet pirmais iespaids labs. Es noteikti gribÄtu izmantot savus Kubernetes klasterus, nevis Heroku, lai bÅ«tu vairÄk brÄ«vÄ«bas un apgÅ«tu jaunas lietas. TÄ kÄ Linstor nav tik viegli uzstÄdÄ«t kÄ citus, tad drÄ«zumÄ par to uzrakstÄ«Å”u ierakstu.
Etaloni
DiemžÄl es nesaglabÄju daudz piezÄ«mju par salÄ«dzinÄjumu, jo nedomÄju, ka par to rakstÄ«Å”u. Man ir rezultÄti tikai no pamata fio etaloniem un tikai viena mezgla klasteriem, tÄpÄc man vÄl nav skaitļu replicÄtÄm konfigurÄcijÄm. Bet no Å”iem rezultÄtiem var iegÅ«t aptuvenu priekÅ”statu par to, ko sagaidÄ«t no katras opcijas, jo es tos salÄ«dzinÄju tajos paÅ”os mÄkoÅserveros, 4 kodoli, 16 GB RAM, ar papildu 100 GB disku pÄrbaudÄ«tajiem sÄjumiem. Es trÄ«s reizes izpildÄ«ju etalonus katram risinÄjumam un aprÄÄ·inÄju vidÄjo rezultÄtu, kÄ arÄ« atiestatÄ«ju servera iestatÄ«jumus katram produktam. Tas viss ir pilnÄ«gi nezinÄtniski, lai sniegtu jums vispÄrÄju priekÅ”statu. Citos testos es nokopÄju 38 GB fotoattÄlu un videoklipu no sÄjuma, lai pÄrbaudÄ«tu lasÄ«Å”anu un rakstÄ«Å”anu, bet diemžÄl es nesaglabÄju skaitļus. ÄŖsÄk sakot: Portworkx bija daudz ÄtrÄks.
Vispirms es izveidoju sÄjumu ar atbilstoÅ”u uzglabÄÅ”anas klasi un pÄc tam veicu darbu ar fio aizkulisÄm. Es paÅÄmu 1 GB, lai novÄrtÄtu veiktspÄju un negaidÄ«tu pÄrÄk ilgi. LÅ«k, rezultÄti:
Es esmu iezÄ«mÄjis katra rÄdÄ«tÄja labÄko vÄrtÄ«bu zaÄ¼Ä krÄsÄ un sliktÄko sarkanÄ krÄsÄ.
SecinÄjums
KÄ redzat, vairumÄ gadÄ«jumu Portworx darbojÄs labÄk nekÄ citi. Bet man tas ir dÄrgi. Es nezinu, cik maksÄ Robin, bet viÅiem ir lieliska bezmaksas versija, tÄpÄc, ja vÄlaties maksas produktu, varat to izmÄÄ£inÄt (cerams, ka viÅi drÄ«z atrisinÄs problÄmu ar atjaunoÅ”anu un dublÄÅ”anu). No trim bezmaksas man vismazÄk bija problÄmas ar OpenEBS, taÄu tÄ veiktspÄja ir nenormÄla. ŽÄl, ka nesaglabÄju vairÄk rezultÄtu, bet ceru, ka skaitļi un mani komentÄri jums palÄ«dzÄs.