Latest article
Home >> Storage >> Storage Volumes แบบต่างๆ ของ GlusterFS
Storage Volumes แบบต่างๆ ของ GlusterFS

Storage Volumes แบบต่างๆ ของ GlusterFS

GlusterFS เป็นระบบ distributed strorage ที่เริ่มได้รับความนิยมเพิ่มขึ้นเรื่อยๆ เพราะการทำงานของการ setup ที่เข้าใจง่ายและไม่ซับซ้อน และนอกจากนี้ GlusterFS ยังได้รับความนิยมไปใช้งานควบคู่กับระบบ Cloud ต่างๆ มากมาย

GlusterFS เป็น project ที่ได้รับการสนับสนุนจาก RedHat และทาง RedHat ได้นำ GlusterFS เข้าสู่ผลิตภัณฑ์หนึ่ง ดังนั้นจึงเป็นเครื่องการรันตีได้ในระดับหนึ่งว่า GlusterFS มีประสิทธิภาพการทำงานที่ดี และมีความเสถียรในการทำงานในระดับที่ดี

สำหรับบทความนี้ ผมจะนำเสนอ Storage Volumes แบบต่างๆ ของ GlusterFS เพื่อให้ผู้ที่เริ่มศึกษาเข้าใจถึงรูปแบบการทำงานของระบบในระดับหนึ่ง นอกจากนี้ผมจะพูดถึงข้อดีและข้อเสียต่างๆ ในทัศนะของผู้ใช้งานเองมาให้พิจารณาคร่าวๆด้วย

คำศัพท์ที่ควรรู้
  • Brick คือ storage filesystem ของ OS (ถูก format เรียบร้อยแล้ว) ที่จะถูก assign ไปยัง Volumn
  • Volumn คือ เนื้อที่ที่จะถูกนำไปใช้งาน หรือ สามารถมองเป็น share storage ได้

Storage Volumes แบบต่างๆ ของ GlusterFS

Distributed

Storage Volumes แบบ distributed คือการแยกการจัดเก็บไฟล์ออกไปยังแต่ละ brick โดยการจัดเก็บจะจัดเก็บแบบ 1 ไฟล์ ต่อ 1 brick
ข้อดี

  1. สามารถ access file ต่างๆ จากไปยัง brick ได้โดยตรง (แต่ไม่แนะนำ)
  2. เพิ่มประสิทธิภาพการ write ข้อมูลของระบบ
  3. สามารถแยกโหลดการทำงานได้ในระดับหนึ่ง

ข้อเสีย

  1. ถ้าหากเกิด HDD fail จะไม่สามารถใช้งานข้อมูลใน brick ที่ HDD fail ได้ ดังนั้นถ้าหากต้องการใช้โหมดนี้ควรมี redundance ในระดับ HW ด้วย เพื่อป้องกันเหตุการณ์ดังกล่าว

ภาพการทำงานในโหมด Distributed

Distributed_Volume

Replicated

Storage Volumes แบบ Replicated คือการทำสำเนาไฟล์ต่างๆ ไปยัง brick อื่น เพื่อป้องกันความเสียหายของข้อมูลหากเกิด HW fail โดยการทำงานคือจะทำการสำเนาไฟล์ไปเก็บไว้ทุก brick ที่อยู่ใน replicated volume

ข้อดี

  1. สามารถ access file ต่างๆ จากไปยัง brick ได้โดยตรง (แต่ไม่แนะนำ)
  2. ป้องกันข้อมูลสูญหาย
  3. ป้องกันระบบใช้งานไม่ได้จากเหตุการณ์เครื่อง down
  4. เพิ่มประสิทธภาพการ read ข้อมูลของระบบ ถ้าหาก mount ด้วย gluster client (fuse mode) เพราะ gluster client

ข้อเสีย

  1. เปลืองเนื้อที่ disk
  2. หาก brick ที่เป็น replicated volume เดียวกัน อยู่บน server เครื่องเดียวกัน ก็มีโอกาสข้อมูลสูญหายจากเหตหารณ์ HW fail ได้

