Nchekwa na Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Nchekwa na Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Mmelite!. Na nkwupụta, otu n'ime ndị na-agụ tụrụ aro ịnwale Linstor (ma eleghị anya, ọ na-arụ ọrụ na ya n'onwe ya) ya mere agbakwunyere m akụkụ banyere ngwọta a. M dekwara biputere ka esi etinye ya, n'ihi na usoro a dị nnọọ iche na ndị ọzọ.

N'ikwu eziokwu, m kwụsịrị ma kwụsị Kubernetes (opekata mpe ugbu a). M ga-eji Heroku. Gịnị kpatara? N'ihi nchekwa! Kedu onye ga-eche na m ga-etinyekwu ihe na nchekwa karịa Kubernetes n'onwe ya. m na-eji Hetzner Cloudn'ihi na ọ dị ọnụ ala na arụmọrụ dị mma na site na mmalite m na-ebugharị ụyọkọ na-eji Nchekwa. Agbalịghị m ọrụ Kubernetes jisiri ike site na Google/Amazon/Microsoft/DigitalOcean, wdg, n'ihi na achọrọ m ịmụta ihe niile n'onwe m. Adịkwa m ike.

Yabụ ee, ejiri m oge buru ibu na-agbalị ikpebi ebe nchekwa nke m ga-ahọrọ mgbe m na-enyocha nchịkọta Kubernetes enwere ike. Ọ masịrị m ihe ngwọta mepere emepe, ọ bụghị naanị n'ihi ọnụahịa ahụ, mana elelela m nhọrọ ole na ole akwụ ụgwọ n'ihi ọchịchọ ịmata ihe n'ihi na ha nwere ụdị n'efu nwere oke. Edepụtala m ọnụọgụ ụfọdụ site na ule ndị na-adịbeghị anya mgbe m tụlere nhọrọ dị iche iche, yana ha nwere ike ịmasị ndị na-amụta maka nchekwa Kubernetes. Agbanyeghị na mụ onwe m asịla Kubernetes nke ọma ugbu a. Achọkwara m ịkọ Onye ọkwọ ụgbọ ala CSI, nke nwere ike ịnye mpịakọta Hetzner Cloud ozugbo, mana anwalebeghị m ya. M lere anya n'ime nchekwa nke kọwapụtara sọftụwia igwe ojii n'ihi na achọrọ m mmegharị na ikike iji ngwa ngwa bulie mpịakọta na-adịgide adịgide na ọnụ ọ bụla, ọkachasị n'ọnọdụ ọdịda ọnụ na ọnọdụ ndị ọzọ yiri ya. Ụfọdụ ngwọta na-enye ihe ntanetị oge na nkwado ndabere na saịtị, nke dị mma.

M nwalere ngwọta nchekwa 6-7:

MepeeEBS

Dị ka m kwuru na mbụ na post gara agaN'ịbụ onye nwalere ọtụtụ nhọrọ site na listi ahụ, ebidoro m na OpenEBS. OpenEBS dị mfe ịwụnye na iji, mana n'eziokwu, mgbe anwalechara data n'ezie n'okpuru ibu, enwere m nkụda mmụọ na arụmọrụ ya. Nke a bụ isi mmalite mepere emepe, ndị mmepe ahụ nọkwa n'onwe ha Ọwa Slack na-enyere m aka mgbe m chọrọ enyemaka. N'ụzọ dị mwute, ọ nwere arụmọrụ adịghị mma ma e jiri ya tụnyere nhọrọ ndị ọzọ, ya mere a ga-emegharị ule ndị ahụ ọzọ. OpenEBS nwere igwe nchekwa 3 ugbu a, mana m na-eziga nsonaazụ benchmark maka cStor. Enweghị m ọnụọgụ maka Jiva na LocalPV ma.

