Kusungirako ku Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Kusungirako ku Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Kusintha!. Mu ndemanga, mmodzi mwa owerenga adanena kuti ayese Linstor (mwinamwake akudzipangira yekha) kotero ndawonjezera gawo la yankho ili. Ndinalembanso post mmene kukhazikitsa, chifukwa ndondomekoyi ndi yosiyana kwambiri ndi ena onse.

Kunena zoona, ndinasiya ndipo ndinasiya Kubernetes (osachepera pano). ndidzagwiritsa ntchito Heroku. Chifukwa chiyani? Chifukwa chosungira! Ndani angaganize kuti ndikadakonda kwambiri zosungirako kuposa Kubernetes komweko. Ndimagwiritsa ntchito Hetzner Cloudchifukwa ndizotsika mtengo ndipo magwiridwe ake ndiabwino ndipo kuyambira pachiyambi ndakhala ndikuyika magulu pogwiritsa ntchito Sungani. Sindinayese ntchito zoyendetsedwa za Kubernetes kuchokera ku Google/Amazon/Microsoft/DigitalOcean, etc., etc., chifukwa ndinkafuna kuphunzira zonse ndekha. Ndinenso wosamala.

Chifukwa chake inde, ndidakhala nthawi yayitali ndikuyesa kusankha malo osungira omwe ndingasankhe ndikuwunika kuchuluka kwa Kubernetes. Ndimakonda mayankho otseguka, osati chifukwa cha mtengo, koma ndayang'ana njira zingapo zolipiridwa chifukwa cha chidwi chifukwa ali ndi mitundu yaulere yokhala ndi malire. Ndalembapo manambala ena pamayeso aposachedwa ndikayerekeza zosankha zosiyanasiyana, ndipo zitha kukhala zosangalatsa kwa omwe akuphunzira za Kubernetes yosungirako. Ngakhale ine ndekha ndasanzikana ndi Kubernetes pakadali pano. Ndikufunanso kutchula CSI driver, yomwe imatha kupereka mwachindunji ma volume a Hetzner Cloud, koma sindinayesebe. Ndidayang'ana kusungirako komwe kumatanthauzidwa ndi mapulogalamu amtambo chifukwa ndimafunikira kubwereza komanso kutha kukweza ma voliyumu mosalekeza pamfundo iliyonse, makamaka pakalephera ma node ndi zina zofananira. Mayankho ena amapereka chithunzithunzi chanthawi-nthawi ndi zosunga zobwezeretsera zapamalo, zomwe ndizosavuta.

Ndinayesa njira zosungira 6-7:

OpenEBS

Monga ndanenera kale mu post yapitayiNditayesa zosankha zambiri pamndandanda, ndidakhazikika pa OpenEBS. OpenEBS ndiyosavuta kukhazikitsa ndikugwiritsa ntchito, koma kunena zoona, nditatha kuyesa ndi deta yeniyeni pansi pa katundu, ndinakhumudwa ndi ntchito yake. Ichi ndi gwero lotseguka, ndipo opanga ali paokha Njira yocheperako nthawi zonse zothandiza kwambiri ndikafuna thandizo. Tsoka ilo, ili ndi ntchito yoyipa kwambiri poyerekeza ndi zosankha zina, kotero mayesowo adayenera kuyambiranso. OpenEBS pakadali pano ili ndi injini zosungira 3, koma ndikuyika zotsatira za cStor. Ndilibe manambala a Jiva ndi LocalPV pano.

Mwachidule, Jiva imathamanga pang'ono, ndipo LocalPV nthawi zambiri imakhala yachangu, osati yoyipa kwambiri kuposa benchmark ya disk mwachindunji. Vuto ndi LocalPV ndikuti voliyumu imatha kupezeka pamfundo pomwe idakonzedwa, ndipo palibe kubwereza konse. Ndinali ndi zovuta kubwezeretsa zosunga zobwezeretsera kudzera Bwato pagulu latsopano chifukwa mayina a node anali osiyana. Ngati tilankhula za zosunga zobwezeretsera, cStor watero pulogalamu yowonjezera kwa Velero, zomwe mutha kupanga zosunga zobwezeretsera zapamalo osapezekapo pakapita nthawi, zomwe ndizosavuta kuposa zosunga zosunga mafayilo ndi Velero-Restic. Ndidalemba zolemba zingapo, kuti zikhale zosavuta kusamalira zosunga zobwezeretsera ndi kubwezeretsa ndi pulogalamu yowonjezera iyi. Ponseponse, ndimakonda OpenEBS, koma magwiridwe ake ...

rook