ภาพการทำงานในโหมด Replicated

Replicated_Volume

Distributed Replicated

Storage Volumes แบบ Distributed Replicated เป็นการจัดกลุ่ม Replicated ของ Volume (subvolume) ก่อนและนำกลุ่มของ subvolume มาทำ Distributed ต่ออีกทีหนึ่ง
ข้อดี

  1. สามารถ access file ต่างๆ จากไปยัง brick ได้โดยตรง (แต่ไม่แนะนำ)
  2. ป้องกันข้อมูลสูญหาย
  3. ป้องกันระบบใช้งานไม่ได้จากเหตุการณ์เครื่อง down
  4. เพิ่มประสิทธิภาพการ write ข้อมูลของระบบ
  5. เพิ่มประสิทธภาพการ read ข้อมูลของระบบ ถ้าหาก mount ด้วย gluster client (fuse mode) เพราะ gluster client

ข้อเสีย

  1. เปลืองเนื้อที่ disk
  2. หาก brick ที่เป็น replicated volume เดียวกัน อยู่บน server เครื่องเดียวกัน ก็มีโอกาสข้อมูลสูญหายจากเหตการณ์ HW fail ได้

ภาพการทำงานในโหมด Distributed Replicated

Distributed_Replicated_Volume

Striped

Storage Volumes แบบ Striped จะทำการหั่น data จากไฟล์ไปเก็บไว้ที่ brick ต่างๆ ซึ่งการทำงานจะคล้ายกับ Radi 0 นั้นเอง เหมาะกับระบบ high concurrency ที่ต้องการเข้าถึงข้อมูลหลายๆไฟล์
ข้อดี

  1. เพิ่มประสิทธิภาพการ write ข้อมูลของระบบ ได้มากกว่า โหมด Distributed
  2. เพิ่มประสิทธภาพการ read ข้อมูลของระบบ

ข้อเสีย

  1. มีโอกาสข้อมูลสูญหายจากเหตการณ์ HW fail ได้
  2. ไม่สามารถ access ไปยัง brick เพื่อทำการ copy ไฟล์ต่างๆ ในการกู้ข้อมูลได้

ภาพการทำงานในโหมด Striped

Striped_Volume

Distributed Striped

Storage Volumes แบบ Distributed Striped คือการจัดกลุ่ม Replicated ของ Volume (subvolume) ก่อนและนำกลุ่มของ subvolume มาทำ Striped ต่ออีกทีหนึ่ง ซึ่งเหมาะกับระบบ high concurrency ที่ต้องการเข้าถึงข้อมูลหลายๆไฟล์ และต้องการ performance สูงๆ
ข้อดี

  1. เพิ่มประสิทธิภาพการ write ข้อมูลของระบบ ได้มากกว่า โหมด Distributed
  2. เพิ่มประสิทธภาพการ read ข้อมูลของระบบได้มากกว่าโหมด Striped

ข้อเสีย

  1. มีโอกาสข้อมูลสูญหายจากเหตการณ์ HW fail ได้
  2. ไม่สามารถ access ไปยัง brick เพื่อทำการ copy ไฟล์ต่างๆ ในการกู้ข้อมูลได้

ภาพการทำงานในโหมด Distributed Striped

Striped_Replicated_Volume

The following two tabs change content below.
Error: Unable to create directory wp-content/uploads/2018/12. Is its parent directory writable by the server?
I'm interested in: Database: MySQL and MariaDB, WebScaleSQL, SQL Tuning, Database sharding Search engine: Elasticsearch Web: Apache tuning, web optimization and SEO Platform: log platform
Error: Unable to create directory wp-content/uploads/2018/12. Is its parent directory writable by the server?
Facebook Iconfacebook like buttonTwitter Icontwitter follow button
Copy Protected by Chetan's WP-Copyprotect.