Score:0

นามธรรมความพร้อมใช้งานสูงทั่วไปสำหรับแอปพลิเคชันเป็นไปได้หรือไม่

ธง in
Rob

ขณะนี้ฉันกำลังตรวจสอบความเป็นไปได้ที่จะทำให้แอปพลิเคชันเซิร์ฟเวอร์ที่มีอยู่ของเราพร้อมใช้งานสูง ซอฟต์แวร์จัดการกับข้อความที่มาจาก UDP resp โปรโตคอลเฉพาะของรถไฟในระดับที่สูงขึ้น

มีวิธี (กรอบหรือคล้ายกัน) ในการสร้างเลเยอร์นามธรรมที่ดูแลความซ้ำซ้อนและความล้มเหลวหรือไม่? ฉันกำลังนึกถึงบางสิ่งที่เทียบเท่ากับคอนโทรลเลอร์ RAID ที่มีการมิเรอร์ แต่ไม่ใช่สำหรับพื้นที่เก็บข้อมูลเท่านั้น แต่สำหรับทั้งระบบ จาก "ภายนอก" คุณจะเห็นเพียงระบบเดียวที่มีอินเทอร์เฟซเครือข่าย ภายในมีระบบสองระบบหรือมากกว่าที่ทำงานคู่ขนานกัน และชั้นนามธรรมจะดูแลทุกอย่าง เช่น ซิงโครไนซ์สถานะแอปพลิเคชันระหว่างเครื่องสำรอง คุณติดตั้งซอฟต์แวร์ของคุณที่ส่วนท้ายของ blackbox สาธารณะ และทุกอย่างภายในจะถูกมิเรอร์โดยอัตโนมัติ เมื่อเครื่องหนึ่งเสียชีวิต อีกเครื่องหนึ่งจะเข้าควบคุมทันทีโดยไม่ตัดการเชื่อมต่อเนื่องจากอยู่ในสถานะเดียวกันอยู่แล้ว

มีวิธีแก้ปัญหาทั่วไปสำหรับสิ่งนี้หรือไม่? หรือเราต้องดำเนินการด้วยตนเองในแอปพลิเคชันของเรา

Zac67 avatar
ru flag
ไม่มีวิธีแก้ปัญหาเดียวสำหรับเรื่องนี้ การทำสำเนาเว็บเซิร์ฟเวอร์การส่งเนื้อหานั้นไม่ใช่เรื่องยาก HA จะทำคลัสเตอร์ฐานข้อมูล + เซิร์ฟเวอร์แอปพลิเคชันมากกว่านั้น โดยเฉพาะอย่างยิ่งเมื่อยังไม่มีการออกแบบคำถามของคุณจะต้องลงรายละเอียดมากขึ้นเพื่อให้ได้คำตอบที่เป็นประโยชน์จริงๆ: ระบบปฏิบัติการ, ระบบจัดเก็บข้อมูล, วิธีการจัดเก็บข้อมูล (db, ไฟล์แฟลต, ตามธุรกรรม, ...), โปรโตคอลเครือข่ายที่ใช้งานอยู่, ความล่าช้าสูงสุดเมื่อเกิดข้อผิดพลาด, สูงสุดที่ยอมรับได้ การสูญหายของข้อมูล, มีการใช้ virtualization แล้วหรือไม่, โครงสร้างพื้นฐานใดที่สามารถใช้ได้, ...
Score:1
ธง nr

Pacemaker, Corosync และ DRBD เป็นโครงการ Linux ที่ให้บริการ "Open Cluster Framework" (OCF) สำหรับสร้างบริการ Linux ทั่วไป HA

โดยทั่วไปแล้ว DRBD จะจำลองพื้นที่จัดเก็บข้อมูลพร้อมกัน (ที่ระดับบล็อก) ในขณะที่ Corosync และ Pacemaker จะจัดการว่าโหนดใดกำลังเรียกใช้บริการใดในคลัสเตอร์ บริการต่างๆ สามารถควบคุมได้ผ่าน OCF resource-agent (เชลล์สคริปต์ที่มีโค้ดและฟังก์ชันการออกมาตรฐาน) หรือผ่านสคริปต์ systemd/upstart/sysv-init ของบริการ นอกจากนี้ยังมีตัวแทน "อะไรก็ได้" ทั่วไปที่สามารถวางไข่และตรวจสอบกระบวนการในคลัสเตอร์ได้ แต่ฉันจะใช้สิ่งเหล่านี้เฉพาะเมื่อคุณรู้สึกขี้เกียจจริงๆ เนื่องจากไม่แข็งแรง

หนึ่งในวิธีที่ง่ายที่สุดและโปร่งใสที่สุดในการบรรลุ HA ทั่วไปคือการใช้ Pacemaker และ DRBD เพื่อสร้างคลัสเตอร์ KVM โดยที่ VM มีการกำหนดค่าแอปพลิเคชันของคุณและเริ่มต้นเมื่อบูตเครื่อง และ Pacemaker/DRBD จะจัดการกับคลัสเตอร์ที่อยู่ด้านล่าง (บนไฮเปอร์ไวเซอร์)

มีแหล่งข้อมูลออนไลน์มากมายที่อธิบายขั้นตอนโดยละเอียดหากคุณใช้ Google ไปทั่ว แต่ LINBIT มีคำแนะนำด้านเทคนิค (ด้านหลังซอฟต์วอลล์) ที่จะอธิบายขั้นตอนการตั้งค่านี้: https://linbit.com/tech-guide/drbd9-kvm-rhel8/

อ้างอิงเพิ่มเติม:
ดีอาร์บีดี: https://linbit.com/
เครื่องกระตุ้นหัวใจ/โคโรซิงค์: https://clusterlabs.org/

Rob avatar
in flag
Rob
ขอบคุณ แมตต์! ฟังดูมีความหวัง ฉันจะดูให้ละเอียดกว่านี้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา