
Жаңыртуу!. Комментарийлерде окурмандардын бири аракет кылууну сунуштады (балким, ал өзү иштеп жаткандыр) ошондуктан мен бул чечим жөнүндө бөлүмдү коштум. Мен да жаздым , анткени процесс калгандарынан абдан айырмаланат.
Чынын айтсам, баш тарттым, баш тарттым (жок дегенде азыр). Мен колдоном . Неге? Сактоо үчүн! Кубернетестин өзүнө караганда, сактоо менен көбүрөөк алектенем деп ким ойлогон эле. Мен колдоном анткени ал арзан жана иштеши жакшы жана башынан бери мен кластерлерди колдонуп келе жатам. . Мен Google/Amazon/Microsoft/DigitalOcean ж.б.у.с.дан башкарылган Kubernetes кызматтарын колдонуп көргөн жокмун, анткени бардыгын өзүм үйрөнгүм келди. Мен да сарамжалдуумун.
Ооба, мен мүмкүн болгон Kubernetes стекине баа берип жатканда кайсы сактагычты тандоону чечүүгө көп убакыт короттум. Мен ачык булактуу чечимдерди жактырам, баасына байланыштуу гана эмес, бирок мен бир нече акы төлөнүүчү варианттарды карап чыктым, анткени алардын чектөөлөрү бар акысыз версиялары бар. Мен ар кандай варианттарды салыштырганда акыркы сыноолордон кээ бир сандарды жазып алдым жана алар Kubernetes сактагычын үйрөнгөндөр үчүн кызыктуу болушу мүмкүн. Азырынча мен жеке Kubernetes менен коштошкон болсом да. Мен дагы белгилегим келет , ал Hetzner Cloud көлөмүн түз бере алат, бирок мен аны азырынча сынай элекмин. Мен булуттун программалык камсыздоосу менен аныкталган сактагычты карадым, анткени мага репликация жана ар кандай түйүндө туруктуу көлөмдөрдү тез орнотуу мүмкүнчүлүгү керек болчу, айрыкча түйүн бузулганда жана башка ушул сыяктуу кырдаалдарда. Кээ бир чечимдер убакыттын ичинде сүрөттөрдү жана сайттан тышкаркы резервдик көчүрмөлөрдү сунуштайт, бул ыңгайлуу.
Мен 6-7 сактоо чечимдерин сынап көрдүм:
Жогоруда айткандай Тизмедеги варианттардын көбүн сынап көрүп, мен алгач OpenEBSге орноштум. OpenEBS орнотуу жана колдонуу абдан жеңил, бирок чынын айтсам, жүктөм астында реалдуу маалыматтар менен сынап көргөндөн кийин, анын иштешине нааразы болдум. Бул ачык булак жана иштеп чыгуучулар өз алдынча мага жардам керек болгондо ар дайым абдан пайдалуу. Тилекке каршы, ал башка варианттарга салыштырмалуу өтө начар көрсөткүчкө ээ, ошондуктан тесттерди кайра иштетүүгө туура келди. Учурда OpenEBSте 3 сактоо кыймылдаткычы бар, бирок мен cStor үчүн эталондук натыйжаларды жарыялап жатам. Менде Jiva жана LocalPV үчүн номерлер жок.
Кыскача айтканда, Jiva бир аз ылдамыраак, ал эми LocalPV жалпысынан тезирээк, түздөн-түз дисктин эталонунан да жаман эмес. LocalPV менен көйгөй - бул көлөмгө ал даярдалган түйүндө гана кирүүгө болот жана эч кандай репликация жок. Мен аркылуу камдык көчүрмөнү калыбына келтирүүдө бир аз көйгөйлөр болду жаңы кластерде, анткени түйүндөрдүн аталыштары ар башка болгон. Эгерде биз камдык көчүрмөлөр жөнүндө айтсак, cStor бар , анын жардамы менен сиз каалаган убакта көз ирмемдик сүрөттөрдүн сайттан тышкары резервдик көчүрмөсүн жасай аласыз, бул Velero-Restic менен файл деңгээлиндеги резервдик көчүрмөлөргө караганда ыңгайлуу. Мен жаздым , бул плагин менен камдык көчүрмөлөрдү жана калыбына келтирүүнү башкарууну жеңилдетүү үчүн. Жалпысынан алганда, мага OpenEBS абдан жагат, бирок анын аткаруусу...
Rook да ачык булак болуп саналат жана тизмедеги калган варианттардан айырмаланып турат, ал сактагыч оркестри, ал ар кандай бэйнектер менен сактоону башкаруунун татаал тапшырмаларын аткарат, мис. , жана башкалар, бул ишти бир кыйла жецилдетет. Мен EfgeFS менен бир нече ай мурун аракет кылганда көйгөйлөргө туш болдум, ошондуктан мен негизинен Ceph менен сынап көрдүм. Ceph блоктук сактагычты гана сунуш кылбастан, S3/Swift жана бөлүштүрүлгөн файл тутуму менен шайкеш объект сактагычты да сунуштайт. Ceph мага жаккан нерсе - бул көлөмдөгү маалыматтарды бир нече дисктерге жайылтуу, андыктан көлөм бир дискке батпай, көбүрөөк диск мейкиндигин колдоно алат. Бул ыңгайлуу. Дагы бир сонун өзгөчөлүк, сиз дисктерди кластерге кошкондо, ал автоматтык түрдө бардык дисктер боюнча маалыматтарды бөлүштүрөт.
Cephтин сүрөттөрү бар, бирок менин билишимче, аларды түздөн-түз Rook/Kubernetesте колдонууга болбойт. Ырас, мен буга терең кирген жокмун. Бирок сайттан тышкаркы резервдик көчүрмөлөр жок, андыктан Velero/Restic менен бир нерсе колдонушуңуз керек болот, бирок файл деңгээлиндеги камдык көчүрмөлөр гана бар, убакыттын ичинде эмес. Руктун мага абдан жакканы Ceph менен иштөө канчалык оңой болду – ал дээрлик бардык татаал нерселерди жашырат жана көйгөйлөрдү чечүү үчүн Ceph менен түз сүйлөшүү үчүн куралдарды сунуштайт. Тилекке каршы, Ceph томдорунун стресс-тест учурунда менде көйгөйлөр пайда болду , бул Кефтин туруксуз болушуна алып келет. Бул Кефтин өзүндөгү мүчүлүштүкбү же Руктун Кефти башкаруудагы көйгөйбү азырынча белгисиз. Мен эстутум орнотууларын карап көрдүм, ал жакшырды, бирок маселе толугу менен чечилген жок. Төмөнкү көрсөткүчтөрдөн көрүнүп тургандай, Ceph татыктуу көрсөткүчкө ээ. Ал ошондой эле жакшы панели бар.
Мага Лонгхорн абдан жагат. Менимче, бул келечектүү чечим. Ырас, иштеп чыгуучулар өздөрү (Rancher Labs) ал азырынча жумушчу чөйрөгө ылайыктуу эмес экенин моюнга алышат жана бул көрсөтүп турат. Бул ачык булак жана татыктуу өндүрүмдүүлүккө ээ (алар аны азырынча оптималдаштыра элек), бирок томдор подкетке туташуу үчүн абдан көп убакытты талап кылат, ал эми эң начар учурларда, өзгөчө чоң резервдик көчүрмөнү калыбына келтиргенден кийин же 15-16 мүнөт талап кылынат. иш жүгүн жогорулатуу. Анын көз ирмемдик сүрөттөрү жана бул сүрөттөрдүн сайттан тышкаркы резервдик көчүрмөлөрү бар, бирок алар томдорго гана тиешелүү, андыктан башка ресурстардын камдык көчүрмөсүн сактоо үчүн сизге дагы эле Velero сыяктуу нерсе керек болот. Камдык көчүрмөлөр жана калыбына келтирүү абдан ишенимдүү, бирок жөнсүз жай. Олуттуу, жөн гана укмуш жай. Лонгхорндо орточо көлөмдөгү маалымат менен иштегенде CPU колдонулушу жана тутумдун жүгү көп болот. Longhorn башкаруу үчүн ыңгайлуу башкаруу панели бар. Мен Лонгхорнду жакшы көрөм деп айткан элем, бирок ага бир аз иштөө керек.
StorageOS тизмедеги биринчи төлөнүүчү продукт. Анын 500 ГБ башкарылуучу сактагыч көлөмү чектелген иштеп чыгуучу версиясы бар, бирок түйүндөрдүн санына чектөө жок деп ойлойм. Сатуу бөлүмү, эгер туура эсимде болсо, баасы 125 ТБ үчүн айына 1 доллардан башталат деп айтты. Негизги башкаруу панели жана ыңгайлуу CLI бар, бирок аткарууда кызыктай бир нерсе болуп жатат: кээ бир эталондордо бул абдан татыктуу, бирок көлөмдөгү стресс-тестте ылдамдык такыр жаккан жок. Жалпысынан, мен эмне дээримди билбейм. Ошентип, мен көп нерсени түшүнгөн жокмун. Бул жерде сайттан тышкаркы резервдик көчүрмөлөр жок жана сиз көлөмдөрдүн камдык көчүрмөсүн сактоо үчүн Velero менен Restic колдонушуңуз керек болот. Бул кызык, анткени продукт төлөнөт. Ал эми иштеп чыгуучулар Slack менен баарлашууну каалашкан жок.
Мен Redditте Робин жөнүндө алардын техникалык директорунан билдим. Мен ал жөнүндө мурда уккан эмесмин. Балким, мен бекер чечимдерди издеп жүргөндүктөн, бирок Робин төлөнөт. Алардын 10ТБ сактагычы жана үч түйүнү бар абдан кең пейил акысыз нускасы бар. Жалпысынан алганда, продукт абдан татыктуу жана жакшы өзгөчөлүктөрү бар. Мыкты CLI бар, бирок эң сонун нерсе, сиз бүтүндөй тиркемени (ресурс тандагычта Helm релиздери же “икемдүү колдонмолор” деп аталат), анын ичинде көлөмдөрдү жана башка ресурстарды сүрөткө тартып, камдык көчүрмөсүн сактай аласыз, ошондуктан Velero жок кыла аласыз. Бир майда-чүйдөсүнө чейин болбосо, баары сонун болмок: эгер сиз жаңы кластердеги тиркемени калыбына келтирсеңиз (же "импорт" деп аталат) - мисалы, кырсыктан калыбына келтирилгенде - калыбына келтирүү, Албетте, иштейт, бирок тиркеменин камдык көчүрмөсүн сактоого тыюу салынат. Иштеп чыгуучулар тастыктагандай, бул чыгарылышта бул жөн эле мүмкүн эмес. Бул, жумшак айтканда, кызыктай, өзгөчө башка артыкчылыктарды эске алуу менен (мисалы, укмуштуудай тез резервдик көчүрүү жана калыбына келтирүү). Иштеп чыгуучулар кийинки релизге чейин баарын оңдоого убада беришет. Аткаруучулук жалпысынан жакшы, бирок мен бир кызыкчылыкты байкадым: эгер мен эталонду түз хостко тиркелген көлөмдө иштетсем, окуу ылдамдыгы бир эле көлөмдү поддондун ичинен иштетүүгө караганда алда канча тезирээк болот. Бардык башка натыйжалар бирдей, бирок теорияда эч кандай айырма болбошу керек. Алар мунун үстүндө иштеп жатышканына карабастан, мен калыбына келтирүү жана камдык көчүрмөнү сактоо көйгөйүнө капа болдум - мен акыры ылайыктуу чечим таптым деп ойлогом, атүгүл мага көбүрөөк орун же көбүрөөк серверлер керек болгондо, ал үчүн төлөөгө даяр болчумун.
Бул жерде айта турган көп нерсем жок. Бул акы төлөнүүчү продукт, бирдей салкын жана кымбат. аткаруу жөн гана укмуш. Бул азырынча эң жакшы көрсөткүч. Slack мага баа Google'дун GKE Marketplace тизмесинде көрсөтүлгөндөй, бир түйүн үчүн айына 205 доллардан башталат деп айтты. Түздөн-түз сатып алсаңар арзан болобу, билбейм. Мен муну баары бир төлөй албайм, ошондуктан иштеп чыгуучу лицензиясынын (1 ТБ жана 3 түйүнгө чейин) Kubernetes менен иш жүзүндө жараксыз экенине абдан капа болдум, эгерде сиз статикалык камсыздоого ыраазы болбосоңуз. Сыноо мезгилинин аягында көлөм лицензиясы автоматтык түрдө иштеп чыгуучуга төмөндөйт деп үмүттөнгөн элем, бирок андай болгон жок. Иштеп чыгуучу лицензиясын түздөн-түз Docker менен гана колдонсо болот жана Kubernetesтеги конфигурация абдан оор жана чектелген. Албетте, мен ачык булакты жактырам, бирок менде акча болгондо сөзсүз Portworxту тандамакмын. Азырынча анын иштеши башка варианттарга салыштырмалуу эмес.
Мен бул бөлүмдү пост жарыялангандан кийин, бир окурман Linstorду колдонуп көрүүнү сунуштаганда коштум. Мага колдонуп көрдүм жана жакты! Бирок дагы бир аз казып көрүшүм керек. Азырынча, иштин натыйжалуулугу жакшы деп айта алам (төмөндө эталондук жыйынтыктарды коштум). Чындыгында, мен түз диск эталону менен бирдей ишти алдым, эч кандай кошумча чыгымдарсыз. (Portworxтун сандары эмне үчүн түз диск эталонунан жакшыраак деп сурабаңыз. Мен эч кандай түшүнүккө ээ эмесмин. Магия, менимче.) Ошентип, Linstor азырынча абдан натыйжалуу көрүнөт. Аны орнотуу анчалык деле кыйын эмес, бирок башка варианттардай оңой эмес. Биринчиден, мен Linstorду (ядро модулу жана куралдар/кызматтар) орнотуп, Kubernetesтен тышкары, түз хостто жука камсыздоо жана сүрөткө тартуу колдоосу үчүн LVM орнотуп, андан кийин Kubernetesтен сактагычты колдонуу үчүн керектүү ресурстарды түзүшүм керек болчу. Анын иштебей калганына кубанган жокмун... CentOS жана колдонууга туура келди UbuntuАлбетте, бул чоң маселе эмес, бирок бир аз кыжырды келтирет, анткени документтерде (айтмакчы, ал эң сонун) көрсөтүлгөн Epel репозиторийлеринде жок бир нече пакеттер жөнүндө айтылат. Linstorдо снэпшоттор бар, бирок сайттан тышкаркы камдык көчүрмөлөр жок, ошондуктан көлөмдүк камдык көчүрмөлөр үчүн кайрадан Velero менен Resticти колдонууга туура келди. Файл деңгээлиндеги камдык көчүрмөлөргө караганда снэпшотторду артык көрөт элем, бирок чечим натыйжалуу жана ишенимдүү болсо, бул чыдамдуу. Linstor ачык булактуу, бирок акы төлөнүүчү колдоо бар. Эгер мен туура түшүнсөм, колдоо келишимиңиз жок болсо дагы, аны чектөөсүз колдоно аласыз, бирок мен муну текшерип көрүшүм керек. Linstor Kubernetes үчүн канчалык сыналганын билбейм, бирок сактоо катмарынын өзү Kubernetesтен тышкары жана ал бир топ убакыттан бери бар окшойт, ошондуктан ал реалдуу шарттарда сыналган болушу мүмкүн. Бул жерде оюмду өзгөртүп, Kubernetesке кайра өтүүгө түрткү бере турган чечим барбы? Билбейм. Мен бир аз көбүрөөк изилдеп, репликация жөнүндө билишим керек. Көрөбүз. Бирок биринчи таасир жакшы. Көбүрөөк эркиндик жана жаңы нерселерди үйрөнүү үчүн Heroku'нун ордуна өзүмдүн Kubernetes кластерлеримди колдонгонду артык көрөт элем. Linstor'ду башкалардай орнотуу оңой эмес болгондуктан, мен бул тууралуу жакында пост жазам.
Эталондор
Тилекке каршы, салыштыруу тууралуу көп жазууларды сактаган жокмун, анткени бул тууралуу жазам деп ойлогон эмесмин. Менде негизги fio эталондорунун натыйжалары гана бар жана бир түйүн кластерлери үчүн гана, ошондуктан менде репликацияланган конфигурациялар үчүн сандар жок. Бирок бул натыйжалардан сиз ар бир варианттан эмнени күтүү керектиги жөнүндө болжолдуу түшүнүк ала аласыз, анткени мен аларды ошол эле булут серверлеринде, 4 өзөктө, 16 ГБ оперативдүү эс тутумда, сыналган көлөмдөр үчүн кошумча 100 ГБ диск менен салыштырдым. Мен ар бир чечим үчүн үч жолу эталондорду иштеттим жана орточо натыйжаны эсептеп чыктым, плюс ар бир продукт үчүн сервер жөндөөлөрүн баштапкы абалга келтирдим. Мунун баары толугу менен илимий эмес, жөн гана жалпы түшүнүк берүү үчүн. Башка тесттерде окууну жана жазууну сынап көрүү үчүн томдон 38 ГБ сүрөттөр менен видеолорду көчүрдүм, бирок, тилекке каршы, сандарды сактаган жокмун. Кыскача айтканда: Portworkx алда канча тезирээк болгон.
Көлөмдүн көрсөткүчү үчүн мен бул манифестти колдондум:
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Мен адегенде тиешелүү сактоо классы менен көлөмдү түзүп, андан кийин көшөгөнүн артында fio менен жумушту иштеттим. Мен аткарууну баалоо үчүн 1 ГБ алдым жана көпкө күтпөйм. Бул жерде жыйынтыктар:
Мен ар бир метрика үчүн эң жакшы маанини жашыл түс менен, эң начарын кызыл менен белгилеп койдум.
жыйынтыктоо
Көрүнүп тургандай, көпчүлүк учурларда Portworx башкаларга караганда жакшыраак аткарды. Бирок мен үчүн бул кымбат. Робиндин баасы канча экенин билбейм, бирок алардын эң сонун акысыз версиясы бар, андыктан эгер сиз акы төлөнүүчү продуктуну кааласаңыз, аны сынап көрсөңүз болот (жакында алар калыбына келтирүү жана камдык көчүрмөлөр менен көйгөйдү чечет деп үмүттөнөбүз). Үч бекердин ичинен менде OpenEBS менен эң аз көйгөйлөр болгон, бирок анын иштеши абдан начар. Өкүнүчтүүсү, мен дагы натыйжаларды сактай алган жокмун, бирок сандар жана менин комментарийлерим сизге жардам берет деп ишенем.
Source: www.habr.com
