Ka waiho ʻana ma Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Ka waiho ʻana ma Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Hōʻano hou!. Ma nā ʻōlelo, ua ʻōlelo kekahi o ka poʻe heluhelu e hoʻāʻo Linstor (Malia paha ke hana nei ʻo ia iā ia iho) no laila ua hoʻohui au i kahi ʻāpana e pili ana i kēia hoʻonā. Ua kakau no hoi au e hoʻouna i ka pehea e hoʻokomo ai, no ka mea, he okoa loa ka hana ana mai ke koena.

ʻO kaʻoiaʻiʻo, hāʻawi wau a hāʻawi Kubernetes (ma ka liʻiliʻi loa i kēia manawa). E hoʻohana wau ʻO Heroku. No ke aha mai? No ka waiho ʻana! ʻO wai ka mea i manaʻo e ʻoi aku ka nui o ka mālama ʻana ma mua o Kubernetes ponoʻī. Hoʻohana wau Kapua Hetznerno ka mea he maʻalahi a maikaʻi ka hana a mai ka hoʻomaka ʻana ua hoʻohana wau i nā pūʻulu Kahului. ʻAʻole au i hoʻāʻo i nā lawelawe Kubernetes mālama ʻia mai Google/Amazon/Microsoft/DigitalOcean, etc., etc., no ka mea, makemake au e aʻo iaʻu iho. ʻO wau pū kekahi.

No laila ʻae, ua hoʻohana au i ka manawa nui e hoʻoholo i kahi waihona e koho ai i ka wā e loiloi ana au i kahi waihona Kubernetes hiki. Makemake au i nā hāʻina open source, ʻaʻole wale ma muli o ke kumukūʻai, akā ua nānā au i ʻelua mau koho uku ma muli o ka ʻimi no ka mea he mau mana manuahi me nā palena. Ua kākau wau i kekahi mau helu mai nā hoʻokolohua hou i ka wā i hoʻohālikelike ai au i nā koho like ʻole, a makemake paha lākou i ka poʻe e aʻo ana e pili ana i ka waiho ʻana o Kubernetes. ʻOiai ua haʻi aku wau iā Kubernetes i kēia manawa. Makemake au e haʻi Keaukaha CSI, hiki ke hoʻolako pololei i nā puke Hetzner Cloud, akā ʻaʻole au i hoʻāʻo. Ua nānā au i ka mālama ʻana i ka polokalamu kapuaʻi no ka mea makemake au i ka hoʻopiʻi ʻana a me ka hiki ke hoʻopaʻa koke i nā leo hoʻomau ma kekahi node, ʻoi aku ka nui o nā hemahema o ka node a me nā kūlana like ʻole. Hāʻawi kekahi mau hāʻina i nā kiʻi kiko-i-manawa a me nā hoʻihoʻi ʻana ma waho o ka pūnaewele, kahi kūpono.

Ua hoʻāʻo au i 6-7 mau hoʻonā mālama:

OpenEBS

E like me kaʻu i ʻōlelo ai ma kahi pou muaMa hope o ka hoʻāʻo ʻana i ka hapa nui o nā koho mai ka papa inoa, ua noho mua wau ma OpenEBS. He mea maʻalahi loa ka OpenEBS e hoʻouka a hoʻohana, akā no ka ʻoiaʻiʻo, ma hope o ka hoʻāʻo ʻana me ka ʻikepili maoli ma lalo o ka ukana, ua hōʻeha wau i kāna hana. He kumu hāmama kēia, a aia nā mea hoʻomohala iā lākou iho Kanal Slack kōkua mau i ka wā e pono ai au i ke kōkua. ʻO ka mea pōʻino, he maikaʻi loa kāna hana i hoʻohālikelike ʻia i nā koho ʻē aʻe, no laila pono e holo hou nā hoʻokolohua. Loaʻa iā OpenEBS i kēia manawa he 3 mau mīkini mālama, akā ke kau nei au i nā hopena benchmark no cStor. ʻAʻohe aʻu mau helu no Jiva a me LocalPV i kēia manawa.

