อ่าน 3 นาที
เอ็นจิ้นคลัสเตอร์โคโรซิงค์
Corosync Cluster Engine เป็นการ ใช้งาน แบบโอเพนซอร์ส ของ โปรโตคอล Totem Single Ring Ordering and Membership โดยพัฒนามาจากโครงการ OpenAIS และได้รับอนุญาตภายใต้ ใบอนุญาต BSD ใหม่...
เอ็นจิ้นคลัสเตอร์โคโรซิงค์
| เอ็นจิ้นคลัสเตอร์โคโรซิงค์ | |
|---|---|
| นักพัฒนา | ชุมชนนักพัฒนา Corosync |
| ปล่อย | 2008 |
| เวอร์ชันเสถียร | 3.1.10 [ 1 ] |
| เขียนเป็น | ซี |
| ระบบปฏิบัติการ | ข้ามแพลตฟอร์ม |
| พิมพ์ | ระบบการสื่อสารกลุ่ม |
| ใบอนุญาต | ใบอนุญาต BSD ใหม่ |
| เว็บไซต์ | corosync.github.io |
| ที่เก็บข้อมูล |
|
Corosync Cluster Engineเป็นการ ใช้งาน แบบโอเพนซอร์สของโปรโตคอล Totem Single Ring Ordering and Membershipโดยพัฒนามาจากโครงการ OpenAIS และได้รับอนุญาตภายใต้ใบอนุญาต BSD ใหม่ พันธกิจของโครงการ Corosync คือการพัฒนา เผยแพร่ และสนับสนุน คลัสเตอร์ แบบโอเพ น ซอร์สที่กำหนดโดยชุมชน
คุณสมบัติ
Corosync Cluster Engine เป็นระบบสื่อสารแบบกลุ่มที่มีคุณสมบัติเพิ่มเติมสำหรับการใช้งานที่มีความพร้อมใช้งานสูงภายในแอปพลิเคชัน
โครงการนี้มี ฟีเจอร์ Application Programming Interface (API) สี่อย่างที่เขียน ด้วยภาษา C ดังนี้:
- รูปแบบการสื่อสารกลุ่มกระบวนการแบบปิด ที่มีการรับประกัน การซิงโครไนซ์เสมือนสำหรับการสร้างเครื่องสถานะจำลอง
- ตัวจัดการความพร้อมใช้งานแบบง่ายๆ ที่จะรีสตาร์ทกระบวนการทำงานของแอปพลิเคชันเมื่อเกิดความล้มเหลว
- ฐานข้อมูลในหน่วยความจำสำหรับการกำหนดค่าและสถิติซึ่งช่วยให้สามารถตั้งค่า เรียกดู และรับการแจ้งเตือนการเปลี่ยนแปลงของข้อมูลได้
- ระบบ แจ้ง เตือนเมื่อจำนวนผู้เข้าร่วมประชุมครบตามที่กำหนด หรือเมื่อจำนวนผู้เข้าร่วมประชุมไม่ครบตามที่กำหนด
ซอฟต์แวร์นี้ได้รับการออกแบบให้ทำงานบนเครือข่าย UDP/IPและInfiniBand
สถาปัตยกรรม
ซอฟต์แวร์ประกอบด้วยไฟล์ไบนารีสำหรับใช้งาน ซึ่งใช้ โมเดลการสื่อสาร แบบไคลเอ็นต์-เซิร์ฟเวอร์ระหว่างไลบรารีและเอนจินบริการ โมดูลที่สามารถโหลดได้ ซึ่งเรียกว่าเอนจินบริการ จะถูกโหลดเข้าไปใน Corosync Cluster Engine และใช้บริการที่จัดให้โดย API ภายในของ Corosync Service Engine
บริการต่างๆ ที่ให้บริการโดย API ภายในของ Corosync Service Engine มีดังนี้:
- การนำโปรโตคอล Totem Single Ring Ordering and Membership [ 2 ] มาใช้ โดยจัดเตรียมโมเดล Extended Virtual Synchrony [ 3 ]สำหรับการส่งข้อความและการเป็นสมาชิก
- ระบบ IPC หน่วยความจำร่วมประสิทธิภาพสูง coroipc [ 4 ]
- ฐานข้อมูลเชิงวัตถุที่ใช้โมเดลฐานข้อมูลในหน่วยความจำ
- ระบบจะส่งต่อข้อความ IPC และ Totem ไปยังเอนจินบริการที่ถูกต้อง
นอกจากนี้ Corosync ยังมีเอ็นจิ้นบริการเริ่มต้นหลายตัวที่ใช้งานผ่านAPI ภาษา C :
- cpg - กลุ่มกระบวนการปิด
- sam - Simple Availability Manager
- confdb - ฐานข้อมูลการกำหนดค่าและสถิติ
- องค์ประชุม - แจ้งเตือนเมื่อมีหรือไม่มีองค์ประชุมครบ
ประวัติศาสตร์
โครงการนี้ได้รับการประกาศอย่างเป็นทางการในเดือนกรกฎาคม พ.ศ. 2551 ผ่านเอกสารการประชุมที่Ottawa Linux Symposium [ 5 ] ซอร์สโค้ดของOpenAIS ได้รับการปรับปรุงใหม่โดยที่ส่วนประกอบโครงสร้างพื้นฐานหลักถูกนำไปไว้ใน Corosync และ API ของSA Forumยังคงอยู่ใน OpenAIS
ในเวอร์ชันที่สองของ corosync ซึ่งเผยแพร่ในปี 2012 ระบบย่อย quorum ได้รับการเปลี่ยนแปลงและรวมเข้ากับ daemon [ 6 ]เวอร์ชันนี้มีให้ใช้งานตั้งแต่ Fedora 17 และ RHEL7 [ 7 ]
การพัฒนาสาขา Flatiron (1.4.x) สิ้นสุดลงด้วยการเปิดตัวเวอร์ชัน 1.4.10 [ 8 ]สาขา Needle ได้รับการประกาศว่าเสถียรแล้วด้วยการเปิดตัวเวอร์ชัน 2.0.0 เมื่อวันที่ 10 เมษายน 2555 [ 9 ] [ 10 ]การพัฒนาสาขานี้หยุดลงด้วยการเปิดตัวเวอร์ชัน 2.4.6 เมื่อวันที่ 9 พฤศจิกายน 2565 เนื่องจากสาขา 3.x (Camelback) ถือว่าเสถียรแล้วหลังจากทำงานมาเกือบ 4 ปี[ 9 ]
ดูเพิ่มเติม
ลิงก์ภายนอก
- เว็บไซต์อย่างเป็นทางการ
- ไลบรารี C ที่นำกลับมาใช้ใหม่ได้ของ Corosync High Performance Shared Memory IPC
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ เอ็นจิ้นคลัสเตอร์โคโรซิงค์
Corosync Cluster Engine เป็นการ ใช้งาน แบบโอเพนซอร์ส ของ โปรโตคอล Totem Single Ring Ordering and Membership โดยพัฒนามาจากโครงการ OpenAIS และได้รับอนุญาตภายใต้ ใบอนุญาต BSD ใหม่...
คุณสมบัติ
Corosync Cluster Engine เป็น ระบบสื่อสารแบบกลุ่ม ที่มีคุณสมบัติเพิ่มเติมสำหรับการใช้งาน ที่มีความพร้อมใช้งานสูง ภายในแอปพลิเคชัน
สถาปัตยกรรม
ซอฟต์แวร์ประกอบด้วยไฟล์ไบนารีสำหรับใช้งาน ซึ่งใช้ โมเดลการสื่อสาร แบบไคลเอ็นต์-เซิร์ฟเวอร์ ระหว่างไลบรารีและเอนจินบริการ โมดูลที่สามารถโหลดได้ ซึ่งเรียกว่าเอนจินบริการ จะถูกโหลดเข้าไปใน Corosync Cluster Engine และใช้บริการที่จัดให้โดย API ภายในของ Corosync...
ประวัติศาสตร์
โครงการนี้ได้รับการประกาศอย่างเป็นทางการในเดือนกรกฎาคม พ.ศ. 2551 ผ่านเอกสารการประชุมที่ Ottawa Linux Symposium [ 5 ] ซอร์สโค้ด ของOpenAIS ได้ รับการปรับปรุงใหม่ โดยที่ส่วนประกอบโครงสร้างพื้นฐานหลักถูกนำไปไว้ใน Corosync และ API ของ SA Forum ยังคงอยู่ใน OpenAIS