{"id":37528,"date":"2019-10-31T22:18:10","date_gmt":"2019-10-31T19:18:10","guid":{"rendered":"https:\/\/prohoster.info\/blog\/hranilishha-v-kubernetes-openebs-vs-rook-ceph-vs-rancher-longhorn-vs-storageos-vs-robin-vs-portworx-vs-linstor\/"},"modified":"2019-10-31T22:18:10","modified_gmt":"2019-10-31T19:18:10","slug":"hranilishha-v-kubernetes-openebs-vs-rook-ceph-vs-rancher-longhorn-vs-storageos-vs-robin-vs-portworx-vs-linstor","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/hranilishha-v-kubernetes-openebs-vs-rook-ceph-vs-rancher-longhorn-vs-storageos-vs-robin-vs-portworx-vs-linstor","title":{"rendered":"\u00dalo\u017ei\u0161t\u011b v Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"\u00dalo\u017ei\u0161t\u011b v Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor\" src=\"\/wp-content\/uploads\/2019\/08\/304037eee8371c64de73ae0fc42f05ac.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><strong>Aktualizace!<\/strong>. V koment\u00e1\u0159\u00edch jeden z \u010dten\u00e1\u0159\u016f navrhl zkusit <noindex><a rel=\"nofollow\" href=\"https:\/\/www.linbit.com\/en\/linstor\/\">Linstor<\/a><\/noindex> (mo\u017en\u00e1 na n\u011bm s\u00e1m pracuje), tak\u017ee jsem p\u0159idal sekci o tomto \u0159e\u0161en\u00ed. Tak\u00e9 jsem napsal <noindex><a rel=\"nofollow\" href=\"http:\/\/vitobotta.com\/2019\/08\/07\/linstor-storage-with-kubernetes\/\">p\u0159\u00edsp\u011bvek o tom, jak ho nainstalovat<\/a><\/noindex>, proto\u017ee proces se v\u00fdrazn\u011b li\u0161\u00ed od ostatn\u00edch.<\/p>\n<p><\/p>\n<p>Pokud m\u00e1m b\u00fdt up\u0159\u00edmn\u00fd, vzdal jsem to a vzdal se <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/\">Kubernetes<\/a><\/noindex> (aspo\u0148 zat\u00edm). Budu pou\u017e\u00edvat <noindex><a rel=\"nofollow\" href=\"https:\/\/www.heroku.com\/\">Heroku<\/a><\/noindex>. Pro\u010d? Kv\u016fli \u00falo\u017en\u00edm syst\u00e9m\u016fm! Kdo by si pomyslel, \u017ee se budu v\u00edce zab\u00fdvat \u00falo\u017ei\u0161ti ne\u017e samotn\u00fdm Kubernetes. Pou\u017e\u00edv\u00e1m <noindex><a rel=\"nofollow\" href=\"https:\/\/www.hetzner.com\/cloud\">Hetzner Cloud<\/a><\/noindex>, proto\u017ee je to levn\u00e9 a v\u00fdkon je dobr\u00fd, a od za\u010d\u00e1tku jsem nasazoval clustery pomoc\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/rancher.com\/\">Rancher<\/a><\/noindex>. Nezkou\u0161el jsem \u0159\u00edzen\u00e9 slu\u017eby Kubernetes od Google\/Amazon\/Microsoft\/DigitalOcean a dal\u0161\u00edch, proto\u017ee jsem se to cht\u011bl nau\u010dit s\u00e1m. A tak\u00e9 jsem \u0161etrn\u00fd.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Tak\u017ee ano, str\u00e1vil jsem spoustu \u010dasu sna\u017e\u00edc se rozhodnout, kter\u00e9 \u00falo\u017ei\u0161t\u011b zvolit, kdy\u017e jsem zva\u017eoval mo\u017en\u00fd stack na Kubernetes. Preferuji \u0159e\u0161en\u00ed s otev\u0159en\u00fdm zdrojov\u00fdm k\u00f3dem, a to nejen kv\u016fli cen\u011b, ale tak\u00e9 jsem prozkoumal p\u00e1r placen\u00fdch variant z zv\u011bdavosti, proto\u017ee maj\u00ed bezplatn\u00e9 verze s omezen\u00edmi. Zaznamenal jsem n\u011bkolik \u010d\u00edsel z posledn\u00edch test\u016f, kdy\u017e jsem srovn\u00e1val r\u016fzn\u00e9 mo\u017enosti, a ty by mohly zaj\u00edmat ty, kte\u0159\u00ed studuj\u00ed \u00falo\u017ei\u0161t\u011b v Kubernetes. A\u010dkoli jsem osobn\u011b zat\u00edm s Kubernetes skon\u010dil. Je\u0161t\u011b chci zm\u00ednit <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/hetznercloud\/csi-driver\">ovlada\u010d CSI<\/a><\/noindex>, kter\u00fdm lze p\u0159\u00edmo p\u0159ipravovat svazky Hetzner Cloud, ale zat\u00edm jsem ho nezkou\u0161el. Zkoumal jsem cloudov\u00e1 softwarov\u011b definovan\u00e1 \u00falo\u017ei\u0161t\u011b, proto\u017ee jsem pot\u0159eboval replikaci a mo\u017enost rychle p\u0159ipojit trval\u00e9 svazky na jak\u00e9mkoli uzlu, zvl\u00e1\u0161\u0165 v p\u0159\u00edpad\u011b selh\u00e1n\u00ed uzl\u016f a podobn\u00fdch situac\u00ed. N\u011bkter\u00e1 \u0159e\u0161en\u00ed nab\u00edzej\u00ed sn\u00edmky v \u010dase a off-site z\u00e1lohy, co\u017e je praktick\u00e9.<\/p>\n<p><\/p>\n<p>Otestoval jsem 6\u20137 \u0159e\u0161en\u00ed pro ukl\u00e1d\u00e1n\u00ed:<\/p>\n<p><\/p>\n<h3 id=\"openebshttpsopenebsio\"><noindex><a rel=\"nofollow\" href=\"https:\/\/openebs.io\/\">OpenEBS<\/a><\/noindex><\/h3>\n<p><\/p>\n<p>Jak u\u017e jsem \u0159\u00edkal <noindex><a rel=\"nofollow\" href=\"http:\/\/vitobotta.com\/2019\/07\/03\/openebs-tips\/\">v p\u0159edchoz\u00edm p\u0159\u00edsp\u011bvku<\/a><\/noindex>, po testov\u00e1n\u00ed v\u011bt\u0161iny mo\u017enost\u00ed z seznamu jsem se zpo\u010d\u00e1tku zastavil na OpenEBS. OpenEBS je velmi snadn\u00e9 nainstalovat a pou\u017e\u00edvat, ale, pokud m\u00e1m b\u00fdt up\u0159\u00edmn\u00fd, po testech s re\u00e1ln\u00fdmi daty pod z\u00e1t\u011b\u017e\u00ed m\u011b jeho v\u00fdkon zklamal. Je to open-source, a v\u00fdvoj\u00e1\u0159i na sv\u00e9m <noindex><a rel=\"nofollow\" href=\"https:\/\/openebs-community.slack.com\/\">Slack kan\u00e1lu<\/a><\/noindex> v\u017edy mi velmi pomohli, kdy\u017e jsem pot\u0159eboval pomoc. Bohu\u017eel m\u00e1 velmi n\u00edzk\u00fd v\u00fdkon ve srovn\u00e1n\u00ed s jin\u00fdmi variantami, tak\u017ee jsem musel prov\u00e9st testy znovu. V sou\u010dasn\u00e9 dob\u011b m\u00e1 OpenEBS 3 \u00falo\u017en\u00e9 motory, ale publikuji v\u00fdsledky benchmarku pro cStor. Zat\u00edm nem\u00e1m \u010d\u00edsla pro Jiva a LocalPV.<\/p>\n<p><\/p>\n<p>Stru\u010dn\u011b \u0159e\u010deno, Jiva je o n\u011bco rychlej\u0161\u00ed, zat\u00edmco LocalPV je skute\u010dn\u011b rychl\u00fd, nen\u00ed hor\u0161\u00ed ne\u017e benchmark disku p\u0159\u00edmo. Probl\u00e9m s LocalPV je, \u017ee p\u0159\u00edstup k n\u011bmu lze z\u00edskat pouze na t\u00e9 uzlu, kde byl p\u0159ipraven, a replikace v\u016fbec neexistuje. M\u011bl jsem n\u011bjak\u00e9 probl\u00e9my s obnoven\u00edm z\u00e1lohy p\u0159es <noindex><a rel=\"nofollow\" href=\"https:\/\/velero.io\/\">Velero<\/a><\/noindex> na nov\u00e9m clusteru, proto\u017ee n\u00e1zvy uzl\u016f byly odli\u0161n\u00e9. Pokud jde o z\u00e1lohy, cStor m\u00e1 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/openebs\/velero-plugin\">plugin pro Velero<\/a><\/noindex>, s kter\u00fdm lze prov\u00e1d\u011bt off site z\u00e1lohy snapshot\u016f k ur\u010dit\u00e9mu \u010dasu, co\u017e je pohodln\u011bj\u0161\u00ed ne\u017e z\u00e1lohy na \u00farovni soubor\u016f s Velero-Restic. Napsal jsem <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/vitobotta\/velero-openebs-backup\">n\u011bkolik skript\u016f<\/a><\/noindex>, aby bylo snaz\u0161\u00ed \u0159\u00eddit z\u00e1lohy a obnoven\u00ed s t\u00edmto pluginem. Celkov\u011b se mi OpenEBS velmi l\u00edb\u00ed, ale jeho v\u00fdkon&#8230;<\/p>\n<p><\/p>\n<h3 id=\"rookhttpsrookio\"><noindex><a rel=\"nofollow\" href=\"https:\/\/rook.io\/\">Rook<\/a><\/noindex><\/h3>\n<p><\/p>\n<p>Rook m\u00e1 tak\u00e9 otev\u0159en\u00fd zdrojov\u00fd k\u00f3d, a od ostatn\u00edch variant v seznamu se li\u0161\u00ed t\u00edm, \u017ee je to orchestr\u00e1tor \u00falo\u017ei\u0161t\u011b, kter\u00fd prov\u00e1d\u00ed slo\u017eit\u00e9 \u00fakoly spr\u00e1vy \u00falo\u017ei\u0161t\u011b s r\u016fzn\u00fdmi backendy, nap\u0159\u00edklad <noindex><a rel=\"nofollow\" href=\"https:\/\/ceph.io\/\">Ceph<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"http:\/\/edgefs.io\/\">EdgeFS<\/a><\/noindex> a dal\u0161\u00ed, co\u017e v\u00fdrazn\u011b usnad\u0148uje pr\u00e1ci. M\u011bl jsem probl\u00e9my s EfgeFS, kdy\u017e jsem ho zkou\u0161el p\u0159ed n\u011bkolika m\u011bs\u00edci, tak\u017ee jsem testoval p\u0159ev\u00e1\u017en\u011b s Ceph. Ceph nab\u00edz\u00ed nejen blokov\u00e9 \u00falo\u017ei\u0161t\u011b, ale tak\u00e9 objektov\u00e9 \u00falo\u017ei\u0161t\u011b kompatibiln\u00ed se S3\/Swift a distribuovan\u00fd souborov\u00fd syst\u00e9m. Co se mi na Cephu l\u00edb\u00ed, je mo\u017enost roz\u0161\u00ed\u0159it data objemu na n\u011bkolik disk\u016f, aby objem mohl vyu\u017e\u00edvat v\u00edce prostoru na disku, ne\u017e se vejde na jeden disk. To je pohodln\u00e9. Dal\u0161\u00ed skv\u011bl\u00e1 funkce je, \u017ee kdy\u017e p\u0159id\u00e1te do clustru disky, automaticky p\u0159erozd\u011bl\u00ed data mezi v\u0161echny disky.<\/p>\n<p><\/p>\n<p>Ceph m\u00e1 snapshoty, ale jak v\u00edte, nelze je p\u0159\u00edmo pou\u017e\u00edt v Rook\/Kubernetes. I kdy\u017e jsem se t\u00edm podrobn\u011bji nezab\u00fdval. Off site z\u00e1lohy bohu\u017eel nejsou, tak\u017ee bude pot\u0159eba pou\u017e\u00edt n\u011bco jako Velero\/Restic, ale tam jsou pouze z\u00e1lohy na \u00farovni soubor\u016f, nikoli snapshoty v dan\u00e9m okam\u017eiku. Na druhou stranu se mi v Rook velmi l\u00edbila jednoduchost pr\u00e1ce s Ceph \u2014 skr\u00fdv\u00e1 t\u00e9m\u011b\u0159 v\u0161echny slo\u017eit\u00e9 z\u00e1le\u017eitosti a nab\u00edz\u00ed n\u00e1stroje pro p\u0159\u00edmou komunikaci s Ceph pro odstra\u0148ov\u00e1n\u00ed probl\u00e9m\u016f. Bohu\u017eel jsem m\u011bl st\u00e1le probl\u00e9my se stresov\u00fdmi testy objem\u016f Ceph. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/rook\/rook\/issues\/3132\">tento probl\u00e9m<\/a><\/noindex>, kv\u016fli n\u011bmu\u017e je Ceph nestabiln\u00ed. Zat\u00edm nen\u00ed jasn\u00e9, zda je to chyba v samotn\u00e9m Ceph nebo probl\u00e9m v tom, jak Rook spravuje Ceph. Pohr\u00e1l jsem si s nastaven\u00edm pam\u011bti a bylo to lep\u0161\u00ed, ale probl\u00e9m nebyl \u00fapln\u011b vy\u0159e\u0161en. Ceph m\u00e1 slu\u0161n\u00fd v\u00fdkon, jak je vid\u011bt v benchmarkech n\u00ed\u017ee. Nav\u00edc m\u00e1 dobrou monitorovac\u00ed konzoli.<\/p>\n<p><\/p>\n<h3 id=\"rancher-longhornhttpsgithubcomlonghornlonghorn\"><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/longhorn\/longhorn\">Rancher Longhorn<\/a><\/noindex><\/h3>\n<p><\/p>\n<p>Longhorn se mi opravdu l\u00edb\u00ed. Domn\u00edv\u00e1m se, \u017ee je to perspektivn\u00ed \u0159e\u0161en\u00ed. P\u0159esto sami v\u00fdvoj\u00e1\u0159i (Rancher Labs) uzn\u00e1vaj\u00ed, \u017ee pro produk\u010dn\u00ed prost\u0159ed\u00ed zat\u00edm nen\u00ed vhodn\u00fd, a to je patrn\u00e9. M\u00e1 otev\u0159en\u00fd zdrojov\u00fd k\u00f3d a slu\u0161n\u00fd v\u00fdkon (i kdy\u017e se jeho optimalizac\u00ed dosud nezab\u00fdvali), ale objemy se k podu p\u0159ipojuj\u00ed velmi pomalu, v nejhor\u0161\u00edch p\u0159\u00edpadech to trv\u00e1 15\u201316 minut, zejm\u00e9na po obnov\u011b velk\u00e9 z\u00e1lohy nebo upgradu pracovn\u00ed z\u00e1t\u011b\u017ee. M\u00e1 snapshoty a off site z\u00e1lohy t\u011bchto snapshot\u016f, ale ty se t\u00fdkaj\u00ed pouze objem\u016f, tak\u017ee budete stejn\u011b pot\u0159ebovat n\u011bco jako Velero pro z\u00e1lohov\u00e1n\u00ed ostatn\u00edch zdroj\u016f. Z\u00e1lohy a obnovy jsou velmi spolehliv\u00e9, ale neuv\u011b\u0159iteln\u011b pomal\u00e9. Opravu, prost\u011b extr\u00e9mn\u011b pomal\u00e9. Vyu\u017eit\u00ed procesorov\u00fdch zdroj\u016f a zat\u00ed\u017een\u00ed syst\u00e9mu \u010dasto vzr\u016fstaj\u00ed p\u0159i pr\u00e1ci se st\u0159edn\u011b velk\u00fdmi daty v Longhorn. Existuje pohodln\u00e1 monitorovac\u00ed konzole pro spr\u00e1vu Longhorn. U\u017e jsem \u0159ekl, \u017ee se mi Longhorn l\u00edb\u00ed, ale je t\u0159eba na n\u011bm po\u0159\u00e1dn\u011b zapracovat.<\/p>\n<p><\/p>\n<h3 id=\"storageoshttpsstorageoscom\"><noindex><a rel=\"nofollow\" href=\"https:\/\/storageos.com\/\">StorageOS<\/a><\/noindex><\/h3>\n<p><\/p>\n<p>StorageOS je prvn\u00edm placen\u00fdm produktem na seznamu. M\u00e1 verzi pro v\u00fdvoj\u00e1\u0159e s omezenou velikost\u00ed spravovan\u00e9ho \u00falo\u017ei\u0161t\u011b na 500 GB, ale po\u010det uzl\u016f nen\u00ed, jak se zd\u00e1, omezen. V obchodn\u00edm odd\u011blen\u00ed mi \u0159ekli, \u017ee cena za\u010d\u00edn\u00e1 na 125 $ m\u011bs\u00ed\u010dn\u011b za 1 TB, pokud si to pamatuji spr\u00e1vn\u011b. Existuje z\u00e1kladn\u00ed monitorovac\u00ed panel a pohodln\u00e9 CLI, ale s v\u00fdkonnost\u00ed je to n\u011bjak divn\u00e9: v n\u011bkter\u00fdch benchmark\u00e1ch je docela slu\u0161n\u00e1, ale ve stresov\u00e9m testu objem\u016f se mi rychlost v\u016fbec nel\u00edbila. Celkov\u011b nev\u00edm, co \u0159\u00edct. Proto jsem se o to p\u0159\u00edli\u0161 nezaj\u00edmal. Nebylo zde \u017e\u00e1dn\u00e9 off-site z\u00e1lohov\u00e1n\u00ed a budu muset tak\u00e9 pou\u017e\u00edt Velero s Restic pro z\u00e1lohov\u00e1n\u00ed objem\u016f. Divn\u00e9, v\u017edy\u0165 je to placen\u00fd produkt. A v\u00fdvoj\u00e1\u0159i nem\u011bli moc chu\u0165 komunikovat na Slacku.<\/p>\n<p><\/p>\n<h3 id=\"robinhttpsrobinio\"><noindex><a rel=\"nofollow\" href=\"https:\/\/robin.io\/\">Robin<\/a><\/noindex><\/h3>\n<p><\/p>\n<p>O Robin jsem se dozv\u011bd\u011bl na Redditu od jejich technick\u00e9ho \u0159editele. D\u0159\u00edve jsem o n\u011bm nesly\u0161el. Mo\u017en\u00e1 proto, \u017ee jsem hledal bezplatn\u00e1 \u0159e\u0161en\u00ed, zat\u00edmco Robin je placen\u00e9. Maj\u00ed docela \u0161t\u011bdr\u00fd bezplatn\u00fd pl\u00e1n s \u00falo\u017ei\u0161t\u011bm o velikosti 10 TB a t\u0159emi uzly. Celkov\u011b je produkt velmi solidn\u00ed a nab\u00edz\u00ed p\u0159\u00edjemn\u00e9 funkce. Existuje vynikaj\u00edc\u00ed CLI, ale to nejlep\u0161\u00ed je, \u017ee m\u016f\u017eete vytvo\u0159it snapshot a z\u00e1lohu cel\u00e9 aplikace (v sekci zdroj\u016f se to naz\u00fdv\u00e1 release Helm nebo \u201eflex apps\u201c), v\u010detn\u011b svazk\u016f a dal\u0161\u00edch zdroj\u016f, tak\u017ee se m\u016f\u017eete obej\u00edt bez Velera. A v\u0161e by bylo skv\u011bl\u00e9, kdyby nebyl jeden mal\u00fd detail: pokud obnovujete (nebo \u201eimportujete\u201c, jak se to naz\u00fdv\u00e1 v Robin) aplikaci na nov\u00e9m clusteru \u2014 nap\u0159\u00edklad v p\u0159\u00edpad\u011b obnovy po hav\u00e1rii \u2014 obnova samoz\u0159ejm\u011b funguje, ale pokra\u010dovat v z\u00e1lohov\u00e1n\u00ed aplikace nen\u00ed mo\u017en\u00e9. V t\u00e9to verzi je to zkr\u00e1tka nemo\u017en\u00e9 a v\u00fdvoj\u00e1\u0159i to potvrdili. To je m\u00edrn\u011b \u0159e\u010deno divn\u00e9, zvl\u00e1\u0161\u0165 kdy\u017e vezmeme v \u00favahu ostatn\u00ed v\u00fdhody (nap\u0159\u00edklad neuv\u011b\u0159iteln\u011b rychl\u00e9 z\u00e1lohy a obnovy). V\u00fdvoj\u00e1\u0159i slibuj\u00ed, \u017ee v\u0161e oprav\u00ed v dal\u0161\u00ed verzi. V\u00fdkon je celkov\u011b dobr\u00fd, ale v\u0161iml jsem si jednoho zvl\u00e1\u0161tn\u00edho jevu: pokud spust\u00edm benchmark p\u0159\u00edmo na svazku p\u0159ipojen\u00e9m k hostiteli, rychlost \u010dten\u00ed je mnohem vy\u0161\u0161\u00ed ne\u017e ve stejn\u00e9m svazku, ale uvnit\u0159 podu. V\u0161echny ostatn\u00ed v\u00fdsledky jsou identick\u00e9, ale teoreticky by nem\u011bla b\u00fdt \u017e\u00e1dn\u00e1 rozd\u00edlnost. A\u010dkoliv na tom st\u00e1le pracuj\u00ed, rozesmutnilo m\u011b to, \u017ee probl\u00e9m s obnovou a z\u00e1lohov\u00e1n\u00edm p\u0159etrv\u00e1v\u00e1 \u2014 zd\u00e1lo se mi, \u017ee jsem kone\u010dn\u011b na\u0161el vhodn\u00e9 \u0159e\u0161en\u00ed, a dokonce jsem byl ochoten za n\u011bj zaplatit, a\u017e budu pot\u0159ebovat v\u00edce prostoru nebo v\u00edce server\u016f.<\/p>\n<p><\/p>\n<h3 id=\"portworxhttpsportworxcom\"><noindex><a rel=\"nofollow\" href=\"https:\/\/portworx.com\/\">Portworx<\/a><\/noindex><\/h3>\n<p><\/p>\n<p>Tady nem\u00e1m moc co \u0159\u00edct. Je to placen\u00fd produkt, stejn\u011b skv\u011bl\u00fd a drah\u00fd. V\u00fdkon je prost\u011b \u00fa\u017easn\u00fd. Zat\u00edm to nejlep\u0161\u00ed, co m\u00e1me. V Slacku mi \u0159ekli, \u017ee cena za\u010d\u00edn\u00e1 na 205 $ m\u011bs\u00ed\u010dn\u011b za uzel, jak je uvedeno na GKE Marketplace od Google. Nev\u00edm, jestli to bude levn\u011bj\u0161\u00ed p\u0159i p\u0159\u00edm\u00e9m n\u00e1kupu. Tak jako tak, j\u00e1 si to nemohu dovolit, tak\u017ee jsem byl velmi a velmi zklaman\u00fd, \u017ee licence pro v\u00fdvoj\u00e1\u0159e (do 1 TB a 3 uzly) je prakticky k ni\u010demu s Kubernetes, pokud se spokoj\u00edte s statickou p\u0159\u00edpravou. Doufal jsem, \u017ee firemn\u00ed licence se automaticky sn\u00ed\u017e\u00ed na \u00farove\u0148 v\u00fdvoj\u00e1\u0159e na konci zku\u0161ebn\u00edho obdob\u00ed, ale to se nestalo. Licenci pro v\u00fdvoj\u00e1\u0159e lze pou\u017e\u00edvat pouze p\u0159\u00edmo s Dockerem, a nastaven\u00ed v Kubernetes je velmi slo\u017eit\u00e9 a omezen\u00e9. J\u00e1 samoz\u0159ejm\u011b preferuji open source, ale kdybych m\u011bl pen\u00edze, ur\u010dit\u011b bych zvolil Portworx. Jeho v\u00fdkon zat\u00edm prost\u011b nem\u00e1 konkurenci mezi ostatn\u00edmi mo\u017enostmi.<\/p>\n<p><\/p>\n<h3 id=\"linstorhttpswwwlinbitcomenlinstor\"><noindex><a rel=\"nofollow\" href=\"https:\/\/www.linbit.com\/en\/linstor\/\">Linstor<\/a><\/noindex><\/h3>\n<p><\/p>\n<p>Tuto sekci jsem p\u0159idal a\u017e po publikaci p\u0159\u00edsp\u011bvku, kdy\u017e jeden \u010dten\u00e1\u0159 navrhl vyzkou\u0161et Linstor. Vyzkou\u0161el jsem to a byl jsem spokojen! Ale je t\u0159eba se je\u0161t\u011b hloub\u011bji prozkoumat. Te\u010f mohu \u0159\u00edct, \u017ee v\u00fdkon nen\u00ed \u0161patn\u00fd (v\u00fdsledky benchmarku jsem p\u0159idal n\u00ed\u017ee). V podstat\u011b jsem dostal stejn\u00fd v\u00fdkon, jak\u00fd m\u00e1m pro disk p\u0159\u00edmo, \u00fapln\u011b bez ztr\u00e1t. (Neptejte se, pro\u010d maj\u00ed Portworx lep\u0161\u00ed \u010d\u00edsla ne\u017e benchmark disku p\u0159\u00edmo. Nem\u00e1m tu\u0161en\u00ed. Asi magie.) Tak\u017ee Linstor se zat\u00edm zd\u00e1 b\u00fdt velmi efektivn\u00ed. Instalace nen\u00ed zrovna slo\u017eit\u00e1, ale nen\u00ed tak snadn\u00e1 jako u ostatn\u00edch mo\u017enost\u00ed. Nejprve jsem musel nainstalovat Linstor (modul j\u00e1dra a n\u00e1stroje\/slu\u017eby) a nastavit LVM pro thin provisioning a podporu snapshot\u016f mimo Kubernetes, p\u0159\u00edmo na hostiteli, a pak vytvo\u0159it pot\u0159ebn\u00e9 zdroje pro pou\u017e\u00edv\u00e1n\u00ed \u00falo\u017ei\u0161t\u011b z Kubernetes. Nel\u00edbilo se mi, \u017ee nefungoval na CentOS a musel jsem pou\u017e\u00edt Ubuntu. Nen\u00ed to sice trag\u00e9die, ale trochu to roz\u010diluje, proto\u017ee v dokumentaci (kter\u00e1 je mimochodem skv\u011bl\u00e1) se zmi\u0148uje n\u011bkolik bal\u00edk\u016f, kter\u00e9 nelze naj\u00edt v uveden\u00fdch repozit\u00e1\u0159\u00edch Epel. V Linstoru jsou snapshoty, ale ne off-site z\u00e1lohy, tak\u017ee jsem musel znovu pou\u017e\u00edt Velero s Resticem pro z\u00e1lohu objem\u016f. Rad\u011bji bych m\u011bl snapshoty m\u00edsto z\u00e1loh na \u00farovni soubor\u016f, ale to se d\u00e1 p\u0159e\u017e\u00edt, pokud bude \u0159e\u0161en\u00ed v\u00fdkonn\u00e9 a spolehliv\u00e9. Linstor m\u00e1 otev\u0159en\u00fd zdroj, ale existuje placen\u00e1 podpora. Pokud ch\u00e1pu spr\u00e1vn\u011b, lze ho pou\u017e\u00edvat bez omezen\u00ed, i kdy\u017e nem\u00e1te smlouvu na podporu, ale to je t\u0159eba ov\u011b\u0159it. Nev\u00edm, jak moc je Linstor ov\u011b\u0159en pro Kubernetes, ale samotn\u00e1 \u00farove\u0148 \u00falo\u017ei\u0161t\u011b je za hranicemi Kubernetes a zd\u00e1 se, \u017ee toto \u0159e\u0161en\u00ed nevzniklo v\u010dera, tak\u017ee asi u\u017e bylo ov\u011b\u0159eno v re\u00e1ln\u00fdch podm\u00ednk\u00e1ch. Existuje zde n\u011bjak\u00e9 \u0159e\u0161en\u00ed, kter\u00e9 m\u011b p\u0159esv\u011bd\u010d\u00ed a p\u0159ivede zp\u011bt k Kubernetes? Nev\u00edm, nev\u00edm. Je t\u0159eba se je\u0161t\u011b v\u00edce prob\u00e1dat a prozkoumat replikaci. Uvid\u00edme. Ale prvn\u00ed dojem je dobr\u00fd. Rozhodn\u011b bych rad\u011bji pou\u017e\u00edval sv\u00e9 vlastn\u00ed Kubernetes clustery m\u00edsto Heroku, abych m\u011bl v\u00edce svobody a u\u010dil se nov\u00fdm v\u011bcem. Proto\u017ee instalace Linstoru nen\u00ed tak jednoduch\u00e1 jako u ostatn\u00edch, brzy o tom nap\u00ed\u0161u \u010dl\u00e1nek.<\/p>\n<p><\/p>\n<h3 id=\"benchmarki\">Benchmarky<\/h3>\n<p><\/p>\n<p>Bohu\u017eel, uchoval jsem si m\u00e1lo z\u00e1znam\u016f o srovn\u00e1n\u00ed, proto\u017ee jsem si nemyslel, \u017ee o tom budu ps\u00e1t. M\u00e1m pouze v\u00fdsledky z\u00e1kladn\u00edch benchmark\u016f fio a to jen pro clustery s jedn\u00edm uzlem, tak\u017ee pro replikovan\u00e9 konfigurace zat\u00edm nem\u00e1m \u010d\u00edsla. Ale z t\u011bchto v\u00fdsledk\u016f lze z\u00edskat p\u0159ibli\u017enou p\u0159edstavu o tom, co o\u010dek\u00e1vat od ka\u017ed\u00e9 varianty, proto\u017ee jsem je srovn\u00e1val na stejn\u00fdch cloudov\u00fdch serverech, 4 j\u00e1dra, 16 GB RAM, s dodate\u010dn\u00fdm diskem o kapacit\u011b 100 GB pro testovan\u00e9 objemy. Benchmarky jsem spustil t\u0159ikr\u00e1t pro ka\u017ed\u00e9 \u0159e\u0161en\u00ed a vypo\u010d\u00edtal pr\u016fm\u011brn\u00fd v\u00fdsledek, plus jsem resetoval nastaven\u00ed serveru pro ka\u017ed\u00fd produkt. V\u0161e je zcela neodborn\u00e9, jen abyste m\u011bli obecnou p\u0159edstavu. V jin\u00fdch testech jsem kop\u00edroval 38 GB fotek a vide\u00ed z objemu a na objem, abych otestoval \u010dten\u00ed a z\u00e1pis, ale \u010d\u00edsla, bohu\u017eel, nem\u00e1m. Stru\u010dn\u011b \u0159e\u010deno: Portworx bylo mnohem rychlej\u0161\u00ed.<\/p>\n<p><\/p>\n<p>Pro benchmark objem\u016f jsem pou\u017eil tento manifest:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">kind: PersistentVolumeClaim\napiVersion: v1\nmetadata:\n  name: dbench\nspec:\n  storageClassName: ...\n  accessModes:\n    - ReadWriteOnce\n  resources:\n    requests:\n      storage: 5Gi\n---\napiVersion: batch\/v1\nkind: Job\nmetadata:\n  name: dbench\nspec:\n  template:\n    spec:\n      containers:\n      - name: dbench\n        image: sotoaster\/dbench:latest\n        imagePullPolicy: IfNotPresent\n        env:\n          - name: DBENCH_MOUNTPOINT\n            value: \/data\n          - name: FIO_SIZE\n            value: 1G\n        volumeMounts:\n        - name: dbench-pv\n          mountPath: \/data\n      restartPolicy: Never\n      volumes:\n      - name: dbench-pv\n        persistentVolumeClaim:\n          claimName: dbench\n  backoffLimit: 4<\/code><\/pre>\n<p><\/p>\n<p>Nejprve jsem vytvo\u0159il objem se odpov\u00eddaj\u00edc\u00ed t\u0159\u00eddou \u00falo\u017ei\u0161t\u011b a pot\u00e9 jsem spustil \u00falohu s fio na pozad\u00ed. Vybral jsem 1 GB, abych si odhadl v\u00fdkon a ne\u010dekal p\u0159\u00edli\u0161 dlouho. Zde jsou v\u00fdsledky:<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/nm\/i_\/4h\/nmi_4holmvcqehuigcoespgeure.png\"><img decoding=\"async\" alt=\"\u00dalo\u017ei\u0161t\u011b v Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor\" src=\"\/wp-content\/uploads\/2019\/08\/41e91c4e299759817bba6a2a8e9ff14e.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p><\/p>\n<p>Nejlep\u0161\u00ed hodnota ka\u017ed\u00e9 metriky je zv\u00fdrazn\u011bna zelen\u011b a nejhor\u0161\u00ed \u010derven\u011b.<\/p>\n<p><\/p>\n<h3 id=\"zaklyuchenie\">Z\u00e1v\u011br<\/h3>\n<p><\/p>\n<p>Jak vid\u00edte, v drtiv\u00e9 v\u011bt\u0161in\u011b p\u0159\u00edpad\u016f si Portworx vedlo l\u00e9pe ne\u017e ostatn\u00ed. Ale pro m\u011b je to drah\u00e9. Nev\u00edm, kolik stoj\u00ed Robin, ale maj\u00ed skv\u011blou bezplatnou verzi, tak\u017ee pokud pot\u0159ebujete placen\u00fd produkt, m\u016f\u017eete to zkusit (douf\u00e1m, \u017ee brzy vy\u0159e\u0161\u00ed probl\u00e9m s obnovou a z\u00e1lohov\u00e1n\u00edm). Z t\u011bch t\u0159\u00ed bezplatn\u00fdch jsem m\u011bl nejm\u00e9n\u011b probl\u00e9m\u016f s OpenEBS, ale jeho v\u00fdkon je tragick\u00fd. \u0160koda, \u017ee jsem si uchoval m\u00e9n\u011b v\u00fdsledk\u016f, ale douf\u00e1m, \u017ee v\u00e1m uveden\u00e1 \u010d\u00edsla a m\u00e9 koment\u00e1\u0159e pomohou.<\/p>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/southbridge\/blog\/464987\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435!. \u0412 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0445 \u043e\u0434\u0438\u043d \u0438\u0437 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c Linstor (\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043e\u043d \u0441\u0430\u043c \u043d\u0430\u0434 \u043d\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442), \u0442\u0430\u043a \u0447\u0442\u043e \u044f \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u0440\u0430\u0437\u0434\u0435\u043b \u043e\u0431 \u044d\u0442\u043e\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0438. \u0415\u0449\u0435 \u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u043e\u0441\u0442 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445. \u0415\u0441\u043b\u0438 \u0447\u0435\u0441\u0442\u043d\u043e, \u044f \u0441\u0434\u0430\u043b\u0441\u044f \u0438 \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043e\u0442 Kubernetes (\u0432\u043e \u0432\u0441\u044f\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043f\u043e\u043a\u0430). \u0411\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Heroku. \u041f\u043e\u0447\u0435\u043c\u0443? [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28163,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37528","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/hranilishha-v-kubernetes-openebs-vs-rook-ceph-vs-rancher-longhorn-vs-storageos-vs-robin-vs-portworx-vs-linstor\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0432 Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/hranilishha-v-kubernetes-openebs-vs-rook-ceph-vs-rancher-longhorn-vs-storageos-vs-robin-vs-portworx-vs-linstor\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:18:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:18:10+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47\u00dalo\u017ei\u0161t\u011b v Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/hranilishha-v-kubernetes-openebs-vs-rook-ceph-vs-rancher-longhorn-vs-storageos-vs-robin-vs-portworx-vs-linstor","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0432 Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor | ProHoster","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/hranilishha-v-kubernetes-openebs-vs-rook-ceph-vs-rancher-longhorn-vs-storageos-vs-robin-vs-portworx-vs-linstor","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:18:10+00:00","article:modified_time":"2019-10-31T19:18:10+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37528","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 18:13:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:25:26","updated":"2026-01-23 18:13:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/37528","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=37528"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/37528\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/28163"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=37528"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=37528"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=37528"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}