I ka pōkole, ʻoi aku ka wikiwiki o Jiva, a ʻo ka LocalPV maʻamau ka wikiwiki, ʻaʻole i ʻoi aku ka maikaʻi ma mua o ka pae kuhikuhi disk. ʻO ka pilikia me LocalPV ʻo ia ka hiki ke kiʻi wale ʻia ka leo ma ka node kahi i hoʻomākaukau ʻia ai, a ʻaʻohe mea hou. Ua loaʻa iaʻu kekahi mau pilikia i ka hoʻihoʻi ʻana i kahi waihona ma o Kapaka ma kahi hui hou no ka mea ʻokoʻa nā inoa node. Inā mākou e kamaʻilio e pili ana i nā backup, ua loaʻa iā cStor plugin no Velero, hiki iā ʻoe ke hana i nā hoʻihoʻi ma waho o ka pūnaewele i nā kiʻi paʻi i kahi manawa, ʻoi aku ka maʻalahi ma mua o nā waihona pae waihona me Velero-Restic. Ua kākau wau mau palapala, i mea e maʻalahi ai ka hoʻokele ʻana i nā backup a me ka hoʻihoʻi ʻana me kēia plugin. Ma keʻano holoʻokoʻa, makemake nui au iā OpenEBS, akā ʻo kāna hana ...

Ke ʻOihana

ʻO Rook kahi kumu wehe a ʻokoʻa mai nā koho ʻē aʻe ma ka papa inoa no ka mea he orchestrator mālama e hana i nā hana hoʻokele mālama mālama paʻakikī me nā backend ʻokoʻa, e.g. ʻO Ceph, EdgeFS a me nā mea ʻē aʻe, e maʻalahi loa ka hana. Ua loaʻa iaʻu nā pilikia me EfgeFS i koʻu hoʻāʻo ʻana i kekahi mau mahina i hala aku nei, no laila ua hoʻāʻo nui wau me Ceph. ʻAʻole hāʻawi wale ʻo Ceph i kahi mālama poloka, akā pili pū kekahi me ka S3/Swift a me ka ʻōnaehana faila. ʻO kaʻu mea makemake e pili ana iā Ceph, ʻo ia ka hiki ke hoʻolaha i ka ʻikepili leo ma waena o nā disks he nui i hiki i ka leo ke hoʻohana i ka nui o ka disk ma mua o ka hiki ke hoʻokomo i ka disk hoʻokahi. He oluolu. ʻO kekahi hiʻohiʻona maikaʻi ʻo ia ke hoʻohui ʻoe i nā disks i kahi pūʻulu, e hāʻawi hou i ka ʻikepili ma nā disks āpau.

Loaʻa iā Ceph nā kiʻi paʻi, akā i koʻu ʻike, ʻaʻole hiki ke hoʻohana pololei ʻia ma Rook/Kubernetes. ʻOiaʻiʻo, ʻaʻole au i komo hohonu i kēia. Akā ʻaʻohe mea hoʻihoʻi ma waho o ka pūnaewele, no laila pono ʻoe e hoʻohana i kekahi mea me Velero/Restic, akā aia wale nō nā waihona pae waihona, ʻaʻole nā ​​kiʻi kiko-i-manawa. ʻO kaʻu mea i makemake nui ai iā Rook, ʻo ia ka maʻalahi o ka hana pū me Ceph - hūnā ʻo ia i nā mea paʻakikī a hāʻawi i nā mea hana e kamaʻilio pololei me Ceph no ka hoʻoponopono pilikia. ʻO ka mea pōʻino, i ka wā o ka hoʻāʻo koʻikoʻi o nā puke Ceph, hoʻomau wau i nā pilikia me keia pilikia, ka mea e lilo ai ʻo Ceph i mea paʻa. ʻAʻole maopopo i kēia manawa inā he pōpoki kēia iā Ceph ponoʻī a i ʻole he pilikia ma ke ʻano o ka mālama ʻana o Rook iā Ceph. Ua noʻonoʻo wau i nā hoʻonohonoho hoʻomanaʻo, a ua ʻoi aku ka maikaʻi, akā ʻaʻole i pau ka pilikia. He hana maikaʻi ʻo Ceph, e like me kāu e ʻike ai ma nā pae kuhikuhi ma lalo nei. Loaʻa iā ia kahi dashboard maikaʻi.

