{"id":181781,"date":"2026-05-28T14:48:30","date_gmt":"2026-05-28T12:48:30","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/opublikovana-sistema-hraneniya-blockstor-yavlyayushhayasya-alternativoj-linstor"},"modified":"2026-05-28T14:48:30","modified_gmt":"2026-05-28T12:48:30","slug":"opublikovana-sistema-hraneniya-blockstor-yavlyayushhayasya-alternativoj-linstor","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/news\/opublikovana-sistema-hraneniya-blockstor-yavlyayushhayasya-alternativoj-linstor","title":{"rendered":"Blockstor-lagringssystemet har publicerats, vilket \u00e4r ett alternativ till LINSTOR","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Den f\u00f6rsta versionen av Blockstor \u00e4r nu tillg\u00e4nglig - ett \u00f6ppet system f\u00f6r hantering av distribuerad blocklagring f\u00f6r Kubernetes, som s\u00e4kerst\u00e4ller datareplication ovanp\u00e5 DRBD. Blockstor \u00e4r REST API-kompatibel med LINSTOR och kan fungera med den befintliga klientekosystemet utan \u00e4ndringar, inklusive kommandoradsverktyget linstor, CSI-drivrutinen, Piraeus-operat\u00f6ren, ha-controller och biblioteket golinstor. Projektet utg\u00f6r en helt frist\u00e5ende (clean-room) implementation i Go-spr\u00e5ket och anv\u00e4nder inte k\u00e4llkoden fr\u00e5n originalet. Koden distribueras under Apache 2.0-licensen och utvecklas inom Cozystack-plattformen (CNCF Sandbox-projektet).<\/p>\n<p>Projektets f\u00f6rfattare \u00e4r Andrey Kvapil (@kvaps), grundare av Cozystack och medlem i den ideella organisationen Piraeus, d\u00e4r operat\u00f6ren och CSI-drivrutinen LINSTOR f\u00f6r Kubernetes utvecklas. F\u00f6rfattaren \u00e4r k\u00e4nd inom Kubernetes-communityt som en f\u00f6respr\u00e5kare f\u00f6r LINSTOR och har flera g\u00e5nger h\u00e5llit tekniska f\u00f6redrag i \u00e4mnet. Utvecklingen inleddes ursprungligen som en liten \"fredags\"-initiativ, men f\u00f6rvandlades till ungef\u00e4r 20 dagars oavbruten arbete. F\u00f6r n\u00e4rvarande utvecklas projektet som ett forskningsprojekt, men p\u00e5 sikt \u00f6verv\u00e4gs det som en m\u00f6jlig ers\u00e4ttning f\u00f6r LINSTOR som standard lagringssystem i Cozystack.<\/p>\n<p>Som sk\u00e4l f\u00f6r att skapa det nya projektet n\u00e4mns sv\u00e5righeter med att underh\u00e5lla originalprojektet och \u00f6verf\u00f6ra \u00e4ndringar till huvudprojektet, samt arkitektoniska begr\u00e4nsningar hos LINSTOR. Originalprojektet anv\u00e4nder en \"request-baserad\" modell f\u00f6r realtidsf\u00f6rfr\u00e5gningar, vilket visar problem i stor skala, medan den deklarativa reconciliation-metoden i Kubernetes och ramverket controller-runtime, enligt f\u00f6rfattaren, \u00e4r betydligt b\u00e4ttre l\u00e4mpad f\u00f6r att bygga distribuerade system.<\/p>\n<p>Till skillnad fr\u00e5n LINSTOR bygger Blockstor-arkitekturen helt p\u00e5 Kubernetes controller-runtime-tillv\u00e4gag\u00e5ngss\u00e4ttet. Konfigurationen och det aktuella tillst\u00e5ndet f\u00f6r systemet representeras som Kubernetes CRD-objekt, och sj\u00e4lva systemet \u00e4r inte avsett att fungera utanf\u00f6r Kubernetes-klustret.<\/p>\n<p>Bland de viktigaste funktionerna i Blockstor finns:<\/p>\n<ul>\n<li class=\"l\"> Replikerade volymer \u00f6ver DRBD baserat p\u00e5 LVM, LVM-thin, ZFS, ZFS-thin och filbakgrunder.\n<li class=\"l\"> Automatisk placering av repliker med h\u00e4nsyn till zoner, noders egenskaper och regler f\u00f6r \"replicas-on-different\".\n<li class=\"l\"> St\u00f6d f\u00f6r TieBreaker, quorum och \u00e4ndring av volymer i storlek utan att stoppa driften.\n<li class=\"l\"> M\u00f6jlighet att arbeta utan DRBD i l\u00e4ge f\u00f6r lokal (single-replica diskful) eller diskfri lagring.\n<li class=\"l\"> Kryptering av volymer via LUKS.\n<li class=\"l\"> St\u00f6d f\u00f6r snapshots: skapande, \u00e5terst\u00e4llning, kloning och \u00e5terst\u00e4llning som en ny resurs.\n<li class=\"l\"> \u00d6verf\u00f6ring av snapshots inom klustret via zfs send\/recv och thin-send-recv.\n<li class=\"l\"> Skapande av storage pooler fr\u00e5n fysiska diskar.\n<li class=\"l\"> Sammanst\u00e4llda containerbilder f\u00f6r olika arkitekturer (linux\/amd64 och linux\/arm64), publicerade i GHCR.\n<\/ul>\n<p>Projektet k\u00e4nnetecknades av aktiv anv\u00e4ndning av AI-verktyg under utvecklingen. Praktiskt taget all kod f\u00f6rbereddes med hj\u00e4lp av Claude Code (modell Opus 4.7) fr\u00e5n Anthropic. Utvecklingen p\u00e5gick n\u00e4stan dygnet runt under cirka 20 dagar. Under vissa perioder arbetade upp till 60 AI-agenter samtidigt, och den totala utvecklingsdialogen bestod av cirka 1320 f\u00f6rfr\u00e5gningar fr\u00e5n f\u00f6rfattaren och ungef\u00e4r 36 000 svar fr\u00e5n modellen inom ramen f\u00f6r en sammanh\u00e4ngande session.<\/p>\n<p>Resultatet blev 1500 commits, d\u00e4r 83 000 kodrader anv\u00e4ndes f\u00f6r implementeringen och ytterligare 137 000 kodrader f\u00f6r tester. Enligt prelimin\u00e4ra uppskattningar f\u00f6rbrukades totalt cirka 18,9 miljarder tokens, och det motsvarande v\u00e4rdet f\u00f6r denna volym vid anv\u00e4ndning av API-priser skulle uppg\u00e5 till cirka 40 000 dollar.<\/p>\n<p>F\u00f6rfattaren r\u00e4knade initialt med en n\u00e4stan helt autonom utveckling utf\u00f6rd av AI-modellen, men den komplexa logiken i DRBD kr\u00e4vde konstant m\u00e4nskligt deltagande. De mest komplicerade scenarierna visade sig vara konvergensen av DRBD-tillst\u00e5nd, arbete med Generation Identifier (GI), att hoppa \u00f6ver den initiala synkroniseringen och att hantera split-brain-scenarier.<\/p>\n<p>Eftersom den ursprungliga LINSTOR distribueras under GPL-licensen kunde dess kod inte anv\u00e4ndas direkt. St\u00f6rre delen av implementeringen skapades baserat p\u00e5 analys av API-kontrakt, beteenden hos verktyg, Python-klienten f\u00f6r LINSTOR och \u00e4ven kompatibla projekt med licens, inklusive piraeus-operator och CSI-drivrutinen.<\/p>\n<p>I de mest komplicerade fallen anv\u00e4ndes en rollf\u00f6rdelningsschemad f\u00f6r AI-agenter: en agent analyserade LINSTOR:s k\u00e4llkod och formulerade en textspecifikation av beteendet, varefter en annan agent implementerade funktionaliteten enbart baserat p\u00e5 denna specifikation utan direkt kopiering av k\u00e4llkoden. P\u00e5 grund av avsaknaden av \u00f6ppna tester i det ursprungliga projektet tvingades testdatabasen att skapas sj\u00e4lvst\u00e4ndigt.<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=65546\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a Blockstor &#8212; \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u043c \u0431\u043b\u043e\u0447\u043d\u044b\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c \u0434\u043b\u044f Kubernetes, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0439 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0432\u0435\u0440\u0445 DRBD. Blockstor \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c \u043f\u043e REST API \u0441 LINSTOR \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u044d\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443 linstor, CSI-\u0434\u0440\u0430\u0439\u0432\u0435\u0440, \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 Piraeus, ha-controller \u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 golinstor. \u041f\u0440\u043e\u0435\u043a\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u0443\u044e (clean-room) \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Go, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-181781","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a Blockstor - \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u043c \u0431\u043b\u043e\u0447\u043d\u044b\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c \u0434\u043b\u044f Kubernetes, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0439 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0432\u0435\u0440\u0445 DRBD.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/news\/opublikovana-sistema-hraneniya-blockstor-yavlyayushhayasya-alternativoj-linstor\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f Blockstor, \u044f\u0432\u043b\u044f\u044e\u0449\u0430\u044f\u0441\u044f \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043e\u0439 LINSTOR | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a Blockstor - \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u043c \u0431\u043b\u043e\u0447\u043d\u044b\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c \u0434\u043b\u044f Kubernetes, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0439 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0432\u0435\u0440\u0445 DRBD.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/news\/opublikovana-sistema-hraneniya-blockstor-yavlyayushhayasya-alternativoj-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=\"2026-05-28T12:48:30+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-05-28T12:48:30+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\udd47Blockstor lagringssystemet har publicerats, vilket \u00e4r ett alternativ till LINSTOR | ProHoster","description":"Den f\u00f6rsta versionen av Blockstor \u00e4r tillg\u00e4nglig - ett \u00f6ppet system f\u00f6r hantering av distribuerad blocklagring f\u00f6r Kubernetes, som m\u00f6jligg\u00f6r datareplication ovanp\u00e5 DRBD.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/opublikovana-sistema-hraneniya-blockstor-yavlyayushhayasya-alternativoj-linstor","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f Blockstor, \u044f\u0432\u043b\u044f\u044e\u0449\u0430\u044f\u0441\u044f \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043e\u0439 LINSTOR | ProHoster","og:description":"\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a Blockstor - \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u043c \u0431\u043b\u043e\u0447\u043d\u044b\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c \u0434\u043b\u044f Kubernetes, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0439 \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0432\u0435\u0440\u0445 DRBD.","og:url":"https:\/\/prohoster.info\/sv\/blog\/news\/opublikovana-sistema-hraneniya-blockstor-yavlyayushhayasya-alternativoj-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":"2026-05-28T12:48:30+00:00","article:modified_time":"2026-05-28T12:48:30+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/181781","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=181781"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/181781\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=181781"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=181781"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=181781"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}