ZFS มีชื่อเต็มว่า Zettabyte File System เป็นระบบจัดการไฟล์หรือ File System ที่ถูกสร้างโดยบริษัท SUN Microsystems (ตอนนี้ก็เป็นส่วนหนึ่งของ Oracle) เพื่อที่จะจัดการและควบคุมการเข้าถึง storage ในระดับ enterprise เพราะ แต่ก่อนนั้น Sun Microsystems ก็จะมุ่งเน้นให้บริการเซิร์ฟเวอร์และ OS ระดับองค์กรเป็นทุนเดิมอยู่แล้ว
ZFS File system นั้นนอกจากจัดการไฟล์และยังเป็น volume manager ด้วย รองรับการขยายได้ดีมาก และ ฟีเจอร์เจอร์สำหรับสตอเรจเช่น
ZFS นั้นรองรับการเก็บข้อมูลที่ใหญ่มากถึง 256 quadrillion zettabyte เลยทีเดียว
แล้ว ZFS ทำงานอย่างไร ?
ZFS นั้นสามารถจัดการ disk ที่อยู่ใน server ตัวหนึ่งๆ ได้เป็นพันก้อนเลยทีเดียว โดยจะมี zpool ที่ด้านล่างก็คือ virtual device ที่เรียกว่า vdev เมื่อใดก็ตามที่เราต้องการเนื้อที่เพิ่มขึ้น เราก็เพิ่ม disk เข้ามายัง pool นั่นจึงเป็นที่มาว่าทำไมเราจึงขยายได้เยอะมากๆ
ZFS นั้นจะเก็บ metadata ไว้ 2 สำเนา โดย metadata นั้นก็จะเป็นข้อมูลเกี่ยวกับ sector และขนาด block รวมถึง checksum เมื่อผู้ใช้งานต้องการเข้าถึงไฟล์ checksum ก็จะคำนวนเพื่อที่จะดึงข้อมูลที่ตรงกัน หากว่าเกิดความผิดพลาดหรือว่า checksum ไม่ตรง นอกจากนั้นมันยังมีความสามารถในการดึงข้อมูลจาก drive อื่นๆ ได้ด้วย และ ทำการ flag พื้นที่เสียได้ หากเราทำ mirror ในระดับ storage pool ไว้
ZFS นั้นเรียกได้ว่ามีคุณสมบัติแบบ copy-on-write (COW) แต่ทาง Oracle นั้นจะบอกว่าเป็น redirect-on-write เพราะเมื่อ ZFS ทำการเขียนข้อมูลลงดิสก์ มันไม่ได้ทำการเขียนทับข้อมูล แต่จะเขียนไปยัง block ใหม่ และ ทำการอัพเดท metadata
ZFS นั้นเรียกว่าเป็นทางเลือกที่ดีมาก ในการใช้งานใน NAS และใช้ NFS ทำงานบนตัวมัน นอกจากนั้นไปใช้งานใน General Parallel File system (GPFS) หรือ Lustre บน ZFS ก็เหมาะมากเช่นกัน สำหรับ OpenStack นั้นสามารถใช้งาน Cinder block storage และ Swift Object Storage บน ZFS ได้
คุณสมบัติหลักของ ZFS
Sanpshots และ Clones
ZFS และ OpenZFS เราเรียกว่าสามารถทำ point-in-time หรือสำเนาของ file system ด้วยความเร็วสูง สำหรับ snapshot นั้นเป็นข้อมูลที่ถูกเปลี่ยนแปลงไม่ได้ แต่ถ้า Clone จะถูกเปลี่ยนแปลงได้ ทั้งสองแบบนั้นถูกใ้งานใน Solaris OS ทำให้ผู้ใช้งานนั้นย้อนเวลากลับไปได้หา snapshot ที่ต้องการ เช่นเมื่อ patch แล้วมีปัญหา หรือ อัพเดทระบบแล้วมีปัญหา
RAID-Z
หลักการนี้ จะทำให้ ผู้ใช้เก็บสำเนาของข้อมูลไปยังหลายๆ สถานที่ ก็เหมือนกับการทำ RAID นั่นเอง เพื่อป้องกันความเสียหาย และ เพิ่มประสิทธิภาพ มันมีหลักการทำงานเช่นเดียวกับ RAID 5 แต่มีการทำงานต่างกันเล็กน้อย
RAID-Z2 และ RAID-Z3
วิธีการนี้ทำงานคล้ายกับ RAID 6 เพราะทนต่อดิสก์เสียได้ 2 ตัว ในขณะที่ RAID-Z3 ทนต่อดิสก์เสียได้ 3 ตัวเลยทีเดียว
Compression
ZFS สนับสนุนการบีบอัดข้อมูลในตัว (in-line)
Deduplication
ทั้ง ZFS และ OpenZFS นั้นสนับสนุนการทำ deduplication inline เพื่อลดความซ้ำซ้อนของข้อมูลบนดิสก์ ในระดับ block
อะไรคือความแตกต่างระหว่าง ZFS (หรืออาจจะเรียกได้ว่า Oracle ZFS) และ OpenZFS
ต้องบอกว่า ZFS และ OpenZFS นั้นเกิดมาจาก source code ตัวเดียวกัน หลังจากแยกกันในปี 2010 ทั้ง Oracle และ ชุมชน opensource ก็ได้ต่างเพิ่มความสามารถเข้าไปใน ZFS ปัจจุบันนี้ หากพูดถึง Oracle ZFS นั้นจะต้องบอกว่า เป็นลิขสิทธิ์ที่ถูกติดตั้งได้บน ฮาร์ดแวร์ของ Oracle เท่านั้น เช่นใน Oracle Solaris และ Oracle ZFS Appliance ในขณะที่ OpenZFS นั้นเป็น Opensource
การใช้งานร่วมกับ Proxmox VE
ZFS นั้นเป็น File system หนึ่งในหลายๆ แบบ ที่ Proxmox VE สนับสนุน ท่านสามารถเลือก ZFS ได้ ในส่วนของการ boot การเก็บ VM ได้เลย กรณีที่ท่านไม่มี dual-boot device และ แน่นอนว่า file system แบบนี้สนับสนุนการทำ snapshot ทำให้ท่านได้รับประโยชน์ในการทำสำเนาข้อมูลได้อย่างเต็มที่
บริษัท AVESTA ให้บริการติดตั้ง จำน่าย Proxmox VE เราเป็นตัวแทนตรง และ ได้รับการไว้วางใจ ให้ติดตั้งกับบริษัทน้อยใหญ่มากมาย สนใจสอบถาม Line OA : @avesta.co.th หรือ Email : [email protected]