Rook nayenso ndi gwero lotseguka, ndipo chomwe chimasiyanitsa ndi zosankha zina pamndandanda ndikuti ndi orchestrator yosungirako yomwe imagwira ntchito zovuta zosungirako zosungirako zosungirako zosiyana, mwachitsanzo. ceph, EdgeFS ndi zina, zomwe zimachepetsa kwambiri ntchito. Ndinali ndi vuto ndi EfgeFS pamene ndinayesa miyezi ingapo yapitayo, kotero ndinayesa makamaka ndi Ceph. Ceph sikuti imangopereka zosungirako, komanso kusungirako zinthu zomwe zimagwirizana ndi S3/Swift ndi makina ogawa mafayilo. Chomwe ndimakonda za Ceph ndikutha kufalitsa ma voliyumu pama disks angapo kuti voliyumuyo igwiritse ntchito malo ambiri a disk kuposa momwe angakwanire pa disk imodzi. Ndi bwino. Chinanso chosangalatsa ndichakuti mukawonjezera ma disks pagulu, imagawanso deta pama disks onse.

Ceph ili ndi zithunzi, koma monga ndikudziwira, sizingagwiritsidwe ntchito mwachindunji ku Rook/Kubernetes. Zowona, sindinalowe mozama mu izi. Koma palibe zosunga zobwezeretsera patsamba, chifukwa chake muyenera kugwiritsa ntchito china chake ndi Velero / Restic, koma pali zosunga zobwezeretsera zamafayilo, osati zowonera-panthawi. Zomwe ndimakonda kwambiri za Rook ndi momwe zimakhalira zosavuta kugwira ntchito ndi Ceph - zimabisa pafupifupi zinthu zonse zovuta ndipo zimapereka zida zolankhulirana ndi Ceph mwachindunji kuti athetse mavuto. Tsoka ilo, pakuyesa kupsinjika kwa ma voliyumu a Ceph, ndidakhala ndimavuto vuto ili, zomwe zimapangitsa Ceph kukhala wosakhazikika. Sizikudziwikabe ngati iyi ndi cholakwika mu Ceph yokha kapena vuto momwe Rook amayendetsera Ceph. Ndidayang'ana zokonda zokumbukira, ndipo zidakhala bwino, koma vuto silinatheretu. Ceph ili ndi magwiridwe antchito abwino, monga mukuwonera pamabenchmark omwe ali pansipa. Ilinso ndi dashboard yabwino.

Rancher Longhorn

Ndimakonda kwambiri Longhorn. Malingaliro anga, iyi ndi njira yodalirika. Zoonadi, opanga okha (Rancher Labs) amavomereza kuti sali oyenera malo ogwira ntchito, ndipo izi zikuwonetsa. Ndi gwero lotseguka ndipo limagwira ntchito bwino (ngakhale sanazikonzerebe), koma ma voliyumu amatenga nthawi yayitali kuti alumikizane ndi pod, ndipo zikavuta kwambiri zimatenga mphindi 15-16, makamaka mutabwezeretsa zosunga zobwezeretsera zazikulu kapena kuwonjezera ntchito. Ili ndi zithunzithunzi ndi zosunga zobwezeretsera zapazithunzi izi, koma zimangogwira ntchito pama voliyumu, chifukwa chake mudzafunikabe china ngati Velero kuti musunge zinthu zina. Zosunga zobwezeretsera ndi zobwezeretsa ndizodalirika, koma zimachedwa pang'onopang'ono. Mozama, mochedwa modabwitsa. Kugwiritsa ntchito kwa CPU ndi kuchuluka kwa makina nthawi zambiri kumakwera mukamagwira ntchito ndi data yapakatikati ku Longhorn. Pali dashboard yoyenera kuyang'anira Longhorn. Ndanena kale kuti ndimakonda Longhorn, koma ikufunika ntchito.

StorageOS

StorageOS ndiye chinthu choyamba cholipira pamndandanda. Ili ndi mtundu wa mapulogalamu omwe ali ndi kukula kochepa kosungirako kwa 500GB, koma sindikuganiza kuti pali malire pa chiwerengero cha node. Dipatimenti yogulitsa malonda inandiuza kuti mtengo umayamba pa $ 125 pamwezi kwa 1 TB, ngati ndikukumbukira bwino. Pali dashboard yofunikira komanso CLI yabwino, koma china chachilendo chikuchitika ndi magwiridwe antchito: m'ma benchmarks ena ndizabwino, koma pakuyesa kupsinjika kwa voliyumu sindimakonda kuthamanga konse. Mwambiri, sindikudziwa choti ndinene. Choncho sindinkamvetsa zambiri. Palibe zosunga zobwezeretsera patsamba pano ndipo mudzayeneranso kugwiritsa ntchito Velero yokhala ndi Restic kuti musunge ma voliyumu. Ndizodabwitsa, chifukwa mankhwalawa amalipidwa. Ndipo opanga sanali ofunitsitsa kuyankhulana pa Slack.