ʻO Rancher Longhorn

Makemake au iā Longhorn. I koʻu manaʻo, he ʻōlelo hoʻohiki kēia. ʻOiaʻiʻo, ʻae nā mea hoʻomohala iā lākou iho (Rancher Labs) ʻaʻole kūpono ia no ke kaiapuni hana, a hōʻike kēia. He kumu wehe ia a he hana maikaʻi kona (ʻoiai ʻaʻole lākou i hoʻopaʻa ʻia i kēia manawa), akā lōʻihi ka lōʻihi o ka hoʻopili ʻana i ka pod, a ma nā hihia maikaʻi loa he 15-16 mau minuke, ʻoi aku ma hope o ka hoʻihoʻi ʻana i kahi waihona nui a i ʻole. ka hoʻomaikaʻi ʻana i ka hana. Loaʻa iā ia nā paʻi kiʻi a me nā hoʻihoʻi waho pūnaewele o kēia mau paʻi kiʻi, akā pili wale lākou i nā puke, no laila pono ʻoe i kahi mea e like me Velero e hoʻihoʻi i nā kumuwaiwai ʻē aʻe. He mea hilinaʻi loa ka hoʻihoʻi ʻana a me ka hoʻihoʻi ʻana, akā lohi loa. ʻOiaʻiʻo, lohi nui wale. Piʻi pinepine ka hoʻohana ʻana i ka CPU a me ka hoʻouka ʻana o ka ʻōnaehana i ka wā e hana ana me ka nui o ka ʻikepili ma Longhorn. Aia kahi dashboard kūpono e hoʻokele iā Longhorn. Ua ʻōlelo mua wau makemake wau iā Longhorn, akā pono ia i kahi hana.

StorageOS

ʻO StorageOS ka huahana uku mua ma ka papa inoa. Loaʻa iā ia kahi mana hoʻomohala me ka nui o ka mālama mālama ʻia ʻana o 500GB, akā manaʻo wau ʻaʻole he palena i ka helu o nā nodes. Ua haʻi mai ke keʻena kūʻai iaʻu e hoʻomaka ana ke kumukūʻai ma $125 i kēlā me kēia mahina no 1 TB, inā wau e hoʻomanaʻo pololei. Aia kahi dashboard maʻamau a me kahi CLI kūpono, akā ke hele nei kekahi mea ʻē aʻe me ka hana: i kekahi mau benchmarks he kūpono loa ia, akā i ka hoʻāʻo koʻikoʻi nui ʻaʻole wau makemake i ka wikiwiki. Ma keʻano laulā,ʻaʻole wau iʻike i ka mea e'ōlelo ai. No laila ʻaʻole maopopo loa iaʻu. ʻAʻohe mea mālama pūnaewele ma aneʻi a pono ʻoe e hoʻohana iā Velero me Restic i nā waihona waihona. He mea kupanaha, no ka mea, ua uku ʻia ka huahana. A ʻaʻole makemake nā mea hoʻomohala e kamaʻilio ma Slack.

Robin

