ΠΠΎΡΡΡΠΏΠ΅Π½ Π΅ ΠΏΡΡΠ²ΠΈΡΡ Π±ΡΠΎΠΉ Π½Π° 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. ΠΡΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠΎΠ΄Π΅Π» Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π·Π°ΡΠ²ΠΊΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π½Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΠ΅, Π΄ΠΎΠΊΠ°ΡΠΎ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΈΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π½Π° reconciliation Π² Kubernetes ΠΈ framework controller-runtime, ΡΠΏΠΎΡΠ΅Π΄ Π°Π²ΡΠΎΡΠ°, Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ-ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ.
ΠΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΡ LINSTOR, Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Π½Π° Blockstor Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° Π½Π° Kubernetes controller-runtime. ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΈ ΡΠ΅ΠΊΡΡΠΎΡΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΡΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½ΠΈ ΠΊΠ°ΡΠΎ Kubernetes CRD ΠΎΠ±Π΅ΠΊΡΠΈ, Π° ΡΠ°ΠΌΠ°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ ΠΈΠ·Π²ΡΠ½ Kubernetes ΠΊΠ»ΡΡΡΠ΅ΡΠ°.
Π‘ΡΠ΅Π΄ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π° Blockstor ΡΠ°:
- Π Π΅ΠΏΠ»ΠΈΡΠΈΡΠ°Π½ΠΈ ΡΠΎΠΌΠΎΠ²Π΅ Π½Π°Π΄ DRBD Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ LVM, LVM-thin, ZFS, ZFS-thin ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ Π±Π΅ΠΊΠ΅Π½Π΄ΠΈ.
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈΡΠ΅, ΠΊΠ°ΡΠΎ ΡΠ΅ Π²Π·Π΅ΠΌΠ°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π·ΠΎΠ½ΠΈΡΠ΅, ΡΠ²ΠΎΠΉΡΡΠ²Π°ΡΠ° Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π·Π° βΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΌΠ΅ΡΡΠ°β.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° TieBreaker, ΠΊΠ²ΠΎΡΡΠΌ ΠΈ ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠΎΠΌΠΎΠ²Π΅ΡΠ΅ Π±Π΅Π· ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ°.
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠ°Π±ΠΎΡΠ° Π±Π΅Π· 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