Robin

Ndinaphunzira za Robin pa Reddit kuchokera kwa director awo aukadaulo. Ndinali ndisanamvepo za iye. Mwina chifukwa ndinali kufunafuna mayankho aulere, koma Robin amalipidwa. Ali ndi mtundu wokongola waulere wokhala ndi 10TB yosungirako ndi ma node atatu. Ponseponse, mankhwalawa ndi abwino kwambiri ndipo ali ndi mawonekedwe abwino. Pali CLI yabwino, koma chozizira kwambiri ndichakuti mutha kujambula ndikusunga zosunga zobwezeretsera zonse (muzosankha zomwe zimatchedwa Helm kutulutsa kapena "mapulogalamu osinthika"), kuphatikiza ma voliyumu ndi zinthu zina, kotero mutha kuchita popanda Velero. Ndipo chirichonse chikanakhala chodabwitsa ngati sichoncho pang'ono: ngati mutabwezeretsa (kapena "kuitanitsa", monga momwe amatchulidwira ku Robin) ntchito pamagulu atsopano - mwachitsanzo, pakagwa tsoka - kubwezeretsa, inde, imagwira ntchito, koma pitilizani kusungitsa ntchito zomwe ndizoletsedwa. Izi sizingatheke pakumasulidwa uku, monga opanga atsimikizira. Izi, kunena mofatsa, zachilendo, makamaka poganizira zabwino zina (mwachitsanzo, zosunga zobwezeretsera mwachangu kwambiri ndikubwezeretsa). Madivelopa amalonjeza kuti akonza chilichonse potulutsa lotsatira. Kuchita nthawi zambiri kumakhala kwabwino, koma ndidawona chodabwitsa: ndikayendetsa benchmark molunjika pa voliyumu yolumikizidwa ndi wolandila, liwiro lowerenga limakhala lothamanga kwambiri kuposa kuthamanga voliyumu yomweyo kuchokera mkati mwa pod. Zotsatira zina zonse ndizofanana, koma m'malingaliro sikuyenera kukhala kusiyana. Ngakhale akugwira ntchito, ndinali wokhumudwa ndi vuto la kubwezeretsa ndi kusunga - ndimaganiza kuti ndapeza yankho loyenera, ndipo ndinali wokonzeka kulipira pamene ndikusowa malo ochulukirapo kapena ma seva ambiri.

portworx

Ndilibe zambiri zoti ndinene pano. Ichi ndi chinthu cholipidwa, chozizira komanso chokwera mtengo. Masewero ake ndi odabwitsa. Ichi ndiye chizindikiro chabwino kwambiri mpaka pano. Slack anandiuza kuti mitengo imayamba pa $205 pamwezi pa node, monga zalembedwa pa Msika wa Google wa GKE. Sindikudziwa ngati zikhala zotsika mtengo mukagula mwachindunji. Sindingakwanitse, kotero ndidakhumudwa kwambiri kuti chilolezo cha wopanga (mpaka 1 TB ndi 3 node) chilibe ntchito ndi Kubernetes pokhapokha mutakhala okhutira ndi kuperekedwa kokhazikika. Ndinkayembekeza kuti chiphaso cha voliyumu chidzatsikiratu kukhala wopanga kumapeto kwa nthawi yoyeserera, koma sizinachitike. Layisensi yopangira mapulogalamu itha kugwiritsidwa ntchito mwachindunji ndi Docker, ndipo kasinthidwe ku Kubernetes ndizovuta kwambiri komanso zochepa. Inde, ndimakonda gwero lotseguka, koma ndikanakhala ndi ndalama, ndikanasankha Portworx. Pakadali pano, magwiridwe ake sangafanane ndi zosankha zina.

Linstor

