[์ด๋ก  ๋‚ด์šฉ] ZFS๋ž€?

2023. 7. 7. 16:04ใ†์ด๋ก  ์ •๋ฆฌ

728x90
๋ฐ˜์‘ํ˜•

 





 

 

 

๐Ÿš€ ZFS๋ž€?

    ๐Ÿ”ฝ ๊ฐœ์š”

        ๐Ÿ“ฆ ์†Œ๊ฐœ

ZFS๋Š” Zettabyte File System์˜ ์•ฝ์ž๋กœ Sun Microsystem์—์„œ ๋งŒ๋“  File System์ด๊ณ , Solaris์— ํƒ‘์žฌ ๋œ File System์ด์—์š”.
Sun Microsystem์€ ํ˜„์žฌ Oracle์— ์ธ์ˆ˜๊ฐ€ ๋œ ์ƒํ™ฉ์ธ๋ฐ, ์ด ๋•Œ, Oracle์ด ZFS๋ฅผ ํด๋กœ์ฆˆ๋“œ ์†Œ์Šค(์˜คํ”ˆ ์†Œ์Šค์˜ ๋ฐ˜๋Œ€; ์œ ๋ฃŒํ™”) ๋กœ ์ „ํ™˜ํ•˜์ž ๊ทธ์— ๋ถˆ๋งŒ์„ ๊ฐ€์ง„ ๊ฐœ๋ฐœ์ž๋“ค์ด OpenZFS๋ผ๋Š” Open Source ZFS ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค์–ด ๊ฐˆ๋ผ์ง€๊ฒŒ ๋˜์—ˆ์–ด์š”.

ZFS๋Š” File System๊ณผ ๋…ผ๋ฆฌ ๋ณผ๋ฅจ ๊ด€๋ฆฌ์ž๊ฐ€ ํ†ตํ•ฉ๋˜์–ด DATA ์†์ƒ์— ๋Œ€ํ•œ ๊ด‘๋ฒ”์œ„ํ•œ ๋ณด๋กœ๋ฅผ ์ œ๊ณตํ•˜๊ณ , ๋†’์€ Storage ์šฉ๋Ÿ‰์„ ์ง€์›ํ•˜๋ฉฐ, ์ง€์†์ ์ธ Data ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ์ž๋™ ๋ณต๊ตฌ, Raid-Z ๊ธฐ์ˆ ์„ ํ†ตํ•ด RAID๋ฅผ File System์—์„œ Native๋กœ ์ง€์›ํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์นœ๊ตฌ์—์š”.

๋˜ํ•œ, ์Šค๋ƒ…์ƒท์ด๋‚˜ ์••์ถ•, ์ค‘๋ณต ์ œ๊ฑฐ ๊ธฐ๋Šฅ ๋“ฑ์„ File System์—์„œ ์ง€์›ํ•˜๋ฉฐ, NFSv4 ACL์„ ์™„๋ฒฝํ•˜๊ฒŒ ์ง€์›ํ•œ๋‹ต๋‹ˆ๋‹ค.

 

 

 

    ๐Ÿ”ฝ ํŠน์ง•

ZFS๋Š” ์•„์ฃผ ๊ฐ•๋ ฅํ•œ File System์ธ๋ฐ์š”.
๋‹ค๋ฅธ File System์—์„œ๋Š” ์ง€์›ํ•˜์ง€ ์•Š๋Š” ๊ธฐ๋Šฅ์„ Native๋กœ ์•ˆ์ •์ ์œผ๋กœ ์ง€์›ํ•˜๊ณ  ์žˆ์–ด์š”.

 

์ œ        ๋ชฉ ๋‚ด       ์šฉ
File System๊ณผ
๋ณผ๋ฅจ ๊ด€๋ฆฌ์ž ํ†ตํ•ฉ
1. RAID Card์™€ ๊ฐ™์€ ๋ณ„๋„ Hardware๋‚˜, ํŠน๋ณ„ํ•œ Software ์—†์ด RAID๋ฅผ Native๋กœ ๋งค์šฐ ์•ˆ์ •์ ์œผ๋กœ ์ง€์›.

2. ํŠน๋ณ„ํ•œ ์žฅ์น˜ ์—†์ด ์บ์‹œ ๋“œ๋ผ์ด๋ธŒ ์ถ”๊ฐ€ ๊ฐ€๋Šฅ.