Na nkenke, Jiva dị ntakịrị ngwa ngwa, na LocalPV na-adịkarị ngwa ngwa, ọ dịghị njọ karịa akara ngosi diski ozugbo. Nsogbu dị na LocalPV bụ na enwere ike ịnweta ụda ahụ naanị na ọnụ ebe a kwadoro ya, ọ dịghịkwa mmegharị ọ bụla. Enwere m nsogbu ụfọdụ iweghachi ndabere site na Ilgbọ mmiri na ụyọkọ ọhụrụ n'ihi na aha ọnụ dị iche iche. Ọ bụrụ na anyị na-ekwu maka ndabere, cStor nwere ngwa mgbakwunye maka Velero, nke ị nwere ike ime nkwado ndabere na mpaghara saịtị nke snapshots n'otu oge, nke dị mma karịa nkwado ndabere nke ọkwa faịlụ na Velero-Restic. Edere m ọtụtụ scripts, iji mee ka ọ dị mfe ijikwa ndabere na weghachite na ngwa mgbakwunye a. N'ozuzu, enwere m mmasị na OpenEBS, mana arụmọrụ ya ...

Ookgba

Rook bụkwa oghere mepere emepe ma dị iche na nhọrọ ndị ọzọ dị na ndepụta ahụ na ọ bụ onye na-ahụ maka nchekwa nchekwa na-arụ ọrụ njikwa nchekwa dị mgbagwoju anya na azụ azụ dị iche iche, dịka ọmụmaatụ. Sif, EdgeFS na ndị ọzọ, nke na-eme ka ọrụ ahụ dị mfe nke ukwuu. Enwere m nsogbu na EfgeFS mgbe m nwara ya ọnwa ole na ole gara aga, yabụ m nwalere tumadi na Ceph. Ceph abụghị naanị na-enye nchekwa ngọngọ, kamakwa ihe nchekwa ihe dakọtara na S3/Swift na sistemụ faịlụ kesara. Ihe na-amasị m banyere Ceph bụ ike ịgbasa data olu n'ofe ọtụtụ diski ka olu ahụ wee nwee ike iji ohere diski karịa ka ọ dabara na otu diski. Ọ dị mma. Ihe ọzọ dị mma bụ na mgbe ị gbakwunye diski na ụyọkọ, ọ na-ekesa data ozugbo n'ofe diski niile.

Ceph nwere snapshots, mana dịka m maara, enweghị ike iji ha ozugbo na Rook/Kubernetes. N'ezie, abanyeghị m n'ime nke a. Mana enweghị nkwado ndabere na mpaghara saịtị, yabụ ị ga-eji ihe na Velero/Restic mee ihe, mana enwere naanị nkwado ndabere nke ọkwa faịlụ, ọ bụghị ihe onyonyo n'oge. Ihe masịrị m maka Rook bụ ka ọ dị mfe ịrụ ọrụ na Ceph - ọ na-ezochi ihe fọrọ nke nta ka ọ bụrụ ihe niile gbagwojuru anya ma na-enye ngwaọrụ ịgwa Ceph okwu ozugbo maka nchọpụta nsogbu. N'ụzọ dị mwute, n'oge ule nrụgide nke mpịakọta Ceph, m nọgidere na-enwe nsogbu nsogbu a, nke na-eme ka Ceph bụrụ onye na-ejighị n'aka. Amabeghị ma nke a bụ ahụhụ dị na Ceph n'onwe ya ka ọ bụ nsogbu n'ụzọ Rook si ejikwa Ceph. M tinkered na ebe nchekwa ntọala, na ọ na-aka mma, ma nsogbu e zuru ezu. Ceph nwere arụmọrụ dị mma, dịka ị na-ahụ na akara ngosi dị n'okpuru. Ọ nwekwara ezigbo dashboard.

Onye na-azụ ahịa Longhorn

