RADOS: An Introduction
RADOS หรือ Reliable Autonomic Distributed Object Store เป็นองค์ประกอบที่สำคัญมาก และมีความสามารถที่น่าสนใจในระบบ Ceph Storage ที่ช่วยให้องค์กรต่างๆ สามารถมีระบบ storage ขนาดใหญ่เป็นของตนเองได้ในราคาที่ไม่แพง และนอกจากนี้ ส่วนนี้ยังถือเป็นแก่นกลางของระบบ Ceph Storage อีกด้วย สำหรับผู้ที่สนใจว่า Ceph Storage คืออะไร สามารถติดตามอ่านได้ที่ แนะนำ Ceph Storage – distributed storage รูปแบบใหม่ที่น่าสนใจสำหรับองค์กร ครับ
สำหรับองค์กรที่ใช้ distributed storage cluster อยู่ในขณะนี้ คงเคยประสบปัญหากับการบริหารจัดการ ดูแลรักษา หรือแก้ปัญหาที่เกิดขึ้นกับ node หรือ เครื่อง ต่างๆ ใน cluster เพราะเหตุที่ใน cluster ประกอบไปด้วย node จำนวนมาก ทำให้การดูแลรักษา และแก้ไขปัญหา node ที่อยู่กันอย่างกระจัดกระจาย ทำได้ลำบากหรือไม่มีประสิทธิภาพเท่าที่ควร นอกจากนี้ ใน storage ระดับ petabyte (PB) ที่มีจำนวน node มากถึงระดับ ร้อยๆ หรือถึงแม้กระทั่ง พันๆ node จึงอาจทำให้เป็นไปไม่ได้เลยที่ system administrator หรือ ผู้ดูแลระบบ จะคอยเฝ้าดูแลสถานะและแก้ไขปัญหาที่เกิดขึ้นกับแต่ละ node ใน cluster ได้ ดังนั้นจึงเป็นเหตุให้การดูแล distributed storage cluster ขนาดใหญ่ทั่วไป ทำได้อย่างยากลำบาก ขาดประสิทธิภาพ และใช้ค่าใช้จ่ายสูง จนทำให้ storage แบบนี้แพงเกินความสามารถขององค์กรทั่วไป
Ceph Storage ซึ่งก็เป็นหนึ่งใน distributed storage cluster นั้น ถูกออกแบบมาเพื่อแก้ปัญหานี้โดยเฉพาะ โดยทางทีมผู้พัฒนา Ceph Storage ได้เล็งเห็นถึงปัญหาในการจัดการ cluster ที่มีขนาดใหญ่ระดับ petabyte นี้ และได้ออกแบบ RADOS ขึ้นมา โดยมีแนวคิดหลักว่า ในเมื่อ cluster ประกอบไปด้วย node จำนวนมาก เพื่อให้การบริหารจัดการรวมถึงการซ่อมแซมบำรุงรักษา cluster เป็นไปอย่างมีประสิทธิภาพมากขึ้น RADOS จึงใช้ประโยชน์จาก “device intelligence” ของ node ใน cluster ทั้งหมด หรือกล่าวอีกอย่างหนึ่งคือ RADOS นั้นประกอบไปด้วย node ที่สามารบริหารจัดการ ตรวจหาปัญหา และแก้ไขปัญหาที่เกิดขึ้นภายใน cluster ได้ด้วยตนเอง จึงช่วยทำให้การบริหารจัดการระบบ storage ทำได้ง่ายและมีประสิทธิภาพขึ้นเป็นอย่างมาก และไม่จำเป็นต้องใช้ system administrator เป็นจำนวนมากแต่อย่างใด
นอกจากเรื่องความสามารถแล้ว หน้าที่ของ RADOS ก็น่าสนใจเช่นเดียวกัน กล่าวคือ RADOS นั้นทำหน้าที่ที่สำคัญมากใน Ceph Storage อันได้แก่ การจัดการและเก็บรักษาข้อมูลให้ปลอดภัยและเข้าถึงได้อยู่เสมอ ซึ่งในความจริงแล้วก็คือหน้าที่หลักของ Ceph Storage นั่นเอง ทำให้ RADOS นั้นจัดได้ว่าเป็นหัวใจสำคัญของ Ceph Storage เลยก็ว่าได้ หากว่าปราศจาก RADOS ไป ย่อมเป็นไปไม่ได้ที่ Ceph Storage จะทำหน้าที่เป็น storage ได้ และเหตุที่ RADOS สามารถรักษาข้อมูลให้ปลอดภัยจากการล้มเหลวของระบบ หรือ node ใน cluster ได้นั้น เพราะมีการทำ data replication (ทำสำเนาข้อมูล) หรือ erasure coding (เข้ารหัสข้อมูลให้ทนทานต่อการลบ) กับข้อมูลที่เก็บใน RADOS และเมื่อผนวกรวมกับการกระจายข้อมูลอย่างชาญฉลาด ทำให้มั่นใจได้ว่า ข้อมูลที่เก็บอยู่ใน Ceph Storage นั้นปลอดภัย
ภาพด้านบนแสดงถึงโครงสร้างภายในของ RADOS โดยจากภาพสังเกตได้ว่า RADOS เป็น cluster ที่ประกอบไปด้วย node 3 ประเภทด้วยกัน ได้แก่ Monitor node ที่ถูกแทนด้วยกล่องสีเทาเข้มที่มีตัวอักษร “M” อยู่ด้านใน, OSD (Object Storage Device) node ที่ถูกแทนด้วยกล่องสีฟ้าที่มีกล่องสีแดงอยู่ด้านใน และสุดท้ายคือ MDS (Metadata server) node ที่ถูกแทนด้วยกล่องสีเทาอ่อนที่มีรูปกราฟอยู่ด้านใน โดย node แต่ละประเภทมีหน้าที่รับผิดชอบที่แตกต่างกัน เช่น Monitor node ทำหน้าที่ดูแลแผนผังของส่วนประกอบต่างๆ ใน RADOS cluster หรือ OSD node ทำหน้าที่เก็บ ดูแล และรักษาข้อมูลให้ปลอดภัยและสามารถเรียกใช้งานได้เสมอ เป็นต้น
ด้วยการทำงานร่วมกันของ node แต่ละประเภทภายใน cluster ที่มีความสามารถและคุณสมบัติที่แตกต่างกันนี้เอง ทำให้ RADOS cluster มีความสามารถในการดูแลตัวเอง ทั้งในการบริหารจัดการแต่ละ node การจัดวางข้อมูล การตรวจหาปัญหาในแต่ละ node และการแก้ไขปัญหาที่เกิดขึ้นใน RADOS cluster ด้วยตนเอง
สำหรับในบทความตอนต่อไป ผมจะอธิบายลงรายละเอียดเกี่ยวกับคุณสมบัติ ความสามารถ และหน้าที่ของ node แต่ละประเภทให้ได้ทราบกันนะครับว่าทำไมจึงทำให้ RADOS เป็น petabyte-scale intelligent distributed storage cluster ได้ครับ
สามารถอ่านบทความตอนต่อไปได้ที่นี่ครับ
- Part II: RADOS: Monitor Node
- Part III: RADOS: OSD Node
เกี่ยวกับ Throughwave Thailand
Throughwave Thailand เป็นตัวแทนจำหน่าย (Distributor) สำหรับผลิตภัณฑ์ Enterprise IT ครบวงจรทั้ง Server, Storage, Network และ Security พร้อมโซลูชัน VMware และ Microsoft ที่มีลูกค้าเป็นองค์กรชั้นนำระดับหลายหมื่นผู้ใช้งานมากมาย โดยทีมงาน Throughwave Thailand ได้รับความไว้วางใจจากลูกค้าจากทีมงาน Engineer มากประสบการณ์ ที่คอยสนับสนุนการใช้งานของลูกค้าตลอด 24×7 ร่วมกับ Partner ต่างๆ ทั่วประเทศไทยนั่นเอง https://www.throughwave.co.th