Ndinawonjezera gawoli pambuyo pofalitsa positi, pamene wowerenga wina adanena kuti ayese Linstor. Ndidayesa ndipo ndidakonda! Koma tiyenera kukumba mozama. Tsopano nditha kunena kuti ntchitoyo siili yoyipa (ndinawonjezera zotsatira za benchmark pansipa). M'malo mwake, ndidapeza magwiridwe antchito ofanana ndi diski mwachindunji, popanda kuwongolera. (Musati mufunse chifukwa chake Portworx ili ndi manambala abwinoko kusiyana ndi benchmark yoyendetsa molunjika. Sindikudziwa. Magic, ndikuganiza.) Kotero Linstor akuwoneka wothandiza kwambiri mpaka pano. Sikovuta kukhazikitsa, koma sikophweka monga njira zina. Choyamba ndinayenera kukhazikitsa Linstor (kernel module ndi zida / mautumiki) ndikukonzekera LVM kuti mupereke chithandizo chochepa komanso chothandizira chithunzithunzi kunja kwa Kubernetes, molunjika pa wolandirayo, ndiyeno kupanga zofunikira kuti mugwiritse ntchito kusungirako kuchokera Kubernetes. Sindinakonde kuti sizinagwire ntchito pa CentOS ndipo ndimayenera kugwiritsa ntchito Ubuntu. Osati zoipa, ndithudi, koma zokwiyitsa pang'ono, chifukwa zolembedwa (zomwe ziri zabwino kwambiri, mwa njira) zimatchula mapepala angapo omwe sangapezeke m'malo osungiramo Epel. Linstor ali ndi zithunzithunzi, koma osati zosunga zobwezeretsera patsamba, ndiye apanso ndidayenera kugwiritsa ntchito Velero yokhala ndi Restic kuti ndisunge ma voliyumu. Ndikufuna zithunzithunzi m'malo mosunga mafayilo amafayilo, koma izi zitha kuloledwa ngati yankho likuyenda bwino komanso lodalirika. Linstor ndi gwero lotseguka koma adalipira. Ngati ndikumvetsetsa bwino, zingagwiritsidwe ntchito popanda zoletsa, ngakhale mulibe mgwirizano wothandizira, koma izi ziyenera kufotokozedwa. Sindikudziwa kuti Linstor adayesedwa bwanji kwa Kubernetes, koma malo osungirako okhawo ali kunja kwa Kubernetes ndipo, mwachiwonekere, yankho silinawonekere dzulo, kotero kuti mwina layesedwa kale muzochitika zenizeni. Kodi pali yankho pano lomwe lingandipangitse kusintha malingaliro anga ndikubwerera ku Kubernetes? Sindikudziwa. Tikufunikabe kukumba mozama ndikuphunzira kubwerezabwereza. Tiyeni tiwone. Koma mawonekedwe oyamba ndi abwino. Ndingakonde kugwiritsa ntchito magulu anga a Kubernetes m'malo mwa Heroku kuti ndikhale ndi ufulu wambiri ndikuphunzira zinthu zatsopano. Popeza Linstor siyosavuta kukhazikitsa monga ena, ndilemba positi posachedwa.

Zizindikiro

Tsoka ilo, sindinasunge zolemba zambiri za kufananitsa chifukwa sindimaganiza kuti ndilembe za izo. Ndili ndi zotsatira zochokera ku ma benchmarks oyambira a fio komanso magulu amodzi okha, kotero ndilibe manambala osinthiranso. Koma kuchokera pazotsatirazi mutha kupeza lingaliro lovuta la zomwe mungayembekezere panjira iliyonse, chifukwa ndidawafanizira pamaseva amtambo omwewo, ma cores 4, 16 GB ya RAM, ndi disk yowonjezera ya 100 GB yama voliyumu oyesedwa. Ndinayendetsa ma benchmarks katatu pa yankho lililonse ndikuwerengera zotsatira zapakati, kuphatikiza ndikukhazikitsanso zoikamo za seva pachinthu chilichonse. Zonsezi ndizosagwirizana ndi sayansi, kuti ndikupatseni lingaliro wamba. M'mayesero ena, ndidakopera zithunzi ndi makanema 38 GB kuchokera pa voliyumu kuti ndiyese kuwerenga ndi kulemba, koma, tsoka, sindinasunge manambala. Mwachidule: Portworkx inali yachangu kwambiri.

Kwa benchmark ya voliyumu ndidagwiritsa ntchito chiwonetserochi:

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

Ndinayamba kupanga voliyumu ndi kalasi yoyenera yosungirako ndikuyendetsa ntchitoyo ndi fio kumbuyo kwazithunzi. Ndinatenga 1 GB kuti ndiyese ntchitoyo osati kudikira motalika kwambiri. Nazi zotsatira:

Kusungirako ku Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor

Ndaunikira mtengo wabwino kwambiri pa metric iliyonse yobiriwira komanso yofiira kwambiri.

Pomaliza

Monga mukuwonera, nthawi zambiri Portworx idachita bwino kuposa ena. Koma kwa ine ndi okwera mtengo. Sindikudziwa kuti Robin amawononga ndalama zingati, koma ali ndi mtundu waukulu waulere, kotero ngati mukufuna mankhwala olipidwa, mukhoza kuyesa (mwachiyembekezo amakonza vutoli ndi kubwezeretsa ndi zosunga zobwezeretsera posachedwa). Mwa atatu aulere, ndinali ndi vuto laling'ono ndi OpenEBS, koma magwiridwe ake ndi owopsa. Ndizomvetsa chisoni kuti sindinasunge zotsatira zambiri, koma ndikhulupilira manambala ndi ndemanga zanga zidzakuthandizani.

Source: www.habr.com

Kuwonjezera ndemanga