3. ๋ฐ์ดํ„ฐ ๋ธ”๋ก์˜ ์œ„์น˜๋ฅผ ์•Œ๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋น ๋ฅธ ์†๋„๋กœ ์‹œ์‹ค๋ฒ„๋ง ๊ฐ€๋Šฅ.

ZFS๋Š” File System๊ณผ ๋ณผ๋ฅจ ๊ด€๋ฆฌ์ž์˜ ์—ญํ• ์„ ๊ฒธํ•˜๊ธฐ ๋•Œ๋ฌธ์— RAID๋ฅผ File System์—์„œ ์ง€์›.
๋˜ํ•œ, ์บ์‹œ ์šฉ๋„์˜ ๋“œ๋ผ์ด๋ธŒ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๊ณ , ์ผ๋ฐ˜์ ์ธ RAID์™€ ๋‹ฌ๋ฆฌ ์–ด๋–ค ๋ธ”๋ก์— DATA๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š”์ง€ ์•Œ๊ธฐ ๋•Œ๋ฌธ์— ๋น ๋ฅธ DATA ๋ฆฌ์‹ค๋ฒ„๋ง์ด ๊ฐ€๋Šฅ.
DATA ๋ฌด๊ฒฐ์„ฑ File System์—์„œ ์–ด๋–ค DISK์— DATA๋ฅผ ์ €์žฅํ•œ๋‹ค ํ• ์ง€๋ผ๋„ ์ €์žฅ๋œ ์ผ์ • DATA๋Š” ๋ณ€ํ˜•๋˜๊ณ  ํŒŒ๊ดด๋œ๋‹ค.

์‚ฌ์šฉ์ž์˜ ์‹ค์ˆ˜๋‚˜ HDD๊ฐ€ ํŒŒ๊ดด๋˜๋Š” ๊ฒƒ ๋ง๊ณ ๋„ OS๊ฐ€ ๊ฐ์ง€ํ•  ์ˆ˜ ์—†๋Š” DATA ํŒŒ๊ดด ๋˜ํ•œ ๊ฐ€๋Šฅ.

์ด๋Ÿฌํ•œ ์ด์œ ๋Š” ๋Š์Šจํ•˜๊ฒŒ ์—ฐ๊ฒฐ๋œ Cable์ด ์›์ธ์ผ ์ˆ˜๋„ ์žˆ๊ณ , ์™ธ๋ถ€ ์ง„๋™์ผ์ˆ˜๋„ ์žˆ์œผ๋ฉฐ, ์ž์—ฐ ๋ฐฉ์‚ฌ์„ ์˜ ์˜ํ–ฅ์œผ๋กœ Bit๊ฐ€ ๋’ค์ง‘ํž ์ˆ˜๋„ ์žˆ๋‹ค.

์ผ๋ฐ˜์ ์ธ DATA ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜์ง€ ์•Š๋Š” File System์—์„œ๋Š” DATA๊ฐ€ ํŒŒ๊ดด๋œ์ง€ ์•Œ ์ˆ˜ ์—†๋‹ค.

์ด์— ๋ฐ˜ํ•ด ZFS์˜ ๊ฒฝ์šฐ DATA ํŒŒ๊ดด๋ฅผ ๋ง‰์„ ์ˆœ ์—†์œผ๋‚˜, ํŒŒ๊ดด๋œ DATA๋ฅผ ์ž๋™์œผ๋กœ ๋ณต๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์ œ๊ณต.
ํ•ด๋‹น ๊ธฐ๋Šฅ์ด scrup.
Copy-On-Write Copy-On-Write ํŠธ๋žœ์žญ์…˜์€ ์“ฐ๊ธฐ ์ „ ๋‚ด์šฉ์„ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ์ด๋‚˜, ZFS๊ฐ€ DATA๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์ „ ํ•ด๋‹น DATA ์‚ฌ๋ณธ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค.

๋งŒ์•ฝ Copy-On-Write์ด ์—†๋Š” File System์„ ์‚ฌ์šฉํ•˜๋Š” HDD A๊ฐ€ ์žˆ์„ ๋•Œ, ํ•ด๋‹น HDD ์•ˆ ํŠน์ • DATA๋ฅผ B ๋ผ๋Š” DATA๋กœ ์ˆ˜์ • (์“ฐ๊ธฐ) ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด A์— ์ €์žฅ๋œ DATA Block์— B๋ผ๋Š” DATA๋ฅผ ๋ฎ์–ด์“ฐ๋Š” ์ž‘์—…์„ ํ•˜๊ฒŒ ๋œ๋‹ค.