Longhorn na-amasị m nke ukwuu. N'uche nke m, nke a bụ ngwọta na-ekwe nkwa. N'ezie, ndị mmepe onwe ha (Rancher Labs) na-ekweta na ọ kabeghị adaba maka ebe ọrụ, nke a na-egosikwa. Ọ bụ ebe mepere emepe ma nwee arụmọrụ dị mma (n'agbanyeghị na ha emebebeghị ya), mana mpịakọta na-ewe ogologo oge iji jikọọ na pọd, na n'ọnọdụ kachasị njọ ọ na-ewe 15-16 nkeji, ọkachasị mgbe iweghachite nnukwu nkwado ma ọ bụ kwalite ibu ọrụ. O nwere ihe ntanetị na ndabere saịtị nke foto ndị a, mana ha na-etinye naanị na mpịakọta, yabụ ị ka ga-achọ ihe dị ka Velero iji kwado ihe ndị ọzọ. Ndabere na iweghachi bụ ihe a pụrụ ịdabere na ya, mana ọ naghị adị ngwa ngwa. N'ezie, dị nnọọ nwayọọ nwayọọ. Ojiji CPU na ibu sistemu na-agbakarị mgbe ọ na-eji obere data na-arụ ọrụ na Longhorn. Enwere dashboard dabara adaba iji jikwaa Longhorn. Ekwula m na Longhorn na-amasị m, mana ọ chọrọ ọrụ ụfọdụ.

StorageOS

StorageOS bụ ngwaahịa izizi akwụ ụgwọ na ndetu. O nwere ụdị onye nrụpụta nwere oke nchekwa 500GB ejirila oke, mana echeghị m na enwere oke na ọnụọgụ ọnụ. Ngalaba na-ere ahịa gwara m na ọnụ ahịa na-amalite na $125 kwa ọnwa maka 1 TB, ma ọ bụrụ na m chetara nke ọma. Enwere dashboard dị mkpa na CLI dị mma, mana ihe dị ịtụnanya na-aga n'ihu na arụmọrụ ahụ: na ụfọdụ akara ngosi ọ dị mma, mana na nnwale nrụgide olu ahụghị m ọsọ ọ bụla. N'ozuzu, amaghị m ihe m ga-ekwu. Ya mere, aghọtachaghị m nke ukwuu. Enweghị nkwado ndabere na mpaghara saịtị ebe a, ị ga-ejikwa Velero na Restic na mpịakọta ndabere. Ọ dị ịtụnanya, n'ihi na a na-akwụ ụgwọ ngwaahịa ahụ. Na ndị mmepe ahụ chọsiri ike ịkparịta ụka na Slack.

Robin

Amụtara m maka Robin na Reddit site n'aka onye ntụzi ọrụ nka ha. Anụtụbeghị m banyere ya. Ma eleghị anya, n'ihi na m na-achọ ngwọta n'efu, mana Robin na-akwụ ụgwọ. Ha nwere ụdị n'efu mara mma nke nwere 10TB nchekwa yana ọnụ atọ. N'ozuzu, ngwaahịa ahụ dị ezigbo mma ma nwee atụmatụ mara mma. Enwere nnukwu CLI, mana ihe kacha mma bụ na ị nwere ike ịse foto na ndabere ngwa niile (na onye na-ahọrọ akụrụngwa nke a na-akpọ mwepụta Helm ma ọ bụ “flex apps”), gụnyere mpịakọta na akụrụngwa ndị ọzọ, yabụ ị nwere ike ime na-enweghị Velero. Na ihe niile ga-abụ ihe magburu onwe ya ma ọ bụrụ na ọ bụghị maka otu obere nkọwa: ọ bụrụ na ị weghachi (ma ọ bụ "mbubata", dị ka a na-akpọ Robin) ngwa na ụyọkọ ọhụrụ - dịka ọmụmaatụ, n'ọnọdụ mgbake site na ọdachi - mweghachi, N'ezie, na-arụ ọrụ, ma na-aga n'ihu na-akwado nkwado ngwa ọ machibidoro. Nke a agaghị ekwe omume na ntọhapụ a, dị ka ndị mmepe kwadoro. Nke a bụ, iji tinye ya n'ụzọ dị nro, iju, karịsịa na-atụle uru ndị ọzọ (dịka ọmụmaatụ, nkwado ndabere na-enweghị atụ na weghachite). Ndị mmepe na-ekwe nkwa idozi ihe niile site na ntọhapụ ọzọ. Arụmọrụ na-adịkarị mma, mana achọpụtara m na ọ bụ ihe jọgburu onwe ya: ọ bụrụ na m na-agba ọsọ benchmark ozugbo na olu agbakwunyere na onye ọbịa, ọsọ ọgụgụ na-agba ọsọ ọsọ karịa ịme otu olu site na pọd. Nsonaazụ ndị ọzọ niile bụ otu, mana na tiori ekwesịghị ịdị iche. Ọ bụ ezie na ha na-arụ ọrụ na ya, enwere m iwe banyere nsogbu ahụ na iweghachi na nkwado ndabere - echere m na achọpụtala m ngwọta kwesịrị ekwesị, na ọbụnadị m njikere ịkwụ ụgwọ maka ya mgbe m chọrọ ohere ma ọ bụ karịa sava.

Portworx

Enweghị m ọtụtụ ihe m ga-ekwu ebe a. Nke a bụ ngwaahịa akwụ ụgwọ, dịkwa mma ma dịkwa ọnụ. Arụmọrụ dị nnọọ ịtụnanya. Nke a bụ ihe ngosi kachasị mma ruo ugbu a. Slack gwara m na ọnụahịa na-amalite na $205 kwa ọnwa kwa ọnụ, dị ka edepụtara na Google's GKE Marketplace. Amaghị m ma ọ ga-adị ọnụ ala ma ị zụrụ ozugbo. Enweghị m ike imeli nke ahụ, yabụ enwere m nkụda mmụọ na ikike onye nrụpụta (ihe ruru 1 TB na ọnụ 3) abaghị uru na Kubernetes ọ gwụla ma ị nwere afọ ojuju na ntinye aka kwụ ọtọ. Anọ m na-atụ anya na ikikere olu ga-agbadata ozugbo na onye nrụpụta na njedebe nke oge nnwale, mana nke ahụ emeghị. Enwere ike iji akwụkwọ ikike onye nrụpụta naanị Docker, na nhazi na Kubernetes dị oke egwu na oke. N'ezie, m na-ahọrọ ebe mepere emepe, mana ọ bụrụ na enwere m ego ahụ, m ga-ahọrọ Portworx. Ka ọ dị ugbu a, arụmọrụ ya anaghị atụnyere nhọrọ ndị ọzọ.

Linstor

M gbakwunyere ngalaba a mgbe mbipụta nke post ahụ gasịrị, mgbe otu onye na-agụ tụrụ aro ịnwale Linstor. Agbalịrị m ya ma masịrị m ya! Ma anyị ka kwesịrị igwu miri emi. Ugbu a enwere m ike ịsị na arụmọrụ adịghị njọ (m gbakwunyere nsonaazụ benchmark n'okpuru). N'ikpeazụ, enwetara m otu arụmọrụ dị ka diski ahụ ozugbo, na-enweghị ihe ọ bụla. (Ajụla ihe kpatara Portworx ji nwee ọnụọgụ dị mma karịa akara mbanye ozugbo. Enweghị m echiche. Ime anwansi, echere m.) Ya mere, Linstor dị ka ọ dị irè ruo ugbu a. Ọ bụghị ihe siri ike ịwụnye, mana ọ dịghị mfe dị ka nhọrọ ndị ọzọ. Nke mbụ, m ga-etinye Linstor (modul kernel na ngwaọrụ / ọrụ) wee hazie LVM maka inye nkwado dị mkpa na nkwado foto na mpụga Kubernetes, ozugbo na onye ọbịa, wee mepụta akụrụngwa achọrọ iji nchekwa sitere na Kubernetes. Enweghị m mmasị na ọ naghị arụ ọrụ na CentOS na aghaghị m iji Ubuntu. Ọ bụghị egwu, n'ezie, ma ọ bụ ntakịrị iwe, n'ihi na akwụkwọ (nke dị oke mma, n'agbanyeghị) na-ekwu maka ọtụtụ ngwugwu na-enweghị ike ịchọta na ebe nchekwa Epel akọwapụtara. Linstor nwere snapshots, mana ọ bụghị nkwado ndabere na mpaghara saịtị, yabụ ebe a ọzọ m ga-eji Velero na Restic na mpịakọta ndabere. M ga-ahọrọ snapshots kama nkwado ndabere nke ọkwa faịlụ, mana enwere ike ịnabata nke a ma ọ bụrụ na azịza ya na-arụ ọrụ na ntụkwasị obi. Linstor bụ ebe mepere emepe mana ọ nwere nkwado akwụ ụgwọ. Ọ bụrụ na m ghọtara nke ọma, enwere ike iji ya na-enweghị ihe mgbochi, ọbụlagodi na ịnweghị nkwekọrịta nkwado, mana nke a kwesịrị ịkọwapụta. Amaghị m ka a nwalere Linstor bụ maka Kubernetes, mana nchekwa nchekwa n'onwe ya dị n'èzí Kubernetes na, o doro anya na ngwọta ahụ apụtaghị ụnyaahụ, ya mere ọ ga-abụrịrị na a nwalere ya n'ezie. Enwere ngwọta ebe a nke ga-eme ka m gbanwee obi m wee laghachi Kubernetes? Amaghị m. Anyị ka kwesịrị igwu miri emi ma mụọ mmụgharị. Ka ahụ. Ma echiche mbụ dị mma. Ọ ga-amasị m iji ụyọkọ Kubernetes nke m kama Heroku nweta nnwere onwe na ịmụta ihe ọhụrụ. Ebe ọ bụ na Linstor adịghị mfe ịwụnye dị ka ndị ọzọ, m ga-ede akwụkwọ gbasara ya n'oge na-adịghị anya.

Akara akara

N’ụzọ dị mwute, edeghị m ọtụtụ ndetu banyere ntụnyere ahụ n’ihi na echeghị m na m ga-ede banyere ya. Enwere m nsonaazụ naanị site na isi fio benchmarks yana naanị maka ụyọkọ ọnụ ọnụ, yabụ enweghị m ọnụọgụ maka nhazi emegharịgharị ma. Ma site na nsonaazụ ndị a ị nwere ike nweta echiche siri ike nke ihe ị ga-atụ anya na nhọrọ ọ bụla, n'ihi na m jiri ha tụnyere otu ihe nkesa igwe ojii, 4 cores, 16 GB nke RAM, yana diski 100 GB ọzọ maka mpịakọta anwale. M gbara akara akara ugboro atọ maka ngwọta ọ bụla wee gbakọọ nsonaazụ ya, gbakwunyere m ịtọgharịa ntọala sava maka ngwaahịa ọ bụla. Nke a bụ ihe na-abụghị sayensị, naanị iji nye gị echiche zuru oke. N'ule ndị ọzọ, m depụtaghachiri 38 GB nke foto na vidiyo site na olu iji nwalee ịgụ na ide, mana, Ewoo, echeghị m nọmba. Na nkenke: Portworkx dị ngwa ngwa.

Maka benchmark olu, ejiri m ihe ngosi a:

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

M buru ụzọ mepụta olu na klas nchekwa kwesịrị ekwesị wee jiri fio rụọ ọrụ ahụ n'azụ ihe nkiri. Ewere m 1 GB iji tụọ arụmọrụ ma echeghị ogologo oge. Nke a bụ nsonaazụ:

Nchekwa na Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Ewepụtala m uru kacha mma maka metric ọ bụla na akwụkwọ ndụ akwụkwọ ndụ yana nke kacha njọ na ọbara ọbara.

nkwubi

Dịka ị na-ahụ, n'ọtụtụ oge Portworx rụrụ ọrụ nke ọma karịa ndị ọzọ. Mana ọ dị m ọnụ. Amaghị m ego ole Robin na-akwụ, mana ha nwere ụdị free free, yabụ ọ bụrụ na ịchọrọ ngwaahịa a na-akwụ ụgwọ, ị nwere ike ịnwale ya (na-atụ anya na ha na-edozi nsogbu ahụ na iweghachi na nkwado ndabere n'oge na-adịghị anya). N'ime ndị efu atọ ahụ, enwere m nsogbu kacha nta na OpenEBS, mana arụmọrụ ya dị njọ. Ọ bụ ihe nwute na echekwaghị m nsonaazụ ọzọ, mana enwere m olileanya na ọnụọgụgụ na nkọwa m ga-enyere gị aka.

isi: www.habr.com

Tinye a comment