Ua aʻo wau e pili ana iā Robin ma Reddit mai kā lākou alakaʻi loea. ʻAʻole au i lohe mua iā ia. Malia paha no kaʻu ʻimi ʻana i nā hoʻonā manuahi, akā uku ʻia ʻo Robin. Loaʻa iā lākou kahi mana manuahi maikaʻi loa me 10TB o ka waiho ʻana a me ʻekolu nodes. Ma keʻano holoʻokoʻa, maikaʻi loa ka huahana a he mau hiʻohiʻona maikaʻi. Aia kahi CLI maikaʻi loa, akā ʻo ka mea maikaʻi loa hiki iā ʻoe ke kiʻi a hoʻopaʻa i ka noi holoʻokoʻa (ma ka mea koho kumu i kapa ʻia ʻo Helm releases a i ʻole "flex apps"), me nā volumes a me nā kumuwaiwai ʻē aʻe, no laila hiki iā ʻoe ke hana me ka ʻole o Velero. A nani nā mea āpau inā ʻaʻole no kahi kikoʻī liʻiliʻi: inā hoʻihoʻi ʻoe (a i ʻole "hoʻokomo", e like me ka mea i kapa ʻia ma Robin) i kahi noi ma kahi hui hou - no ka laʻana, i ka wā o ka hoʻihoʻi ʻana mai kahi pōʻino - ka hoʻihoʻi. ʻoiaʻiʻo, hana, akā e hoʻomau i ka hoʻihoʻi i ka noi ua pāpā ʻia. ʻAʻole hiki wale kēia i kēia hoʻokuʻu, e like me ka mea i hōʻoia ʻia e nā mea hoʻomohala. ʻO kēia, e waiho mālie, ʻano ʻē, ʻoi aku ka noʻonoʻo ʻana i nā pono ʻē aʻe (no ka laʻana, nā hoʻihoʻi wikiwiki a me ka hoʻihoʻi ʻana). Hoʻohiki nā mea hoʻomohala e hoʻoponopono i nā mea āpau ma ka hoʻokuʻu ʻana aʻe. ʻOi aku ka maikaʻi o ka hana, akā ʻike wau i kahi mea ʻē aʻe: inā holo pololei wau i ka benchmark ma kahi leo i hoʻopili ʻia i ka host, ʻoi aku ka wikiwiki o ka heluhelu ʻana ma mua o ka holo ʻana i ka leo like mai loko o ka pod. Ua like nā hopena ʻē aʻe a pau, akā ma ke kumumanaʻo, ʻaʻohe ʻokoʻa. ʻOiai ke hana nei lākou, ua huhū au i ka pilikia me ka hoʻihoʻi a me ka hoʻihoʻi - manaʻo wau ua loaʻa iaʻu kahi hopena kūpono, a ua makemake au e uku no ia mea inā makemake au i kahi nui a i ʻole nā ​​​​server.

portworx

ʻAʻole nui kaʻu ʻōlelo ma ʻaneʻi. He huahana uku ʻia kēia, ʻoluʻolu like a pipiʻi. He mea kupanaha wale ka hana. ʻO kēia ka hōʻailona maikaʻi loa i kēia manawa. Ua haʻi mai ʻo Slack iaʻu e hoʻomaka ana ke kumukūʻai ma $205 i kēlā me kēia mahina no ka node, e like me ka mea i helu ʻia ma Google's GKE Marketplace. ʻAʻole maopopo iaʻu inā e kūʻai pololei ʻoe. ʻAʻole hiki iaʻu ke loaʻa i kēlā, no laila ua hauʻoli loa wau no ka mea ʻole o ka laikini hoʻomohala (a hiki i ka 1 TB a me 3 nodes) me nā Kubernetes ke ʻole ʻoe e ʻoluʻolu me ka hoʻolako static. Manaʻo wau e hoʻohaʻahaʻa iho ka laikini volume i ka mea hoʻomohala ma ka hopena o ka manawa hoʻokolokolo, akā ʻaʻole i hiki. Hiki ke hoʻohana pololei ʻia ka laikini hoʻomohala me Docker, a paʻakikī loa ka hoʻonohonoho ʻana ma Kubernetes. ʻOiaʻiʻo, makemake au i ka open source, akā inā loaʻa iaʻu ke kālā, koho wau iā Portworx. I kēia manawa, ʻaʻole hoʻohālikelike kāna hana i nā koho ʻē aʻe.