์ด ๋•Œ, DATA๋ฅผ ์ž…๋ ฅํ•˜๋‹ค ์–ด๋–ค ๋ฌธ์ œ(๊ฐ‘์ž๊ธฐ ์ „์›์ด ๋‚ด๋ ค๊ฐ€๋Š” ์ƒํ™ฉ, OS์˜ ๋ฌธ์ œ๋กœ ์˜ค๋ฅ˜ ๋ฐœ์ƒ ๋“ฑ)๊ฐ€ ๋ฐœ์ƒํ•˜๊ฒŒ ๋˜๋ฉด A์™€ B DATA๋Š” ํŒŒ๊ดด ๋ฐ ์†์‹ค ๋œ๋‹ค.

ํ•˜์ง€๋งŒ, ZFS์—์„œ๋Š” A๋ผ๋Š” DATA๋ฅผ B๋ผ๊ณ  ๋ณ€๊ฒฝํ•ด์•ผ ํ•  ๋•Œ, A DATA๋Š” ๊ทธ๋Œ€๋กœ ๋‘๊ณ , ์ƒˆ๋กœ์šด Block์„ ํ• ๋‹นํ•˜์—ฌ B๋ผ๋Š” DATA๋ฅผ ์ž…๋ ฅํ•œ ๋’ค ์“ฐ๊ธฐ ์ž‘์—…์ด ์„ฑ๊ณตํ•œ ๊ฒƒ์„ ํ™•์ธํ•˜๋ฉด B DATA๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋„๋ก Updateํ•˜๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ์–ด๋–ค ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ด๋„ A๋ผ๋Š” DATA ์ฆ‰, ์›๋ณธ DATA๋Š” ํŒŒ๊ดด ๋ฐ ์†์‹ค๋˜์ง€ ์•Š๋Š”๋‹ค.

๋˜ํ•œ, ์ด ๊ธฐ๋Šฅ ๋•๋ถ„์— ์Šค๋ƒ…์ƒท์ด ๋งค์šฐ ํšจ์œจ์ ์œผ๋กœ ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋œ๋‹ค.
128Bit File System ZFS๋Š” ์ตœ์ดˆ 128Bit๋ฅผ ์‚ฌ์šฉํ•œ File System์ด๋‹ค.
๊ทธ๋Ÿฌ๋ฏ€๋กœ, ๊ฑฐ์˜ ๋ฌดํ•œ๋Œ€ ์šฉ๋Ÿ‰์„ ์ง€์›ํ•œ๋‹ค.

1. FAT32๋Š” 32Bit File System
  1) ๋…ผ๋ฆฌ ํŒŒํ‹ฐ์…˜์˜ ํ•œ๊ณ„๋Š” 8TB
  2) ์ตœ๋Œ€ File ํฌ๊ธฐ๋Š” 4GB
  3) ํ•˜๋‚˜์˜ Directory์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ File ๊ฐœ์ˆ˜ 16,384๊ฐœ

2. NTFS๋Š” 64Bit File System
  1) ๋…ผ๋ฆฌ Partition์˜ ํ•œ๊ณ„๋Š” 256TB
  2) ์ตœ๋Œ€ File ํฌ๊ธฐ๋Š” 16TB
  3) ํ•˜๋‚˜์˜ Directory์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” File ๊ฐœ์ˆ˜ 4,294,967,295๊ฐœ

3. ZFS๋Š” 128Bit File System
  1) ๋ชจ๋“  zpoop์˜ ํ•œ๊ณ„ ํฌ๊ธฐ๋Š” 2560์–ต Zeta Byte
  2) 16 ์—‘์Šค๋น„ ๋ฐ”์ดํŠธ ํฌ๊ธฐ์˜ ๋‹จ์ผ ํŒŒ์ผ
  3) ํ•˜๋‚˜์˜ Directory์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ File ๊ฐœ์ˆ˜ 2^48 = 281,474,976,710,656๊ฐœ
728x90





