ΠΡΠΈΠ²Π΅Ρ, Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΌΠ½Π΅ ΠΏΠΎΠΏΠ°Π»Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ Π·Π°Π΄Π°ΡΠΊΠ° Π½Π°ΡΡΡΠΎΠΈΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π΄Π»Ρ Π±ΡΠΊΠ°ΠΏΠ° Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π±Π»ΠΎΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ².
ΠΠ°ΠΆΠ΄ΡΡ Π½Π΅Π΄Π΅Π»Ρ ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ Π² Π½Π°ΡΠ΅ΠΌ ΠΎΠ±Π»Π°ΠΊΠ΅, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΡΡΡΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΠΉ ΠΈ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΈ ΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ RAID5, RAID6 Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π°ΠΌ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΡΡΡ Π² Π²ΠΈΠ΄Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π½Π° ΡΠ°ΠΊΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ Π΄ΠΈΡΠΊΠ°Ρ ΠΊΠ°ΠΊ Π½Π°ΡΠΈ Π±ΡΠ΄Π΅Ρ ΠΌΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»Π³ΠΈΠΌ ΠΈ ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ Π½Π΅ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡΡ Π½ΠΈΠΊΠΎΠ³Π΄Π°.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΊΠΈΠ΅ Π΅ΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ :
Π ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠ΅ΡΠ²Π΅Ρ Fujitsu Primergy RX300 S7 c ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ Intel Xeon CPU E5-2650L 0 @ 1.80GHz, Π΄Π΅Π²ΡΡΡΡ ΠΏΠ»Π°Π½ΠΊΠ°ΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Samsung DDR3-1333 8Gb PC3L-10600R ECC Registered (M393B1K70DH0-YH9), Π΄ΠΈΡΠΊΠΎΠ²Π°Ρ ΠΏΠΎΠ»ΠΊΠ° Supermicro SuperChassis 847E26-RJBOD1, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΡΠ½Π½Π°Ρ ΡΠ΅ΡΠ΅Π· Dual LSI SAS2X36 Expander ΠΈ 45 Π΄ΠΈΡΠΊΠΎΠ² Seagage ST6000NM0115-1YZ110 ΠΏΠΎ 6TB ΠΊΠ°ΠΆΠ΄ΡΠΉ.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΡΡΠΎ-ΡΠΎ ΡΠ΅ΡΠΈΡΡ Π½Π°ΠΌ ΡΠ½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΠ»ΡΡ ΠΈ ΠΏΡΠΎΠ²ΡΠ» ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» minio, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΡΡΡΠΏΠ°Π» Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ S3-Π±ΡΠΊΠ΅Π½Π΄Π° ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π» Π΅Π³ΠΎ Π² ΡΠ°Π·Π½ΡΡ ΡΠ΅ΠΆΠΈΠΌΠ°Ρ Ρ ΡΠ°Π·Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ°ΡΠ³Π΅ΡΠΎΠ².
Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»ΡΡ ΠΊΠ΅ΠΉΡ minio Π² erasure coding vs software raid Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π΄ΠΈΡΠΊΠΎΠ² ΠΈ parity Π΄ΠΈΡΠΊΠΎΠ², Π° ΡΡΠΎ: RAID6, RAIDZ2 ΠΈ DRAID2.
ΠΠ»Ρ ΡΠΏΡΠ°Π²ΠΊΠΈ: ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ minio Ρ ΠΎΠ΄Π½ΠΈΠΌ-Π»ΠΈΡΡ ΡΠ°ΡΠ³Π΅ΡΠΎΠΌ, ΡΠΎ minio ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ S3-Π³Π΅ΠΉΡΠ²Π΅Ρ ΠΎΡΠ΄Π°Π²Π°Ρ Π²Π°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π² Π²ΠΈΠ΄Π΅ S3-Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°. Π ΡΠ»ΡΡΠ°Π΅ ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ minio Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΡΠ³Π΅ΡΠΎΠ², ΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡΡ ΡΠ΅ΠΆΠΈΠΌ Erasure Coding, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΠΌΠ°Π·ΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π°ΡΠΈΠΌΠΈ ΡΠ°ΡΠ³Π΅ΡΠ°ΠΌΠΈ Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΠΈ.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ minio Π΄Π΅Π»ΠΈΡ ΡΠ°ΡΠ³Π΅ΡΡ Π½Π° Π³ΡΡΠΏΠΏΡ ΠΏΠΎ 16 Π΄ΠΈΡΠΊΠΎΠ², Π³Π΄Π΅ Π½Π° ΠΊΠ°ΠΆΠ΄ΡΡ Π³ΡΡΠΏΠΏΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎ 2 parity. Π’.Π΅. ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΠ· ΡΡΡΠΎΡ ΠΌΠΎΠ³ΡΡ Π²ΡΠΉΡΠΈ Π΄Π²Π° Π΄ΠΈΡΠΊΠ° Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΠΈ Π΄Π°Π½Π½ΡΡ .
ΠΠ»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» 16 Π΄ΠΈΡΠΊΠΎΠ² ΠΏΠΎ 6TB ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈ ΠΏΠΈΡΠ°Π» Π½Π° Π½ΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π² 1MB, ΡΡΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΠΎΡΠ½ΠΎ ΠΎΠΏΠΈΡΡΠ²Π°Π»ΠΎ Π½Π°ΡΡ Π±ΡΠ΄ΡΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π±ΡΠΊΠ°ΠΏΠ° Π΄Π΅Π»ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π½Π° Π±Π»ΠΎΠΊΠΈ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ ΠΈ ΠΏΠΈΡΡΡ ΠΈΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
ΠΠ»Ρ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ Π±ΡΠ½ΡΠΌΠ°ΡΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ ΡΡΠΈΠ»ΠΈΡΠ° s3bench Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΠ°Ρ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΠ°Ρ Π² minio Π΄Π΅ΡΡΡΠΊΠΈ ΡΡΡΡΡ ΡΠ°ΠΊΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π² ΡΠΎΡΠ½Ρ ΠΏΠΎΡΠΎΠΊΠΎΠ². ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΡΡΠ°Π»Π°ΡΡ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ.
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ Π±ΡΠ½ΡΠΌΠ°ΡΠΊΠ° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅:
ΠΠ°ΠΊ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, minio Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ erasure coding ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ ΡΠΆΠ΅ Π½Π° Π·Π°ΠΏΠΈΡΡ, ΡΠ΅ΠΌ minio Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠ²Π΅ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ RAID6, RAIDZ2 ΠΈ DRAID2 Π² ΡΠΎΠΉΠΆΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΌΠ΅Π½Ρ
Π ΠΏΠ΅ΡΠ²ΡΡ ΠΏΠΎΡΡΠΈΡ ΡΠ΅ΡΡΠΎΠ² Mdadm ΠΏΠΎΠΊΠ°Π·Π°Π» ΠΏΡΠ΅Π²ΠΎΡΡ
ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π°Π΄ ZFS, Π½ΠΎ ΠΏΠΎΠ·ΠΆΠ΅
xattr=sa atime=off recordsize=1M
ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΡΡ Ρ ZFS ΡΡΠ°Π»ΠΈ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΡΡΠ΅.
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ ΡΡΠΎ DRAID Π½Π΅ Π΄Π°ΡΡ ΠΎΡΠΎΠ±ΠΎΠ³ΠΎ Π²ΡΠΈΠ³ΡΡΡΠ° Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄ RAIDZ, Π½ΠΎ Π² ΡΠ΅ΠΎΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π΅Π΅.
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
Π΄Π²ΡΡ
ΡΠ΅ΡΡΠ°Ρ
Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΡΡΠ°Π»ΡΡ Π²ΡΠ½Π΅ΡΡΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ (special) ΠΈ ZIL (log) Π½Π° Π·Π΅ΡΠΊΠ°Π»ΠΎ ΠΈΠ· SSD. ΠΠΎ Π²ΡΠ½Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ
Π½Π΅ Π΄Π°Π»ΠΎ ΠΎΡΠΎΠ±ΠΎΠ³ΠΎ Π²ΡΠΈΠ³ΡΡΡΠ° Π² ΡΠΊΠΎΡΠΎΡΡΠΈ Π·Π°ΠΏΠΈΡΠΈ, Π° ΠΏΡΠΈ Π²ΡΠ½ΠΎΡΠ΅ ZIL ΠΌΠΎΠΈ
Π ΠΈΡΠΎΠ³Π΅ Ρ ΡΠ΅ΡΠΈΠ» ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ DRAID ΠΈ Π½Π΅ ΡΠΌΠΎΡΡΡ Π½Π° ΡΠ²ΠΎΠΉ Π±Π΅ΡΠ° ΡΡΠ°ΡΡΡ, ΠΎΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΠΌ ΠΈ ΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅.
Π― ΡΠΎΠ·Π΄Π°Π» ΠΏΡΠΎΡΡΠΎΠΉ DRAID2 Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ c ΡΡΠ΅ΠΌΡ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ ΠΈ Π΄Π²ΡΠΌΡ distributed spares:
# zpool status data
pool: data
state: ONLINE
scan: none requested
config:
NAME STATE READ WRITE CKSUM
data ONLINE 0 0 0
draid2:3g:2s-0 ONLINE 0 0 0
sdy ONLINE 0 0 0
sdam ONLINE 0 0 0
sdf ONLINE 0 0 0
sdau ONLINE 0 0 0
sdab ONLINE 0 0 0
sdo ONLINE 0 0 0
sdw ONLINE 0 0 0
sdak ONLINE 0 0 0
sdd ONLINE 0 0 0
sdas ONLINE 0 0 0
sdm ONLINE 0 0 0
sdu ONLINE 0 0 0
sdai ONLINE 0 0 0
sdaq ONLINE 0 0 0
sdk ONLINE 0 0 0
sds ONLINE 0 0 0
sdag ONLINE 0 0 0
sdi ONLINE 0 0 0
sdq ONLINE 0 0 0
sdae ONLINE 0 0 0
sdz ONLINE 0 0 0
sdan ONLINE 0 0 0
sdg ONLINE 0 0 0
sdac ONLINE 0 0 0
sdx ONLINE 0 0 0
sdal ONLINE 0 0 0
sde ONLINE 0 0 0
sdat ONLINE 0 0 0
sdaa ONLINE 0 0 0
sdn ONLINE 0 0 0
sdv ONLINE 0 0 0
sdaj ONLINE 0 0 0
sdc ONLINE 0 0 0
sdar ONLINE 0 0 0
sdl ONLINE 0 0 0
sdt ONLINE 0 0 0
sdah ONLINE 0 0 0
sdap ONLINE 0 0 0
sdj ONLINE 0 0 0
sdr ONLINE 0 0 0
sdaf ONLINE 0 0 0
sdao ONLINE 0 0 0
sdh ONLINE 0 0 0
sdp ONLINE 0 0 0
sdad ONLINE 0 0 0
spares
s0-draid2:3g:2s-0 AVAIL
s1-draid2:3g:2s-0 AVAIL
errors: No known data errors
Π₯ΠΎΡΠΎΡΠΎ, Ρ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ, ΡΠ΅ΠΏΠ΅ΡΡ ΠΎ ΡΠΎΠΌ ΡΠ΅ΠΌ Π±ΡΠ΄Π΅ΠΌ Π±ΡΠΊΠ°ΠΏΠΈΡΡ. ΠΠ΄Π΅ΡΡ ΡΡΠ°Π·Ρ Ρ ΠΎΡΠ΅ΡΡΡ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎ ΡΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡΡ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ, Π° ΡΡΠΎ:
--special
, ΠΈΠ· ΠΌΠΈΠ½ΡΡΠΎΠ²: ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π±ΡΠΊΠ°ΠΏΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π±Π»ΠΎΠΊΠΈΡΡΠ΅ΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡΡ Π²ΠΈΡΡΡΠ°Π»ΠΊΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ ΡΡΠΎ Π½Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π±Π»Π°Π³ΠΎ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΎΠ½ΠΈ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ.
-
ΠΠΎ ΠΏΠ΅ΡΠ²ΡΡ , Ρ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΠ±ΡΠ΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π΄Π»Ρ Π²ΡΠ΅Ρ Π²ΠΈΡΡΡΠ°Π»ΠΎΠΊ (ΠΊΠ°ΠΊ Benji) ΠΈ ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ, Π½ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»Π΅Π½ΠΈΡ Π·Π°Π½ΠΈΠΌΠ°Π»ΠΈ Π²Π΅ΡΡΠΌΠ° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, Ρ.ΠΊ. ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΠ΅ΡΠ΅Π΄ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ restic ΠΏΡΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ Π²ΡΠ΅Ρ Π±ΡΠΊΠ°ΠΏΠΎΠ². ΠΠ°Π½Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π»Π΅Π³ΠΊΠΎ ΡΠ΅ΡΠΈΠ»Π°ΡΡ ΠΊΠ°ΠΊ ΠΈ Ρ borg, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡΡ Π²ΠΈΡΡΡΠ°Π»ΠΊΡ. ΠΡΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΎΠΊΠ°Π·Π°Π»ΡΡ Π²Π΅ΡΡΠΌΠ° ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΡΠ°ΠΊΠΆΠ΅ ΠΈ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΠΌΠΈ ΠΊΠΎΠΏΠΈΡΠΌΠΈ. ΠΠ±ΠΎΡΠΎΠ±Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π΅ Π±ΠΎΡΡΡΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΊΠ°ΠΊ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ»ΠΎΠΌΠ°Π΅ΡΡΡ. Π‘ΠΏΠ°Π²Π½ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΊΠ°ΠΊ ΠΈ Π² borg backup.
Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π΅Π΄ΡΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ Π±ΡΠΊΠ°ΠΏΠ°, ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ Π±ΡΠΊΠ°ΠΏ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΠΎ path Π΄Π»Ρ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π±ΡΠΊΠ°ΠΏΠ°, ΡΠ°ΠΊ ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π±ΡΠΊΠ°ΠΏΠΈΡΠ΅ ΡΠ°Π·Π½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ· stdin Π² ΠΎΠ±ΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΠΎΠΏΡΠΈΡ
--stdin-filename
, Π»ΠΈΠ±ΠΎ ΡΠ²Π½ΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΎΠΏΡΠΈΡ--parent
.
-
ΠΠΎ Π²ΡΠΎΡΡΡ , Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π² stdout Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ΅ΠΌ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π² Π²ΠΈΠ΄Ρ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΠ°ΡΠ°Π»Π΅Π»ΡΠ½ΠΎΡΡΠΈ. Π Π±ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΡΠ½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π±ΡΠΊΠ°ΠΏΠΎΠ² Π΄Π»Ρ Π±Π»ΠΎΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ².
-
Π ΡΡΠ΅ΡΡΠΈΡ , Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
Π²Π΅ΡΡΠΈΡ ΠΈΠ· master , Ρ.ΠΊ. Π²Π΅ΡΡΠΈΡ 0.9.6 ΠΈΠΌΠ΅Π΅Ρ Π±Π°Π³ Ρ Π΄ΠΎΠ»Π³ΠΈΠΌ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ².
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ Π±ΡΠΊΠ°ΠΏΠ° ΠΈ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ / Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ, Ρ ΡΠΎΠ·Π΄Π°Π» ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Π·Π°Π±ΡΠΊΠ°ΠΏΠΈΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΎΠ±ΡΠ°Π· Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ (21 GB). ΠΡΠ»ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π΄Π²Π° Π±ΡΠΊΠ°ΠΏΠ° Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΡΡΡΡΠ΅Π΅/ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ Π΄Π΅Π΄ΡΠΏΠ»ΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΌΠ΅ΡΠΈΡΡ Borg Backup ΠΈΠΌΠ΅Π΅Ρ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΉ ΠΊΠΎΡΡΠΈΡΠΈΠ΅Π½Ρ ΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ, Π½ΠΎ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π΅Ρ ΠΏΠΎ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΊΠ°ΠΊ Π·Π°ΠΏΠΈΡΠΈ ΡΠ°ΠΊ ΠΈ Π²ΠΎΡΡΡΠ°Π²Π»Π΅Π½ΠΈΡ.
Restic ΠΎΠΊΠ°Π·Π°Π»ΡΡ Π±ΡΡΡΡΠ΅Π΅ Benji Backup, Π½ΠΎ Π΄ΠΎΠ»ΡΡΠ΅ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π² stdout, Π° ΠΏΠΈΡΠ°ΡΡ Π½Π°ΠΏΡΡΠΌΡΡ Π² Π±Π»ΠΎΡΠ½ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΎΠ½, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠΌΠ΅Π΅Ρ.
ΠΠ·Π²Π΅ΡΠΈΠ² Π²ΡΠ΅ Π·Π° ΠΈ Π²ΡΠ΅ ΠΏΡΠΎΡΠΈΠ² Ρ ΡΠ΅ΡΠΈΠ» ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ Π½Π° restic Ρ rest-server ΠΊΠ°ΠΊ Π½Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠΌ ΠΈ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π΄Π»Ρ Π±ΡΠΊΠ°ΠΏΠ°.
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠΊΡΠΈΠ½ΠΊΠ°ΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΠΊΠ°ΠΊ 10-Π³ΠΈΠ³Π°Π±ΠΈΡΠ½ΡΠΉ ΠΊΠ°Π½Π°Π» ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΡΠΈΠ»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ ΠΏΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ , ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ , ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ Π±ΡΠΊΠ°ΠΏΠ°. Π‘ΡΠΎΠΈΡ Π·Π°ΠΌΠ΅ΡΠΈΡΡ ΡΡΠΎ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΡ Π΄ΠΈΡΠΊΠΎΠ² ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅ΡΡΡ Π²ΡΡΠ΅ 30%.
ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Ρ ΠΎΠΊΠ°Π·Π°Π»ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π΄ΠΎΠ²ΠΎΠ»Π΅Π½!
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com