Linstor

Ua hoʻohui au i kēia ʻāpana ma hope o ka paʻi ʻana o ka pou, i ka manawa i ʻōlelo ai kekahi mea heluhelu e hoʻāʻo iā Linstor. Ua ho'āʻo wau a makemake wau! Akā, pono mākou e ʻeli hohonu. I kēia manawa hiki iaʻu ke ʻōlelo ʻaʻole maikaʻi ka hana (ua hoʻohui au i nā hopena benchmark ma lalo). ʻO ka mea nui, loaʻa iaʻu ka hana like me ka disk, me ka ʻole o ke poʻo. (Mai nīnau i ke kumu i ʻoi aku ka maikaʻi o nā helu ʻo Portworx ma mua o ka pae hoʻokele. ʻAʻole paʻakikī ka hoʻouka ʻana, akā ʻaʻole maʻalahi e like me nā koho ʻē aʻe. ʻO ka mea mua, pono wau e hoʻokomo iā Linstor (kernel module a me nā mea hana / lawelawe) a hoʻonohonoho i ka LVM no ka hoʻolako kikoʻī a me ke kākoʻo snapshot ma waho o Kubernetes, pololei ma ka host, a laila hana i nā kumuwaiwai e pono ai e hoʻohana i ka waiho ʻana mai Kubernetes. ʻAʻole wau makemake i ka hana ʻole ma CentOS a pono wau e hoʻohana iā Ubuntu. ʻAʻole weliweli, ʻoiaʻiʻo, akā he mea hoʻonāukiuki, no ka mea, ʻo ka palapala (ʻo ia ka mea maikaʻi loa, ma ke ala) e haʻi nei i kekahi mau pūʻulu ʻaʻole hiki ke loaʻa i nā waihona Epel i kuhikuhi ʻia. Loaʻa iā Linstor nā kiʻi paʻi, akā ʻaʻole nā ​​​​backbacks waho, no laila eia hou wau e hoʻohana iā Velero me Restic i nā waihona waihona. Makemake au i nā paʻi kiʻi ma mua o nā waihona pae waihona, akā hiki ke ʻae ʻia inā hoʻokō a hilinaʻi ka hopena. He kumu hāmama ʻo Linstor akā ua uku ʻo ia i ke kākoʻo. Inā maopopo iaʻu, hiki ke hoʻohana ʻia me ka ʻole o ka palena ʻole, ʻoiai inā ʻaʻohe ʻaelike kākoʻo, akā pono e wehewehe ʻia kēia. ʻAʻole maopopo iaʻu pehea i hoʻāʻo ʻia ai ʻo Linstor no Kubernetes, akā aia ka papa mālama pono ma waho o Kubernetes a, ʻoiai, ʻaʻole i ʻike ʻia ka hopena i nehinei, no laila ua hoʻāʻo ʻia ma nā kūlana maoli. Aia kahi hoʻonā ma ʻaneʻi e hoʻololi i koʻu manaʻo a hoʻi i Kubernetes? ʻaʻole maopopo iaʻu. Pono mākou e ʻeli hohonu a aʻo hou i ka hoʻopili. E nana kakou. Akā maikaʻi ka manaʻo mua. Makemake au e hoʻohana i kaʻu mau puʻupuʻu Kubernetes ponoʻī ma mua o Heroku no ka loaʻa ʻana o ke kūʻokoʻa a aʻo i nā mea hou. No ka mea ʻaʻole maʻalahi ʻo Linstor e hoʻouka e like me nā mea ʻē aʻe, e kākau wau i kahi pou e pili ana iā ia koke.

