อ่าน 3 นาที
โอเพ่นเอสไอ
OpenSSIเป็น ระบบ คลัสเตอร์รูปภาพระบบเดียวแบบโอเพนซอร์ส ช่วยให้สามารถจัดการกลุ่มคอมพิวเตอร์เสมือนเป็นระบบขนาดใหญ่ระบบเดียว
โอเพ่นเอสไอ
| โอเพ่นเอสไอ | |
|---|---|
![]() | |
| นักพัฒนา | ทีม OpenSSI [ 1 ] |
| เวอร์ชันเสถียร | 1.9.3 [ 1 ] / 1 กันยายน 2550 |
| รุ่นทดลองใช้งาน | 1.9.6 [ 1 ] / 18 กุมภาพันธ์ 2553 |
| ระบบปฏิบัติการ | ลินุกซ์ |
| พิมพ์ | ซอฟต์แวร์คลัสเตอร์ |
| ใบอนุญาต | จีพีแอล เวอร์ชัน 2 |
| เว็บไซต์ | https://openssi.org (archive.org) |
OpenSSIเป็น ระบบ คลัสเตอร์รูปภาพระบบเดียวแบบโอเพนซอร์ส ช่วยให้สามารถจัดการกลุ่มคอมพิวเตอร์เสมือนเป็นระบบขนาดใหญ่ระบบเดียว ทำให้แอปพลิเคชันที่ทำงานบนเครื่องใดเครื่องหนึ่งสามารถเข้าถึงทรัพยากรของเครื่องทั้งหมดในคลัสเตอร์ได้[ 2 ] [ 3 ]
OpenSSI มีพื้นฐานมาจากระบบปฏิบัติการLinux และถูกปล่อยออกมาเป็นโครงการโอเพนซอร์สโดยCompaqในปี 2544 [ 4 ] ถือเป็นขั้นตอนสุดท้ายของกระบวนการพัฒนาที่ยาวนาน ซึ่งย้อนกลับไปถึงLOCUSที่พัฒนาขึ้นในช่วงต้นทศวรรษ 1980
คำอธิบาย
OpenSSI ช่วยให้สามารถจัดการคลัสเตอร์ของคอมพิวเตอร์แต่ละเครื่อง ( โหนด ) ได้เสมือนเป็นระบบขนาดใหญ่ระบบเดียว กระบวนการที่ทำงานบนโหนดใดๆ ก็สามารถเข้าถึงทรัพยากรของทุกโหนดได้อย่างเต็มที่ และสามารถย้ายกระบวนการจากโหนดหนึ่งไปยังอีกโหนดหนึ่งได้โดยอัตโนมัติเพื่อปรับสมดุลการใช้งานระบบ การเชื่อมต่อเครือข่ายขาเข้าสามารถกำหนดเส้นทางไปยังโหนดที่มีภาระงานน้อยที่สุดได้
OpenSSI ถูกออกแบบมาเพื่อใช้กับ คลัสเตอร์ที่ มีประสิทธิภาพสูงและมีความพร้อมใช้งานสูงสามารถสร้างคลัสเตอร์ OpenSSI โดยไม่มีจุดล้มเหลวเพียงจุดเดียวได้ตัวอย่างเช่น ระบบไฟล์สามารถทำมิเรอร์ระหว่างสองโหนดได้ ดังนั้นหากโหนดใดโหนดหนึ่งล่ม กระบวนการที่เข้าถึงไฟล์ก็จะสลับไปทำงานบนโหนดอื่น หรืออีกทางเลือกหนึ่งคือ สามารถออกแบบคลัสเตอร์ให้ทุกโหนดสามารถเข้าถึงระบบไฟล์ได้โดยตรง
คุณสมบัติ
พื้นที่กระบวนการเดียว
OpenSSI ให้พื้นที่กระบวนการเดียว – ทุกกระบวนการสามารถมองเห็นได้จากทุกโหนด และสามารถจัดการได้จากทุกโหนดโดยใช้คำสั่ง Linux ทั่วไป (ps, kill, renice และอื่นๆ) ระบบไฟล์เสมือน /proc ของ Linux แสดงกระบวนการที่กำลังทำงานทั้งหมดบนทุกโหนด
การนำพื้นที่กระบวนการเดียวมาใช้งานนั้น ทำได้โดยใช้ แนวคิดนามธรรม VPROC ที่ Locusคิดค้นขึ้นสำหรับระบบปฏิบัติการ OSF/1 AD
การย้ายถิ่นฐาน
OpenSSI อนุญาตให้ย้ายกระบวนการที่กำลังทำงานอยู่ระหว่างโหนดต่างๆ เมื่อย้ายกระบวนการที่กำลังทำงานแล้ว กระบวนการเหล่านั้นจะยังคงสามารถเข้าถึงไฟล์ที่เปิดอยู่ วัตถุ IPC หรือการเชื่อมต่อเครือข่ายได้ต่อไป
สามารถย้ายกระบวนการด้วยตนเองได้โดยกระบวนการจะเรียกใช้ระบบ OpenSSI migrate(2) พิเศษ หรือเขียนหมายเลขโหนดลงในไฟล์พิเศษในไดเร็กทอรี /proc ของกระบวนการ
นอกจากนี้ หากผู้ใช้ต้องการ กระบวนการต่างๆ อาจถูกย้ายโดยอัตโนมัติเพื่อกระจายภาระงานให้สมดุลทั่วทั้งคลัสเตอร์ OpenSSI ใช้อัลกอริธึมที่พัฒนาโดย โครงการ MOSIXในการกำหนดภาระงานบนแต่ละโหนด
รากเดียว
OpenSSI ให้รูทเดียวสำหรับคลัสเตอร์ กล่าวคือ จากโหนดใดๆ ก็สามารถเข้าถึงไฟล์และไดเร็กทอรีเดียวกันได้ OpenSSI ใช้กลไกหลายอย่างเพื่อให้ได้รูทเดียว ได้แก่ CFS (OpenSSI Cluster File System), ระบบไฟล์คลัสเตอร์ SAN และการเมานต์แบบขนานของระบบไฟล์เครือข่าย
OpenSSI ใช้คุณสมบัติ Context Dependent Symbolic Link (CDSL) ซึ่งได้รับแรงบันดาลใจจาก ระบบ TruCluster ของ HP เพื่ออนุญาตให้เข้าถึงไฟล์เฉพาะโหนดในลักษณะที่โปร่งใสสำหรับแอปพลิเคชันที่ไม่รองรับคลัสเตอร์ CDSL อาจชี้ไปยังไฟล์ที่แตกต่างกันในแต่ละโหนดในคลัสเตอร์
ซีเอฟเอส
CFS หรือ OpenSSI Cluster File System ช่วยให้สามารถเข้าถึง ระบบไฟล์ จริง ที่อยู่เบื้องหลัง บนโหนดหนึ่ง ได้อย่างโปร่งใสระหว่างโหนดต่างๆ
CFS ซ้อนทับอยู่บนระบบไฟล์จริงและประสานการเข้าถึงจากโหนดต่างๆ โดยใช้ กลไก โทเค็น โหนดหนึ่งมีสิทธิ์เข้าถึงระบบไฟล์พื้นฐานทางกายภาพและดำเนินการอ่านและเขียนทั้งหมด ในเวลาใดเวลาหนึ่งจะมีโหนดหนึ่งเป็นเจ้าของโทเค็น ซึ่งแสดงถึงส่วนหนึ่งของไฟล์พื้นฐาน นั่นหมายความว่าส่วนนั้นของไฟล์อยู่ในแคชของโหนดที่เป็นเจ้าของ หากโหนดอื่นพยายามเข้าถึงส่วนนั้นของไฟล์ โทเค็นจะถูกขโมยและเนื้อหาแคชจะถูกคัดลอกไปยังโหนดที่ขโมย การใช้งาน CFS ของ OpenSSI คล้ายคลึงกับที่ใช้โดยHP TruCluster อย่าง มาก [ 5 ]
นอกจากนี้ CFS ยังใช้ในการประสานการเข้าถึงส่วนของหน่วยความจำที่ใช้ร่วมกันอีกด้วย
CFS สามารถใช้งานในระบบที่ทนต่อความผิดพลาดได้โดยใช้ระบบย่อยดิสก์ที่ใช้ร่วมกัน ( SCSI แบบพอร์ตคู่ หรือSAN ) หรือโดยใช้DRBDหากโหนดที่กำลังเข้าถึงระบบไฟล์โดยตรงเกิดขัดข้อง การเมานต์ CFS จะ สลับไปยังโหนดอื่นที่เชื่อมต่อกับดิสก์โดยตรง และคลัสเตอร์จะเข้าถึงระบบไฟล์ผ่านโหนดนั้นแทน
ระบบไฟล์คลัสเตอร์ SAN
OpenSSI สามารถใช้ระบบไฟล์คลัสเตอร์แบบSANสำหรับรูทได้ หากระบบไฟล์เหล่านั้นมีอินเทอร์เฟซระบบไฟล์ที่เข้ากันได้กับPOSIX ระบบไฟล์ LustreและGlobal File Systemก็ได้รับการทดสอบแล้วเช่นกัน
ในระบบไฟล์แบบคลัสเตอร์ แต่ละโหนดจะเชื่อมต่อระบบไฟล์แบบขนาน และการเข้าถึงไฟล์จะทำได้โดยตรงจากโหนดไปยังระบบไฟล์
เอ็นเอฟเอส
OpenSSI จะทำการเมานต์ ระบบไฟล์ NFSแบบขนานบนแต่ละโหนด โดยแต่ละโหนดจะเข้าถึงเซิร์ฟเวอร์ NFS โดยตรง
พื้นที่ I/O เดี่ยว
OpenSSI ให้การเข้าถึงอุปกรณ์ I/O ทั้งหมดในระบบทั่วทั้งคลัสเตอร์ แต่ก็มีข้อจำกัดบางประการ เช่น โหนดหนึ่งไม่สามารถเมานต์อุปกรณ์บล็อกจากโหนดอื่นได้
โปรแกรม จัดการอุปกรณ์ udevใช้สำหรับจัดการไดเร็กทอรี /dev แต่ละโหนดจะรันสำเนาของ udev เพื่อสร้างโหนดอุปกรณ์ที่เหมาะสมในไดเร็กทอรีย่อยของ /dev เช่น /dev/1 สำหรับโหนดที่ 1, /dev/2 สำหรับโหนดที่ 2 และอื่นๆ
พื้นที่ IPC เดี่ยว
OpenSSI ให้การเข้าถึงระหว่างโหนดไปยังกลไกการสื่อสารระหว่างกระบวนการมาตรฐานของ Linux ทั้งหมด ได้แก่หน่วยความจำที่ใช้ร่วมกันเซมาฟอร์คิวข้อความSYSV ท่อและซ็อกเก็ตโดเมน Unix
เพื่อให้สามารถใช้งานหน่วยความจำร่วมกันแบบกระจาย ทั่วทั้งคลัสเตอร์ได้ OpenSSI จึงใช้ระบบ โทเค็น CFS ในแต่ละช่วงเวลา ส่วนของหน่วยความจำอาจสามารถอ่านได้โดยโหนดหนึ่งหรือหลายโหนด หรือเขียนได้โดยโหนดเดียวเท่านั้น หากโหนดที่ไม่มีสิทธิ์เขียนพยายามเขียนลงไป ส่วนนั้นจะถูกทำเครื่องหมายว่าอ่านไม่ได้บนโหนดอื่นๆ ทั้งหมด และสามารถเขียนได้บนโหนดปัจจุบัน หากโหนดที่ไม่มีสิทธิ์อ่านพยายามอ่านส่วนนั้น ค่าปัจจุบันจะถูกคัดลอกจากโหนดที่ค่าดังกล่าวถูกต้อง และหากค่าดังกล่าวสามารถเขียนได้ ก็จะถูกทำเครื่องหมายว่าอ่านได้
ที่อยู่ IP ของคลัสเตอร์
OpenSSI ใช้LVS เพื่อให้ บริการIPที่ทนต่อความผิดพลาดและมีการกระจายโหลดอย่างสมดุล การเชื่อมต่อเครือข่ายขาเข้าจะถูกรับโดยโหนด ตัวกลาง (Director node) ซึ่งจะส่งต่อไปยังโหนดเซิร์ฟเวอร์ (Server node) ที่มีภาระงานน้อยที่สุด (โหนดหนึ่งอาจทำหน้าที่ทั้งเป็นตัวกลางและเซิร์ฟเวอร์) ในกรณีที่โหนดตัวกลางล้มเหลว โหนดตัวกลางอื่นจะเข้ามารับช่วงต่อ และระบบจะยังคงรับการเชื่อมต่อขาเข้าต่อไป
การแจกจ่าย
ซอฟต์แวร์ OpenSSI สามารถใช้งานได้กับระบบปฏิบัติการ Linux หลายรุ่น เคอร์เนลของ OpenSSI นั้นไม่ขึ้นกับระบบปฏิบัติการใดๆ แต่ระบบ ระดับผู้ใช้ของ Linux ที่เฉพาะเจาะจงกับระบบปฏิบัติการแต่ละรุ่นจำเป็นต้องได้รับการแก้ไข เช่น กระบวนการ initและสคริปต์ การเริ่มต้นระบบ
ในปี 2010 ระบบปฏิบัติการ Linux ที่ได้รับการสนับสนุนล่าสุดมีดังนี้:
ตั้งแต่ปี 2008 มีการดำเนินการเพื่อพอร์ต OpenSSI ไปยังการแจกจ่าย Debian Etch และ Lenny [ 6 ]
ประวัติศาสตร์
จุดกำเนิดของOpenSSIย้อนกลับไปในช่วงต้นทศวรรษ 1980 เมื่อระบบปฏิบัติการแบบกระจายศูนย์LOCUS ถูกพัฒนาขึ้นที่UCLAกลุ่มที่สร้าง "LOCUS" ได้ก่อตั้งบริษัทLocus Computing Corporationในปี 1982 และผลิตเทคโนโลยีเวอร์ชันต่างๆ ที่พัฒนาต่อยอดมาจากระบบดังกล่าวภายใต้ชื่อต่างๆ ในช่วงกลางทศวรรษ 1990 ผลงานนี้ได้พัฒนาจนกลายเป็นผลิตภัณฑ์UnixWare NonStop Clusters ที่ Tandem Computersซึ่งในปี 1995 ได้เข้าซื้อกิจการทีมงานของ Locus CC เดิมและสิทธิ์ในเทคโนโลยีดัง กล่าว ต่อมา Compaqได้เข้าซื้อ Tandem Computers ในปี 1997 NonStop Clustersถูกนำไปจำหน่ายโดยSanta Cruz Operationในฐานะส่วนเสริมสำหรับ UnixWare เมื่อSCO Groupหยุดจำหน่ายผลิตภัณฑ์ นักพัฒนา (ที่เข้ามาจากการเข้าซื้อกิจการของ Tandem และปัจจุบันทำงานอยู่ที่ Compaq) ได้พอร์ตโค้ด "NonStop Clusters" ไปยังLinuxและในปี 2001 ได้เปลี่ยนชื่อเป็นOpenSSIและเผยแพร่เป็นโอเพนซอร์ส พนักงานยังคงพัฒนาซอฟต์แวร์ต่อไปอีกระยะหนึ่งหลังจากที่บริษัท Compaq ถูกซื้อกิจการโดยHewlett-Packard (ซึ่งเกิดขึ้นในปี 2002) ในช่วงทศวรรษต่อมา OpenSSI ได้รับการปรับปรุงเพิ่มเติมโดยผู้ร่วมพัฒนาอิสระหลายราย
ดูเพิ่มเติม
ลิงก์ภายนอก
- หน้าแรกของ OpenSSI (archive.org)
- หน้าสรุปโครงการ Sourceforge.net
- โครงการโครงสร้างพื้นฐานคลัสเตอร์
- หน้าแรกของ OpenSSI Webview
- ป๊อปคอร์น ลินุกซ์
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ โอเพ่นเอสไอ
OpenSSIเป็น ระบบ คลัสเตอร์รูปภาพระบบเดียวแบบโอเพนซอร์ส ช่วยให้สามารถจัดการกลุ่มคอมพิวเตอร์เสมือนเป็นระบบขนาดใหญ่ระบบเดียว
คำอธิบาย
OpenSSI ช่วยให้สามารถจัดการคลัสเตอร์ของคอมพิวเตอร์แต่ละเครื่อง ( โหนด ) ได้เสมือนเป็นระบบขนาดใหญ่ระบบเดียว กระบวนการที่ทำงานบนโหนดใดๆ ก็สามารถเข้าถึงทรัพยากรของทุกโหนดได้อย่างเต็มที่...
พื้นที่กระบวนการเดียว
OpenSSI ให้พื้นที่กระบวนการเดียว – ทุกกระบวนการสามารถมองเห็นได้จากทุกโหนด และสามารถจัดการได้จากทุกโหนดโดยใช้คำสั่ง Linux ทั่วไป (ps, kill, renice และอื่นๆ) ระบบไฟล์เสมือน /proc ของ Linux แสดงกระบวนการที่กำลังทำงานทั้งหมดบนทุกโหนด
การย้ายถิ่นฐาน
OpenSSI อนุญาตให้ย้ายกระบวนการที่กำลังทำงานอยู่ระหว่างโหนดต่างๆ เมื่อย้ายกระบวนการที่กำลังทำงานแล้ว กระบวนการเหล่านั้นจะยังคงสามารถเข้าถึงไฟล์ที่เปิดอยู่ วัตถุ IPC หรือการเชื่อมต่อเครือข่ายได้ต่อไป