3 - ZFS ์šฉ์–ด ์ •๋ฆฌ

์ œ        ๋ชฉ ๋‚ด       ์šฉ
vdev vdev๋Š” ZFS์˜ ๊ฐ€์žฅ ๊ธฐ๋ณธ Level ๊ฐ€์ƒ ์žฅ์น˜ ์˜๋ฏธ.

์ด vdev๋Š” ๋‹จ์ผ DISK ๋˜๋Š” ์—ฌ๋Ÿฌ DISK๋กœ ๊ตฌ์„ฑ.

1. ๋‹จ์ผ DISK
2. Mirroring RAIDz๋œ ์—ฌ๋Ÿฌ DISK
3. ๋‹ค๋ฅธ vdev

ํ•˜๋‚˜ ๋˜๋Š” ์—ฌ๋Ÿฌ๊ฐœ์˜ DISK (๋˜๋Š” ํŒŒํ‹ฐ์…˜)๊ฐ€ vdev๋ผ๋Š” ๊ฐ€์ƒ์˜ ์žฅ์น˜๋ฅผ ๊ตฌ์„ฑํ•˜๋ฉฐ, ๊ฐ๊ฐ์˜ vdev๋Š” ๋‹ค๋ฅธ ๋ชจ๋“  vdev์™€ ๋…๋ฆฝ์ ์ด๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— vdev๋Š” ํ•˜๋‚˜์˜ ZFS๋‚ด์—์„œ ์›ํ•˜๋Š” ๋Œ€๋กœ ์„ค์ •ํ•˜๊ณ , ํ˜ผํ•ฉํ•  ์ˆ˜ ์žˆ๋‹ค.
zpool DATA์˜ ์ตœ์ƒ์œ„ ์ˆ˜์ค€.
์ผ๋ฐ˜ File System์˜ ๋ณผ๋ฅจ๊ณผ ๋น„์Šทํ•œ ๊ฐœ๋…์ด๋‚˜, ๋งŽ์€ ์ฐจ์ด์ ์ด ์žˆ๊ณ , zpool์€ ํŒŒํ‹ฐ์…˜๊ณผ ๋ณผ๋ฅจ ์‚ฌ์ด ๋†“์ธ Layer.

zpool์€ ํ•˜๋‚˜ ์ด์ƒ์˜ vdev์™€ SLOG์™€ ๊ฐ™์€ ์บ์‹œ๋กœ ์ด๋ค„์ง„๋‹ค.

zpool์€ Live ์ƒํƒœ์—์„œ ์ž์œ ๋กญ๊ฒŒ ํ™•์žฅ ๊ฐ€๋Šฅ.
System ์ •์ง€ ๋ฐ zpool ๋น„ํ™œ์„ฑํ™” ๋“ฑ์˜ ์ž‘์—… ์—†์ด ๋‹ค์ˆ˜์˜ vdev์™€ ์บ์‹œ ์ถ”๊ฐ€ ๊ฐ€๋Šฅ.

zpool์€ ๋ชจ๋“  vdev์— DATA๋ฅผ ์ŠคํŠธ๋ผ์ดํ”„ ํ•˜์—ฌ ์ €์žฅ.
๋งŒ์ผ Raidz1 (RAID5)๋กœ ๋ฌถ์€ 5๊ฐœ์˜ DISK๋กœ ๊ตฌ์„ฑ๋œ vdev 2๊ฐœ๋กœ ์ด๋ค„์ง„ zpool์ด ์žˆ์„ ๊ฒฝ์šฐ ๊ทธ zpool์€ ์ŠคํŠธ๋ผ์ดํ”„๋œ Raidz1, ์ฆ‰, RAID50๊ฐ€ ๋˜๋Š” ๊ฒƒ๊ณผ ๋™์ผ
Scrub DATA๋Š” ๋ณ€์งˆ๋˜๊ณ , ํŒŒ๊ดด๋  ์ˆ˜ ์žˆ๋Š”๋ฐ, ZFS๋Š” ๊ทธ ํŒŒ๊ดด๋ฅผ ๋ณต๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋Šฅ ๋ณด์œ .
ZFS๊ฐ€ DATA ๋ฌด๊ฒฐ์„ฑ์„ ์ง€ํ‚ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ์ด scrub

