ะะพัััะฟะตะฝ ะฟะตัะฒัะน ะฒัะฟััะบ Blockstor โ ะพัะบัััะพะน ัะธััะตะผั ัะฟัะฐะฒะปะตะฝะธั ัะฐัะฟัะตะดะตะปัะฝะฝัะผ ะฑะปะพัะฝัะผ ั ัะฐะฝะธะปะธัะตะผ ะดะปั Kubernetes, ะพะฑะตัะฟะตัะธะฒะฐััะตะน ัะตะฟะปะธะบะฐัะธั ะดะฐะฝะฝัั ะฟะพะฒะตัั DRBD. Blockstor ัะพะฒะผะตััะธะผ ะฟะพ REST API ั LINSTOR ะธ ัะฟะพัะพะฑะตะฝ ะฑะตะท ะธะทะผะตะฝะตะฝะธะน ัะฐะฑะพัะฐัั ั ัััะตััะฒัััะตะน ัะบะพัะธััะตะผะพะน ะบะปะธะตะฝัะพะฒ, ะฒะบะปััะฐั ะบะพะผะฐะฝะดะฝัั ััะธะปะธัั linstor, CSI-ะดัะฐะนะฒะตั, ะพะฟะตัะฐัะพั Piraeus, ha-controller ะธ ะฑะธะฑะปะธะพัะตะบั golinstor. ะัะพะตะบั ะฟัะตะดััะฐะฒะปัะตั ัะพะฑะพะน ะฟะพะปะฝะพัััั ัะฐะผะพััะพััะตะปัะฝัั (clean-room) ัะตะฐะปะธะทะฐัะธั ะฝะฐ ัะทัะบะต Go, ะฝะต ะธัะฟะพะปัะทััััั ะธัั ะพะดะฝัะน ะบะพะด ะพัะธะณะธะฝะฐะปะฐ. ะะพะด ัะฐัะฟัะพัััะฐะฝัะตััั ะฟะพะด ะปะธัะตะฝะทะธะตะน Apache 2.0 ะธ ัะฐะทะฒะธะฒะฐะตััั ะฒ ัะฐะผะบะฐั ะฟะปะฐััะพัะผั Cozystack (ะฟัะพะตะบั CNCF Sandbox).
ะะฒัะพั ะฟัะพะตะบัะฐ โ ะะฝะดัะตะน ะะฒะฐะฟะธะป (@kvaps), ะพัะฝะพะฒะฐัะตะปั Cozystack ะธ ััะฐััะฝะธะบ ะฝะตะบะพะผะผะตััะตัะบะพะน ะพัะณะฐะฝะธะทะฐัะธะธ Piraeus, ะฒ ัะฐะผะบะฐั ะบะพัะพัะพะน ัะฐะทะฒะธะฒะฐัััั ะพะฟะตัะฐัะพั ะธ CSI-ะดัะฐะนะฒะตั LINSTOR ะดะปั Kubernetes. ะะฒัะพั ะธะทะฒะตััะตะฝ ะฒ Kubernetes-ัะพะพะฑัะตััะฒะต ะบะฐะบ ะฟะพะฟัะปััะธะทะฐัะพั LINSTOR ะธ ะฝะตะพะดะฝะพะบัะฐัะฝะพ ะฒััััะฟะฐะป ั ัะตั ะฝะธัะตัะบะธะผะธ ะดะพะบะปะฐะดะฐะผะธ ะฟะพ ัะตะผะต. ะะทะฝะฐัะฐะปัะฝะพ ัะฐะทัะฐะฑะพัะบะฐ ะทะฐะดัะผัะฒะฐะปะฐัั ะบะฐะบ ะฝะตะฑะพะปััะฐั ยซะฟััะฝะธัะฝะฐัยป ะธะฝะธัะธะฐัะธะฒะฐ, ะพะดะฝะฐะบะพ ะฒ ะธัะพะณะต ะฟัะตะฒัะฐัะธะปะฐัั ะฟัะธะผะตัะฝะพ ะฒ 20 ะดะฝะตะน ะฝะตะฟัะตััะฒะฝะพะน ัะฐะฑะพัั. ะะฐ ัะตะบััะธะน ะผะพะผะตะฝั ะฟัะพะตะบั ัะฐะทะฒะธะฒะฐะตััั ะบะฐะบ ะธััะปะตะดะพะฒะฐัะตะปััะบะธะน, ะพะดะฝะฐะบะพ ะฒ ะฟะตััะฟะตะบัะธะฒะต ัะฐััะผะฐััะธะฒะฐะตััั ะบะฐะบ ะฒะพะทะผะพะถะฝะฐั ะทะฐะผะตะฝะฐ LINSTOR ะฒ ัะพะปะธ ัะธััะตะผั ั ัะฐะฝะตะฝะธั ะฟะพ ัะผะพะปัะฐะฝะธั ะฒ Cozystack.
ะ ะบะฐัะตััะฒะต ะฟัะธัะธะฝ ัะพะทะดะฐะฝะธั ะฝะพะฒะพะณะพ ะฟัะพะตะบัะฐ ัะฟะพะผะธะฝะฐัััั ัะปะพะถะฝะพััะธ ั ัะพะฟัะพะฒะพะถะดะตะฝะธะตะผ ะพัะธะณะธะฝะฐะปัะฝะพะณะพ ะฟัะพะตะบัะฐ ะธ ะฟะตัะตะดะฐัะตะน ะธะทะผะตะฝะตะฝะธะน ะฒ ะพัะฝะพะฒะฝะพะน ะฟัะพะตะบั, ะฐ ัะฐะบะถะต ะฐัั ะธัะตะบัััะฝัะต ะพะณัะฐะฝะธัะตะฝะธั LINSTOR. ะัะธะณะธะฝะฐะปัะฝัะน ะฟัะพะตะบั ะธัะฟะพะปัะทัะตั ยซrequest-basedยป ะผะพะดะตะปั ะพะฑัะฐะฑะพัะบะธ ะทะฐะฟัะพัะพะฒ ะฒ ัะตะฐะปัะฝะพะผ ะฒัะตะผะตะฝะธ, ะบะพัะพััะน ะฟะพะบะฐะทัะฒะฐะตั ะฟัะพะฑะปะตะผั ะฝะฐ ะผะฐัััะฐะฑะฐั , ัะพะณะดะฐ ะบะฐะบ ะดะตะบะปะฐัะฐัะธะฒะฝัะน reconciliation-ะฟะพะดั ะพะด Kubernetes ะธ framework controller-runtime, ะฟะพ ะผะฝะตะฝะธั ะฐะฒัะพัะฐ, ะทะฝะฐัะธัะตะปัะฝะพ ะปัััะต ะฟะพะดั ะพะดะธั ะดะปั ะฟะพัััะพะตะฝะธั ัะฐัะฟัะตะดะตะปัะฝะฝัั ัะธััะตะผ.
ะ ะพัะปะธัะธะต ะพั LINSTOR, ะฐัั ะธัะตะบัััะฐ Blockstor ะฟะพะปะฝะพัััั ะพัะฝะพะฒะฐะฝะฐ ะฝะฐ ะฟะพะดั ะพะดะต Kubernetes controller-runtime. ะะพะฝัะธะณััะฐัะธั ะธ ัะตะบััะตะต ัะพััะพัะฝะธะต ัะธััะตะผั ะฟัะตะดััะฐะฒะปะตะฝั ะฒ ะฒะธะดะต Kubernetes CRD-ะพะฑัะตะบัะพะฒ, ะฐ ัะฐะผะฐ ัะธััะตะผะฐ ะฝะต ัะฐัััะธัะฐะฝะฐ ะฝะฐ ัะฐะฑะพัั ะฒะฝะต Kubernetes-ะบะปะฐััะตัะฐ.
ะกัะตะดะธ ะพัะฝะพะฒะฝัั ะฒะพะทะผะพะถะฝะพััะตะน Blockstor:
- ะ ะตะฟะปะธัะธััะตะผัะต ะฟะพะฒะตัั DRBD ัะพะผะฐ ะฝะฐ ะฑะฐะทะต LVM, LVM-thin, ZFS, ZFS-thin ะธ ัะฐะนะปะพะฒัั ะฑัะบะตะฝะดะพะฒ.
- ะะฒัะพะผะฐัะธัะตัะบะพะต ัะฐะทะผะตัะตะฝะธะต ัะตะฟะปะธะบ ั ััััะพะผ ะทะพะฝ, ัะฒะพะนััะฒ ัะทะปะพะฒ ะธ ะฟัะฐะฒะธะป ยซreplicas-on-differentยป.
- ะะพะดะดะตัะถะบะฐ TieBreaker, quorum ะธ ะธะทะผะตะฝะตะฝะธั ัะฐะทะผะตัะฐ ัะพะผะพะฒ ะฑะตะท ะพััะฐะฝะพะฒะบะธ ัะฐะฑะพัั.
- ะะพะทะผะพะถะฝะพััั ัะฐะฑะพัั ะฑะตะท DRBD ะฒ ัะตะถะธะผะต ะปะพะบะฐะปัะฝะพะณะพ (single-replica diskful) ะธะปะธ ะฑะตะทะดะธัะบะพะฒะพะณะพ ั ัะฐะฝะธะปะธัะฐ.
- ะจะธััะพะฒะฐะฝะธะต ัะพะผะพะฒ ัะตัะตะท LUKS.
- ะะพะดะดะตัะถะบะฐ ัะฝะฐะฟัะพัะพะฒ: ัะพะทะดะฐะฝะธะต, ะพัะบะฐั, ะบะปะพะฝะธัะพะฒะฐะฝะธะต ะธ ะฒะพัััะฐะฝะพะฒะปะตะฝะธะต ะฒ ะฒะธะดะต ะฝะพะฒะพะณะพ ัะตััััะฐ.
- ะะตัะตะฝะพั ัะฝะฐะฟัะพัะพะฒ ะฒะฝัััะธ ะบะปะฐััะตัะฐ ัะตัะตะท zfs send/recv ะธ thin-send-recv.
- ะกะพะทะดะฐะฝะธะต storage poolโะพะฒ ะธะท ัะธะทะธัะตัะบะธั ะดะธัะบะพะฒ.
- ะกะพะฑัะฐะฝะฝัะต ะดะปั ัะฐะทะฝัั ะฐัั ะธัะตะบััั ะบะพะฝัะตะนะฝะตัะฝัะต ะพะฑัะฐะทั (linux/amd64 ะธ linux/arm64), ะพะฟัะฑะปะธะบะพะฒะฐะฝะฝัะต ะฒ GHCR.
ะัะพะฑะตะฝะฝะพัััั ะฟัะพะตะบัะฐ ััะฐะปะพ ะฐะบัะธะฒะฝะพะต ะธัะฟะพะปัะทะพะฒะฐะฝะธะต AI-ะธะฝััััะผะตะฝัะพะฒ ะฟัะธ ัะฐะทัะฐะฑะพัะบะต. ะัะฐะบัะธัะตัะบะธ ะฒะตัั ะบะพะด ะฑัะป ะฟะพะดะณะพัะพะฒะปะตะฝ ั ะฟะพะผะพััั Claude Code (ะผะพะดะตะปั Opus 4.7) ะบะพะผะฟะฐะฝะธะธ Anthropic. ะ ะฐะทัะฐะฑะพัะบะฐ ะฒะตะปะฐัั ะฟะพััะธ ะบััะณะปะพัััะพัะฝะพ ะฒ ัะตัะตะฝะธะต ะฟัะธะผะตัะฝะพ 20 ะดะฝะตะน. ะ ะพัะดะตะปัะฝัะต ะผะพะผะตะฝัั ะพะดะฝะพะฒัะตะผะตะฝะฝะพ ัะฐะฑะพัะฐะปะพ ะดะพ 60 AI-ะฐะณะตะฝัะพะฒ, ะฐ ะพะฑัะธะน ะดะธะฐะปะพะณ ัะฐะทัะฐะฑะพัะบะธ ัะพััะฐะฒะธะป ะพะบะพะปะพ 1320 ะทะฐะฟัะพัะพะฒ ัะพ ััะพัะพะฝั ะฐะฒัะพัะฐ ะธ ะฟะพััะดะบะฐ 36 ััััั ะพัะฒะตัะพะฒ ะผะพะดะตะปะธ ะฒ ัะฐะผะบะฐั ะพะดะฝะพะน ะฝะตะฟัะตััะฒะฝะพะน ัะตััะธะธ.
ะะฐ ะฒัั ะพะดะต ะฟะพะปััะธะปะพัั 1500 ะบะพะผะผะธัะพะฒ, ะฒ ะบะพัะพััั 83 ัััััะธ ัััะพะบ ะบะพะดะฐ ะทะฐะฝัะปะฐ ัะตะฐะปะธะทะฐัะธั ะธ ะตัั 137 ััััั ัััะพะบ ะบะพะดะฐ ัะตััั. ะะพ ะฟัะตะดะฒะฐัะธัะตะปัะฝะพะน ะพัะตะฝะบะต, ััะผะผะฐัะฝะพ ะฑัะปะพ ะธะทัะฐัั ะพะดะพะฒะฐะฝะพ ะพะบะพะปะพ 18.9 ะผะปัะด ัะพะบะตะฝะพะฒ, ะฐ ัะบะฒะธะฒะฐะปะตะฝัะฝะฐั ััะพะธะผะพััั ัะฐะบะพะณะพ ะพะฑััะผะฐ ะฟัะธ ะธัะฟะพะปัะทะพะฒะฐะฝะธะธ API-ัะฐัะธัะพะฒ ัะพััะฐะฒะธะปะฐ ะฑั ะพะบะพะปะพ 40 ััััั ะดะพะปะปะฐัะพะฒ.
ะะฒัะพั ะฟะตัะฒะพะฝะฐัะฐะปัะฝะพ ัะฐัััะธััะฒะฐะป ะฝะฐ ะฟะพััะธ ะฟะพะปะฝะพัััั ะฐะฒัะพะฝะพะผะฝัั ัะฐะทัะฐะฑะพัะบั ัะธะปะฐะผะธ AI-ะผะพะดะตะปะธ, ะพะดะฝะฐะบะพ ัะปะพะถะฝะฐั ะปะพะณะธะบะฐ DRBD ะฟะพััะตะฑะพะฒะฐะปะฐ ะฟะพััะพัะฝะฝะพะณะพ ััะฐััะธั ัะตะปะพะฒะตะบะฐ. ะะฐะธะฑะพะปะตะต ัะปะพะถะฝัะผะธ ะพะบะฐะทะฐะปะธัั ััะตะฝะฐัะธะธ ัั ะพะถะดะตะฝะธั DRBD-ัะพััะพัะฝะธะน, ัะฐะฑะพัะฐ ั Generation Identifier (GI), ะฟัะพะฟััะบะฐ ะธะทะฝะฐัะฐะปัะฝะพะน ัะธะฝั ัะพะฝะธะทะฐัะธะธ ะธ ะพะฑัะฐะฑะพัะบะฐ split-brain ััะตะฝะฐัะธะตะฒ.
ะะพัะบะพะปัะบั ะพัะธะณะธะฝะฐะปัะฝัะน LINSTOR ัะฐัะฟัะพัััะฐะฝัะตััั ะฟะพะด ะปะธัะตะฝะทะธะตะน GPL, ะธัะฟะพะปัะทะพะฒะฐัั ะตะณะพ ะบะพะด ะฝะฐะฟััะผัั ะฑัะปะพ ะฝะตะปัะทั. ะัะฝะพะฒะฝะฐั ัะฐััั ัะตะฐะปะธะทะฐัะธะธ ัะพะทะดะฐะฒะฐะปะฐัั ะฝะฐ ะพัะฝะพะฒะต ะฐะฝะฐะปะธะทะฐ API-ะบะพะฝััะฐะบัะพะฒ, ะฟะพะฒะตะดะตะฝะธั ััะธะปะธั, Python-ะบะปะธะตะฝัะฐ LINSTOR, ะฐ ัะฐะบะถะต ัะพะฒะผะตััะธะผัั ะฟะพ ะปะธัะตะฝะทะธะธ ะฟัะพะตะบัะพะฒ, ะฒะบะปััะฐั piraeus-operator ะธ CSI-ะดัะฐะนะฒะตั.
ะ ะฝะฐะธะฑะพะปะตะต ัะปะพะถะฝัั
ัะปััะฐัั
ะฟัะธะผะตะฝัะปะฐัั ัั
ะตะผะฐ ั ัะฐะทะดะตะปะตะฝะธะตะผ ัะพะปะตะน AI-ะฐะณะตะฝัะพะฒ: ะพะดะธะฝ ะฐะณะตะฝั ะฐะฝะฐะปะธะทะธัะพะฒะฐะป ะธัั
ะพะดะฝัะน ะบะพะด LINSTOR ะธ ัะพัะผะธัะพะฒะฐะป ัะตะบััะพะฒัั ัะฟะตัะธัะธะบะฐัะธั ะฟะพะฒะตะดะตะฝะธั, ะฟะพัะปะต ัะตะณะพ ะดััะณะพะน ะฐะณะตะฝั ัะตะฐะปะธะทะพะฒัะฒะฐะป ััะฝะบัะธะพะฝะฐะปัะฝะพััั ะธัะบะปััะธัะตะปัะฝะพ ะฟะพ ััะพะน ัะฟะตัะธัะธะบะฐัะธะธ ะฑะตะท ะฟััะผะพะณะพ ะบะพะฟะธัะพะฒะฐะฝะธั ะธัั
ะพะดะฝะพะณะพ ะบะพะดะฐ. ะะท-ะทะฐ ะพััััััะฒะธั ะพัะบััััั
ัะตััะพะฒ ั ะพัะธะณะธะฝะฐะปัะฝะพะณะพ ะฟัะพะตะบัะฐ ัะตััะพะฒัั ะฑะฐะทั ะฟัะธัะปะพัั ัะพัะผะธัะพะฒะฐัั ัะฐะผะพััะพััะตะปัะฝะพ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru
