อ่าน 5 นาที
ระบบไฟล์แบบคลัสเตอร์
ระบบไฟล์คลัสเตอร์ ( CFS ) คือระบบไฟล์ที่ใช้ร่วมกันโดยการติดตั้ง พร้อมกัน บนเซิร์ฟเวอร์ หลายเครื่อง มีวิธีการจัดคลัสเตอร์ หลายวิธี ซึ่งส่วนใหญ่ไม่ได้ใช้ระบบไฟล์คลัสเตอร์
ระบบไฟล์แบบคลัสเตอร์
ระบบไฟล์คลัสเตอร์ ( CFS ) คือระบบไฟล์ที่ใช้ร่วมกันโดยการติดตั้ง พร้อมกัน บนเซิร์ฟเวอร์ หลายเครื่อง มีวิธีการจัดคลัสเตอร์ หลายวิธี ซึ่งส่วนใหญ่ไม่ได้ใช้ระบบไฟล์คลัสเตอร์ (มีเพียงที่เก็บข้อมูลแบบเชื่อมต่อโดยตรงสำหรับแต่ละโหนด) ระบบไฟล์คลัสเตอร์สามารถให้คุณสมบัติเช่น การกำหนดแอดเดรสที่ไม่ขึ้นกับตำแหน่ง และความซ้ำซ้อน ซึ่งช่วยปรับปรุงความน่าเชื่อถือหรือลดความซับซ้อนของส่วนอื่นๆ ของคลัสเตอร์ ระบบไฟล์แบบขนานเป็นระบบไฟล์คลัสเตอร์ประเภทหนึ่งที่กระจายข้อมูลไปทั่วโหนดจัดเก็บข้อมูลหลายโหนด โดยปกติเพื่อความซ้ำซ้อนหรือประสิทธิภาพ[ 1 ]
ระบบไฟล์ดิสก์ที่ใช้ร่วมกัน
ระบบไฟล์แบบใช้ดิสก์ร่วมกันใช้เครือข่ายพื้นที่จัดเก็บข้อมูล (SAN) เพื่อให้คอมพิวเตอร์หลายเครื่องสามารถเข้าถึงดิสก์โดยตรงในระดับบล็อกได้ การควบคุมการเข้าถึงและการแปลงจากการทำงานระดับไฟล์ที่แอปพลิเคชันใช้ไปเป็นการทำงานระดับบล็อกที่ใช้โดย SAN จะต้องเกิดขึ้นที่โหนดไคลเอ็นต์ ระบบไฟล์แบบใช้ดิสก์ร่วมกันซึ่งเป็นระบบไฟล์แบบคลัสเตอร์ที่พบได้บ่อยที่สุดนั้น – โดยการเพิ่มกลไกสำหรับการควบคุมการทำงานพร้อมกัน – จะให้มุมมองของระบบไฟล์ ที่สม่ำเสมอและ สามารถเรียงลำดับได้ หลีกเลี่ยงความเสียหายและ การสูญเสียข้อมูล โดยไม่ตั้งใจ แม้ว่าไคลเอ็นต์หลายรายจะพยายามเข้าถึงไฟล์เดียวกันในเวลาเดียวกันก็ตาม ระบบไฟล์แบบใช้ดิสก์ร่วมกันมักใช้กลไกการ ป้องกันบางอย่างเพื่อป้องกันความเสียหายของข้อมูลในกรณีที่โหนดล้มเหลว เนื่องจากอุปกรณ์ที่ไม่มีการป้องกันอาจทำให้ข้อมูลเสียหายได้หากสูญเสียการสื่อสารกับโหนดพี่น้องและพยายามเข้าถึงข้อมูลเดียวกันกับที่โหนดอื่นกำลังเข้าถึงอยู่
เครือข่ายพื้นที่จัดเก็บข้อมูลพื้นฐานอาจใช้โปรโตคอลระดับบล็อกได้หลายประเภท รวมถึงSCSI , iSCSI , HyperSCSI , ATA over Ethernet (AoE), Fibre Channel , อุปกรณ์บล็อกเครือข่ายและInfiniBand
มีแนวทางการออกแบบสถาปัตยกรรมที่แตกต่างกันสำหรับระบบไฟล์ดิสก์ที่ใช้ร่วมกัน บางระบบกระจายข้อมูลไฟล์ไปทั่วเซิร์ฟเวอร์ทั้งหมดในคลัสเตอร์ (กระจายอย่างสมบูรณ์) [ 2 ]
ตัวอย่าง
- ระบบไฟล์คลัสเตอร์บลูเวล (BWFS)
- ระบบไฟล์คลัสเตอร์ ของซิลิคอนกราฟิกส์ (SGI) ( CXFS )
- ระบบไฟล์คลัสเตอร์ Veritas
- Microsoft Cluster Shared Volumes (CSV)
- ระบบไฟล์DataPlow Nasan
- ระบบไฟล์แบบขนานทั่วไปของ IBM (GPFS)
- ระบบไฟล์คลัสเตอร์ Oracle (OCFS)
- ระบบไฟล์OpenVMS Files-11
- โซลูชันการจัดเก็บของ PolyServe
- ระบบไฟล์ Quantum StorNext (SNFS) หรือชื่อเดิม ADIC และ CentraVision File System (CVFS)
- ระบบไฟล์ส่วนกลางของเรดแฮท(GFS2)
- ซันคิวเอฟเอส
- เทคโนโลยี TerraScale TerraFS
- Veritas CFS (Cluster FS: Clustered VxFS)
- Versity VSM (SAM-QFS ที่พอร์ตมาใช้กับ Linux), ScoutFS
- VMware VMFS
- เวก้าเอฟเอส
- แอปเปิลเอ็กซ์ซาน
- ดราก้อนฟลาย บีเอสดีแฮมเมอร์2
ระบบไฟล์แบบกระจาย
ระบบไฟล์แบบกระจายไม่แชร์การเข้าถึงระดับบล็อก ไปยังพื้นที่ จัดเก็บเดียวกัน แต่ใช้โปรโตคอล เครือข่าย [ 3 ] [ 4 ] โดยทั่วไปแล้วระบบเหล่านี้เรียกว่าระบบไฟล์เครือข่าย แม้ว่าจะไม่ใช่ระบบไฟล์เดียวที่ใช้เครือข่ายในการส่งข้อมูลก็ตาม[ 5 ] ระบบไฟล์แบบกระจายสามารถจำกัดการเข้าถึงระบบไฟล์ได้ขึ้นอยู่กับรายการการเข้าถึงหรือความสามารถทั้งบนเซิร์ฟเวอร์และไคลเอ็นต์ ขึ้นอยู่กับการออกแบบโปรโตคอล
ความแตกต่างระหว่างระบบไฟล์แบบกระจายและที่เก็บข้อมูลแบบกระจายคือ ระบบไฟล์แบบกระจายช่วยให้สามารถเข้าถึงไฟล์ได้โดยใช้อินเทอร์เฟซและความหมายเดียวกันกับไฟล์ในเครื่อง เช่น การเมานต์/ยกเลิกการเมานต์ การแสดงรายการไดเร็กทอรี การอ่าน/เขียนที่ขอบเขตไบต์ รูปแบบการอนุญาตดั้งเดิมของระบบ ในทางตรงกันข้าม ที่เก็บข้อมูลแบบกระจายต้องใช้ API หรือไลบรารีที่แตกต่างกัน และมีความหมายที่แตกต่างกัน (ส่วนใหญ่มักจะเป็นความหมายของฐานข้อมูล) [ 6 ]
เป้าหมายการออกแบบ
ระบบไฟล์แบบกระจายอาจมีเป้าหมายเพื่อ "ความโปร่งใส" ในหลายแง่มุม กล่าวคือ มีเป้าหมายที่จะ "มองไม่เห็น" สำหรับโปรแกรมไคลเอ็นต์ ซึ่ง "มองเห็น" ระบบที่คล้ายกับระบบไฟล์ในเครื่อง ในเบื้องหลัง ระบบไฟล์แบบกระจายจะจัดการการค้นหาไฟล์ การขนส่งข้อมูล และอาจมีคุณสมบัติอื่นๆ ที่ระบุไว้ด้านล่าง
- ความโปร่งใสในการเข้าถึง : ลูกค้าไม่ทราบว่ามีการแจกจ่ายไฟล์ และสามารถเข้าถึงไฟล์เหล่านั้นได้เช่นเดียวกับการเข้าถึงไฟล์ในเครื่อง
- ความโปร่งใสของตำแหน่งที่ตั้ง : มีพื้นที่ชื่อที่สอดคล้องกันซึ่งครอบคลุมทั้งไฟล์ในเครื่องและไฟล์บนเซิร์ฟเวอร์ ชื่อไฟล์ไม่ได้บ่งบอกถึงตำแหน่งที่ตั้งของไฟล์นั้น
- ความโปร่งใสในการทำงานพร้อมกัน : ลูกค้าทุกรายจะมองเห็นสถานะของระบบไฟล์ได้เหมือนกัน ซึ่งหมายความว่าหากกระบวนการหนึ่งกำลังแก้ไขไฟล์ กระบวนการอื่นๆ บนระบบเดียวกันหรือระบบระยะไกลที่เข้าถึงไฟล์นั้นจะเห็นการเปลี่ยนแปลงในลักษณะที่สอดคล้องกัน
- ความโปร่งใสเมื่อเกิดความล้มเหลว : ไคลเอนต์และโปรแกรมไคลเอ็นต์ควรทำงานได้อย่างถูกต้องแม้หลังจากเซิร์ฟเวอร์ล้มเหลว
- ความหลากหลาย : ควรให้บริการไฟล์บนแพลตฟอร์มฮาร์ดแวร์และระบบปฏิบัติการที่แตกต่างกัน
- ความสามารถในการปรับขนาด : ระบบไฟล์ควรทำงานได้ดีในสภาพแวดล้อมขนาดเล็ก (เครื่องเดียว หรือหลายสิบเครื่อง) และสามารถปรับขนาดได้อย่างราบรื่นไปยังสภาพแวดล้อมที่ใหญ่ขึ้น (ตั้งแต่หลายร้อยถึงหลายหมื่นระบบ)
- ความโปร่งใสในการจำลองข้อมูล : ลูกค้าไม่ควรต้องรับรู้ถึงการจำลองไฟล์ที่ดำเนินการระหว่างเซิร์ฟเวอร์หลายเครื่องเพื่อรองรับการขยายขนาด
- ความโปร่งใสในการย้ายข้อมูล : ไฟล์ควรสามารถย้ายระหว่างเซิร์ฟเวอร์ต่างๆ ได้โดยที่ลูกค้าไม่รู้ตัว
ประวัติศาสตร์
ระบบแบ่งเวลาใช้งานที่ไม่เข้ากัน ( Incompatible Timesharing System ) ใช้เครื่องเสมือนเพื่อการเข้าถึงระบบไฟล์ระหว่างเครื่องอย่างโปร่งใสในช่วงทศวรรษ 1960 เซิร์ฟเวอร์ไฟล์ได้รับการพัฒนามากขึ้นในช่วงทศวรรษ 1970 ในปี 1976 บริษัท Digital Equipment Corporationได้สร้างFile Access Listener (FAL) ซึ่งเป็นการใช้งานData Access Protocolเป็นส่วนหนึ่งของDECnet Phase II ซึ่งกลายเป็นระบบไฟล์เครือข่ายที่ใช้กันอย่างแพร่หลายเป็นครั้งแรก ในปี 1984 บริษัท Sun Microsystemsได้สร้างระบบไฟล์ที่เรียกว่า " Network File System " (NFS) ซึ่งกลายเป็นระบบไฟล์เครือข่ายที่ใช้Internet Protocol ที่ใช้กันอย่างแพร่หลายเป็นครั้งแรก [ 4 ] ระบบไฟล์เครือข่ายที่โดดเด่นอื่นๆ ได้แก่Andrew File System (AFS), Apple Filing Protocol (AFP), NetWare Core Protocol (NCP) และServer Message Block (SMB) ซึ่งรู้จักกันในชื่อ Common Internet File System (CIFS)
ในปี 1986 IBMประกาศการสนับสนุนไคลเอ็นต์และเซิร์ฟเวอร์สำหรับสถาปัตยกรรมจัดการข้อมูลแบบกระจาย (DDM) สำหรับSystem/36 , System/38และคอมพิวเตอร์เมนเฟรมของ IBM ที่ใช้CICSต่อมาได้มีการสนับสนุนเพิ่มเติมสำหรับคอมพิวเตอร์ส่วนบุคคลของ IBM , AS/400 , คอมพิวเตอร์เมนเฟรมของ IBM ภายใต้ ระบบปฏิบัติการ MVSและVSEและFlexOSนอกจากนี้ DDM ยังเป็นรากฐานของสถาปัตยกรรมฐานข้อมูลเชิงสัมพันธ์แบบกระจาย หรือที่รู้จักกันในชื่อ DRDA อีกด้วย
มีโปรโตคอลเครือข่ายแบบ peer-to-peer จำนวนมาก สำหรับระบบไฟล์แบบกระจายโอเพนซอร์สสำหรับคลาวด์หรือระบบไฟล์คลัสเตอร์แบบปิดซอร์ส เช่น9P , AFS , Coda , CIFS/SMB , DCE /DFS , WekaFS, [ 7 ] Lustre , PanFS, [ 8 ] Google File System , Mnet , Chord Project
ตัวอย่าง
- อัลลูซิโอ
- บีจีเอฟเอส (ฟราวน์โฮเฟอร์)
- CephFS (Inktank, Red Hat, SUSE)
- ระบบไฟล์แบบกระจายของ Windows (DFS) (Microsoft)
- อินฟินิท (ถูกซื้อกิจการโดยด็อกเกอร์)
- จีฟาร์มเอฟเอส
- GlusterFS (Red Hat)
- จีเอฟเอส (บริษัท กูเกิล อิงค์)
- จีพีเอฟเอส (ไอบีเอ็ม)
- HDFS (มูลนิธิซอฟต์แวร์ Apache)
- IPFS (ระบบไฟล์ระหว่างดาวเคราะห์)
- ไอโรดส์
- LizardFS (Skytechnology)
- แวววาว
- MapR FS
- MooseFS (Core Technology / Gemius)
- ObjectiveFS
- วันเอฟเอส (อีเอ็มซี ไอซิโลน)
- OrangeFS (มหาวิทยาลัยเคลมสัน, Omnibond Systems) เดิมชื่อParallel Virtual File System
- แพนเอฟเอส (พานาซาส)
- ระบบไฟล์เสมือนแบบขนาน (มหาวิทยาลัยเคลมสัน, ห้องปฏิบัติการแห่งชาติอาร์กอน, ศูนย์ซูเปอร์คอมพิวเตอร์โอไฮโอ)
- RozoFS (Rozo Systems)
- SMB/CIFS
- โทรัส (CoreOS)
- VaultFS (สวิส วอลท์)
- เวก้าเอฟเอส (เวก้าไอโอ)
- เอ็กซ์ทรีมเอฟเอส
ที่เก็บข้อมูลที่เชื่อมต่อกับเครือข่าย
ระบบจัดเก็บข้อมูลแบบเชื่อมต่อเครือข่าย (NAS) ให้ทั้งพื้นที่จัดเก็บข้อมูลและระบบไฟล์ เหมือนกับระบบไฟล์ดิสก์ที่ใช้ร่วมกันบนเครือข่ายพื้นที่จัดเก็บข้อมูล (SAN) โดยทั่วไป NAS จะใช้โปรโตคอลแบบไฟล์ (ตรงข้ามกับโปรโตคอลแบบบล็อกที่ SAN ใช้) เช่นNFS (นิยมใช้ใน ระบบ UNIX ), SMB/CIFS ( Server Message Block/Common Internet File System ) (ใช้กับระบบ MS Windows), AFP (ใช้กับ คอมพิวเตอร์ Apple Macintosh ) หรือNCP (ใช้กับOESและNovell NetWare )
ข้อควรพิจารณาในการออกแบบ
การหลีกเลี่ยงจุดล้มเหลวเพียงจุดเดียว
ความล้มเหลวของฮาร์ดแวร์ดิสก์หรือโหนดจัดเก็บข้อมูลใดๆ ในคลัสเตอร์ อาจก่อให้เกิดจุดล้มเหลวเพียงจุดเดียวซึ่งส่งผลให้ข้อมูลสูญหายหรือไม่สามารถใช้งานได้การทนต่อความผิดพลาดและความพร้อมใช้งานสูงสามารถทำได้โดยการจำลองข้อมูลในรูปแบบต่างๆ เพื่อให้ข้อมูลยังคงอยู่ครบถ้วนและพร้อมใช้งานแม้ว่าอุปกรณ์ชิ้นใดชิ้นหนึ่งจะล้มเหลวก็ตาม ตัวอย่างเช่น ดูรายการระบบไฟล์แบบกระจายที่ทนต่อความผิดพลาดและ ระบบ ไฟล์ แบบขนานแบบกระจายที่ทนต่อความผิดพลาด
ผลงาน
การวัดประสิทธิภาพ โดยทั่วไปของระบบไฟล์แบบคลัสเตอร์คือปริมาณเวลาที่ใช้ในการตอบสนองคำขอใช้บริการ ในระบบทั่วไป เวลานี้ประกอบด้วยเวลาในการเข้าถึงดิสก์และ เวลาประมวลผล ของ CPU เพียงเล็กน้อย แต่ในระบบไฟล์แบบคลัสเตอร์ การเข้าถึงระยะไกลจะมีค่าใช้จ่ายเพิ่มเติมเนื่องจากโครงสร้างแบบกระจาย ซึ่งรวมถึงเวลาในการส่งคำขอไปยังเซิร์ฟเวอร์ เวลาในการส่งการตอบกลับไปยังไคลเอ็นต์ และสำหรับแต่ละทิศทาง จะมีค่าใช้จ่ายเพิ่มเติมของ CPU ในการเรียกใช้ซอฟต์แวร์โปรโตคอลการสื่อสาร
ความพร้อมกัน
การควบคุมการทำงานพร้อมกันกลายเป็นปัญหาเมื่อมีบุคคลหรือไคลเอนต์มากกว่าหนึ่งรายเข้าถึงไฟล์หรือบล็อกเดียวกันและต้องการอัปเดต ดังนั้นการอัปเดตไฟล์จากไคลเอนต์หนึ่งไม่ควรรบกวนการเข้าถึงและการอัปเดตจากไคลเอนต์อื่น ปัญหานี้มีความซับซ้อนมากขึ้นในระบบไฟล์เนื่องจากการเขียนทับซ้อนกันพร้อมกัน ซึ่งผู้เขียนที่แตกต่างกันเขียนไปยังพื้นที่ทับซ้อนกันของไฟล์พร้อมกัน[ 9 ]ปัญหานี้มักจะได้รับการจัดการโดยการควบคุมการทำงานพร้อมกันหรือการล็อกซึ่งอาจสร้างขึ้นในระบบไฟล์หรือจัดให้โดยโปรโตคอลเสริม
ประวัติศาสตร์
เมนเฟรมของ IBM ในช่วงทศวรรษ 1970 สามารถใช้ดิสก์ทางกายภาพและระบบไฟล์ร่วมกันได้ หากแต่ละเครื่องมีการเชื่อมต่อช่องสัญญาณของตนเองไปยังหน่วยควบคุมของไดรฟ์ ในช่วงทศวรรษ 1980 คลัสเตอร์ TOPS-20และOpenVMSของDigital Equipment Corporation (VAX/ALPHA/IA64) มีระบบไฟล์ดิสก์ที่ใช้ร่วมกัน[ 10 ]
ดูเพิ่มเติม
อ่านเพิ่มเติม
- การจำแนกประเภทของระบบจัดเก็บข้อมูลแบบกระจาย
- การจำแนกประเภทและการสำรวจเกี่ยวกับระบบไฟล์แบบกระจาย
- การสำรวจระบบไฟล์แบบกระจาย
- วิวัฒนาการของระบบไฟล์
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ระบบไฟล์แบบคลัสเตอร์
ระบบไฟล์คลัสเตอร์ ( CFS ) คือระบบไฟล์ที่ใช้ร่วมกันโดยการติดตั้ง พร้อมกัน บนเซิร์ฟเวอร์ หลายเครื่อง มีวิธีการจัดคลัสเตอร์ หลายวิธี ซึ่งส่วนใหญ่ไม่ได้ใช้ระบบไฟล์คลัสเตอร์
ระบบไฟล์ดิสก์ที่ใช้ร่วมกัน
ระบบ ไฟล์แบบใช้ดิสก์ร่วมกัน ใช้ เครือข่ายพื้นที่จัดเก็บข้อมูล (SAN) เพื่อให้คอมพิวเตอร์หลายเครื่องสามารถเข้าถึงดิสก์โดยตรงใน ระดับบล็อก ได้ การควบคุมการเข้าถึงและการแปลงจากการทำงานระดับไฟล์ที่แอปพลิเคชันใช้ไปเป็นการทำงานระดับบล็อกที่ใช้โดย SAN...
ตัวอย่าง
ระบบไฟล์คลัสเตอร์บลูเวล (BWFS) ระบบไฟล์คลัสเตอร์ ของซิลิคอนกราฟิกส์ (SGI) ( CXFS ) ระบบไฟล์คลัสเตอร์ Veritas Microsoft Cluster Shared Volumes (CSV) ระบบไฟล์DataPlow Nasan ระบบไฟล์แบบขนานทั่วไปของ IBM (GPFS) ระบบไฟล์คลัสเตอร์ Oracle (OCFS) ระบบไฟล์ OpenVMS...
ระบบไฟล์แบบกระจาย
ระบบไฟล์แบบกระจาย ไม่แชร์ การเข้าถึงระดับบล็อก ไปยังพื้นที่ จัดเก็บเดียวกัน แต่ใช้ โปรโตคอล เครือข่าย [ 3 ] [ 4 ] โดยทั่วไปแล้วระบบเหล่านี้เรียกว่าระบบไฟล์เครือข่าย แม้ว่าจะไม่ใช่ระบบไฟล์เดียวที่ใช้เครือข่ายในการส่งข้อมูลก็ตาม [ 5 ]...