zpoop์˜ ๋ชจ๋“  DATA์™€ Meta Data๋ฅผ ๊ฒ€์‚ฌํ•˜์—ฌ (๋ฌด๊ฒฐ์„ฑ ๊ฒ€์‚ฌ) DATA๊ฐ€ ์ •์ƒ์ธ์ง€ ์•„๋‹Œ์ง€ ํ™•์ธํ•˜๊ณ , ์ž๋™์œผ๋กœ ๋ณต๊ตฌ.
๊ฒ€์‚ฌ์‹œ์—๋Š” SHA-256์„ ์‚ฌ์šฉํ•˜๊ณ , ๋” ๊ฐ•ํ•˜๊ฑฐ๋‚˜, ์•ฝํ•œ ํ•ด์‹œ๋ฅผ ์‚ฌ์šฉํ• ์ˆ˜๋„ ์žˆ์Œ.

scrub์€ zpool์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ์™€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์‚ฌํ•œ๋‹ค๋Š” ํŠน์ง• ๋•Œ๋ฌธ์— ๋””์Šคํฌ์— ์‹ฌํ•œ ์ฝ๊ธฐ ๋ถ€ํ•˜์™€ ๊ทธ๋ฆฌ ์‹ฌํ•˜์ง„ ์•Š์ง€๋งŒ CPU์— ๋ถ€ํ•˜ ์œ ๋ฐœ.
๊ทธ๋ž˜์„œ 20~30์ผ์— ํ•œ๋ฒˆ, ์ƒˆ๋ฒฝ์— ๊ฒ€์‚ฌํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœ.


Raidz Raidz ๋˜๋Š” Raid-Z๋Š” Raid + ZFS ๋ผ๋Š” ๋œป.

ZFS์—์„œ ์ œ๊ณตํ•˜๋Š” RAID ๊ธฐ๋Šฅ์ด๋ผ๋Š” ๋œป์œผ๋กœ ZFS๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ์ด์ž ๋ถˆ๋ฅจ ๊ด€๋ฆฌ์ž์ด๊ธฐ ๋•Œ๋ฌธ์— ํŒŒ์ผ ์‹œ์Šคํ…œ์—์„œ RAID๋ฅผ ์ง€์›ํ•˜๊ณ , ๋ฏธ์…˜ ํฌ๋ฆฌํ‹ฐ์ปฌ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ๊ธ‰ ํ™˜๊ฒฝ์„ ๋…ธ๋ฆฌ๊ณ  ๋งŒ๋“  ํŒŒ์ผ ์‹œ์Šคํ…œ์ด๊ธฐ ๋•Œ๋ฌธ์— RAID๋ฅผ ํŠน๋ณ„ํ•œ ํ•˜๋“œ์›จ์–ด๋‚˜ ์†Œํ”„ํŠธ์›จ์–ด ์—†์ด๋„ ํ•˜๋“œ์›จ์–ด ๋ ˆ์ด๋“œ๋งŒํผ์˜, ๋˜๋Š” ๊ทธ ์ด์ƒ์˜ ์•ˆ์ •์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ๊ฐ–๋Š”๋‹ค.

ZFS๋Š” ๋™์  ์ŠคํŠธ๋ผ์ดํ”„ ๋„“์ด๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , Copy-On-Write ํŠธ๋žœ์ ์…˜ ๋ชจ๋ธ ๋•๋ถ„์— ์“ฐ๊ธฐ ํ™€ ์˜ค๋ฅ˜๊ฐ€ ์ œ๊ฑฐ๋œ๋‹ค.
๋˜ํ•œ, ์ฝ๊ธฐ-์ˆ˜์ •-์“ฐ๊ธฐ ์‹œํ€€์Šค๋ฅผ ์ˆ˜ํ–‰ํ•  ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ์กด RAID5๋ณด๋‹ค ๋น ๋ฅด๋‹ค.
๋ฐ˜์‘ํ˜•

 

 

 

 

 

 

728x90
๋ฐ˜์‘ํ˜•

'์ด๋ก  ์ •๋ฆฌ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[k8s] Kubernetes๋ž€?  (0) 2023.07.13
[WiKi] ๋ฌธ๋ฒ• ์ •๋ฆฌ  (0) 2022.10.28
[REDMINE] ์‚ฌ์šฉ ๋ฐฉ๋ฒ•  (0) 2022.10.27