Nā hōʻailona

ʻO ka mea pōʻino, ʻaʻole wau i mālama nui i nā memo e pili ana i ka hoʻohālikelike ʻana no ka mea ʻaʻole wau i manaʻo e kākau wau e pili ana i ia. Loaʻa iaʻu nā hualoaʻa mai nā hiʻohiʻona fio kumu a no nā puʻupuʻu node hoʻokahi wale nō, no laila ʻaʻohe aʻu mau helu no ka hoʻonohonoho hou ʻana. Akā mai kēia mau hopena hiki iā ʻoe ke loaʻa i kahi manaʻo koʻikoʻi o ka mea e manaʻo ai mai kēlā me kēia koho, no ka mea ua hoʻohālikelike wau iā lākou ma nā kikowaena kapuaʻi like, 4 cores, 16 GB o RAM, me kahi disk 100 GB hou no nā puke i hoʻāʻo ʻia. Ua holo au i ʻekolu manawa no kēlā me kēia hoʻonā a helu i ka hopena maʻamau, me ka hoʻonohonoho hou ʻana i nā hoʻonohonoho kikowaena no kēlā me kēia huahana. He mea ʻepekema ʻole kēia, e hāʻawi wale iā ʻoe i kahi manaʻo nui. Ma nā hoʻokolohua ʻē aʻe, ua kope wau i 38 GB o nā kiʻi a me nā wikiō mai ka leo e hoʻāʻo i ka heluhelu a me ke kākau ʻana, akā, auē, ʻaʻole wau i mālama i nā helu. I ka pōkole: ʻoi aku ka wikiwiki o Portworkx.

No ka hōʻailona volume aʻu i hoʻohana ai i kēia hōʻike:

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: dbench
spec:
  storageClassName: ...
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi
---
apiVersion: batch/v1
kind: Job
metadata:
  name: dbench
spec:
  template:
    spec:
      containers:
      - name: dbench
        image: sotoaster/dbench:latest
        imagePullPolicy: IfNotPresent
        env:
          - name: DBENCH_MOUNTPOINT
            value: /data
          - name: FIO_SIZE
            value: 1G
        volumeMounts:
        - name: dbench-pv
          mountPath: /data
      restartPolicy: Never
      volumes:
      - name: dbench-pv
        persistentVolumeClaim:
          claimName: dbench
  backoffLimit: 4

Ua hana mua au i kahi leo me ka papa mālama kūpono a laila holo i ka hana me fio ma hope o nā hiʻohiʻona. Ua lawe au i 1 GB e hoʻohālikelike i ka hana a ʻaʻole e kali lōʻihi. Eia nā hopena:

Ka waiho ʻana ma Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Ua hōʻike au i ka waiwai maikaʻi loa no kēlā me kēia metric i ka ʻōmaʻomaʻo a me ka mea ʻino loa i ka ʻulaʻula.

hopena

E like me kāu e ʻike ai, ʻoi aku ka maikaʻi o Portworx ma mua o nā mea ʻē aʻe. Akā noʻu he pipiʻi. ʻAʻole maopopo iaʻu i ka nui o nā kumukūʻai Robin, akā loaʻa iā lākou kahi mana manuahi maikaʻi loa, no laila inā makemake ʻoe i kahi huahana i uku ʻia, hiki iā ʻoe ke hoʻāʻo (manaʻolana lākou e hoʻoponopono i ka pilikia me ka hoʻihoʻi a me ka hoʻihoʻi koke). ʻO nā mea manuahi ʻekolu, loaʻa iaʻu nā pilikia liʻiliʻi me OpenEBS, akā ʻaʻole maikaʻi kāna hana. Minamina ʻaʻole au i mālama i nā hopena hou aʻe, akā ke manaʻo nei au e kōkua nā helu a me kaʻu mau ʻōlelo iā ʻoe.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka