ในบทความที่ผ่านมา เราเริ่มพูดถึง Proxmox VE คืออะไรและทำงานอย่างไร วันนี้เราจะพูดถึงวิธีที่คุณสามารถใช้ความเป็นไปได้ของการรวมกลุ่มและแสดงให้เห็นว่ามันให้ประโยชน์อะไรบ้าง
คลัสเตอร์คืออะไรและเหตุใดจึงมีความจำเป็น? คลัสเตอร์ (จากคลัสเตอร์ภาษาอังกฤษ) คือกลุ่มเซิร์ฟเวอร์ที่รวมเป็นหนึ่งเดียวด้วยช่องทางการสื่อสารความเร็วสูง ซึ่งทำงานและปรากฏต่อผู้ใช้โดยรวม มีหลายสถานการณ์หลักสำหรับการใช้คลัสเตอร์:
- ให้ความทนทานต่อความผิดพลาด (มีความพร้อมใช้งานสูง)
- โหลดบาลานซ์ (โหลดบาลานซ์)
- เพิ่มผลผลิต (ประสิทธิภาพสูง).
- การดำเนินการคอมพิวเตอร์แบบกระจาย (การคำนวณแบบกระจาย)
แต่ละสถานการณ์มีข้อกำหนดของตนเองสำหรับสมาชิกคลัสเตอร์ ตัวอย่างเช่น สำหรับคลัสเตอร์ที่ดำเนินการประมวลผลแบบกระจาย ข้อกำหนดหลักคือความเร็วสูงของการดำเนินการจุดลอยตัวและเวลาแฝงของเครือข่ายต่ำ กลุ่มดังกล่าวมักใช้เพื่อการวิจัย
เนื่องจากเราได้พูดถึงหัวข้อของการคำนวณแบบกระจายแล้ว ฉันอยากจะทราบว่าก็มีเรื่องเช่นนี้เช่นกัน ระบบกริด (จากตารางภาษาอังกฤษ - ขัดแตะ, เครือข่าย) แม้จะมีความคล้ายคลึงกันโดยทั่วไป แต่อย่าสับสนระหว่างระบบกริดและคลัสเตอร์ กริดไม่ใช่คลัสเตอร์ตามความหมายปกติ โหนดที่รวมอยู่ในกริดต่างจากคลัสเตอร์ตรงที่มักจะต่างกันและมีลักษณะเฉพาะคือมีความพร้อมใช้งานต่ำ แนวทางนี้ช่วยลดความยุ่งยากในการแก้ปัญหาการคำนวณแบบกระจาย แต่ไม่อนุญาตให้สร้างทั้งหมดจากโหนด
ตัวอย่างที่โดดเด่นของระบบกริดคือแพลตฟอร์มคอมพิวเตอร์ยอดนิยม
บีโอไอเอ็นซี (โครงสร้างพื้นฐานแบบเปิดของ Berkeley สำหรับคอมพิวเตอร์เครือข่าย) เดิมทีแพลตฟอร์มนี้ถูกสร้างขึ้นสำหรับโครงการSETI @ home (ค้นหาข่าวกรองนอกโลกที่บ้าน) จัดการกับปัญหาการค้นหาข่าวกรองนอกโลกโดยการวิเคราะห์สัญญาณวิทยุ
Какэтоработаетข้อมูลจำนวนมากที่ได้รับจากกล้องโทรทรรศน์วิทยุจะถูกแบ่งออกเป็นชิ้นเล็กๆ จำนวนมาก และจะถูกส่งไปยังโหนดของระบบกริด (ในโครงการ SETI@home คอมพิวเตอร์อาสาสมัครจะทำหน้าที่เป็นโหนดดังกล่าว) ข้อมูลได้รับการประมวลผลที่โหนดและหลังจากการประมวลผลเสร็จสิ้น ข้อมูลจะถูกส่งไปยังเซิร์ฟเวอร์กลางของโครงการ SETI ดังนั้น โครงการนี้จึงสามารถแก้ไขปัญหาระดับโลกที่ซับซ้อนที่สุดโดยไม่ต้องใช้พลังการประมวลผลที่จำเป็นในการกำจัด
ตอนนี้เรามีความเข้าใจที่ชัดเจนแล้วว่าคลัสเตอร์คืออะไร เราเสนอให้พิจารณาว่าจะสร้างและใช้งานคลัสเตอร์ได้อย่างไร เราจะใช้ระบบการจำลองเสมือนแบบโอเพ่นซอร์ส
สิ่งสำคัญอย่างยิ่งคือต้องเข้าใจข้อจำกัดและข้อกำหนดของระบบของ Proxmox อย่างชัดเจน ก่อนที่จะเริ่มสร้างคลัสเตอร์ กล่าวคือ:
- จำนวนโหนดสูงสุดในคลัสเตอร์ - 32;
- โหนดทั้งหมดต้องมี Proxmox เวอร์ชันเดียวกัน (มีข้อยกเว้น แต่ไม่แนะนำสำหรับการผลิต)
- หากในอนาคตมีการวางแผนที่จะใช้ฟังก์ชัน High Availability คลัสเตอร์ก็ควรมี อย่างน้อย 3 โหนด;
- พอร์ตจะต้องเปิดเพื่อให้โหนดสามารถสื่อสารระหว่างกันได้ UDP/5404, UDP/5405 สำหรับโคโรซิงค์และ ทีซีพี/22 สำหรับ SSH;
- ความล่าช้าของเครือข่ายระหว่างโหนดไม่ควรเกิน 2 ms.
สร้างคลัสเตอร์
สำคัญ! การกำหนดค่าต่อไปนี้เป็นการกำหนดค่าทดสอบ อย่าลืมตรวจสอบกับ
ในการรันคลัสเตอร์ทดสอบ เราใช้เซิร์ฟเวอร์สามเครื่องที่ติดตั้งไฮเปอร์ไวเซอร์ Proxmox ด้วยการกำหนดค่าเดียวกัน (2 คอร์, RAM 2 GB)
หากคุณต้องการทราบวิธีการติดตั้ง Proxmox เราขอแนะนำให้อ่านบทความก่อนหน้าของเรา -
ความมหัศจรรย์ของการจำลองเสมือน: หลักสูตรเบื้องต้นใน Proxmox VE .
เริ่มแรกหลังจากติดตั้งระบบปฏิบัติการ จะมีเซิร์ฟเวอร์ตัวเดียวทำงานเข้ามา โหมดสแตนด์อโลน.
สร้างคลัสเตอร์โดยคลิกที่ปุ่ม สร้างคลัสเตอร์ ในส่วนที่เกี่ยวข้อง
เราตั้งชื่อสำหรับคลัสเตอร์ในอนาคตและเลือกการเชื่อมต่อเครือข่ายที่ใช้งานอยู่
คลิกปุ่มสร้าง เซิร์ฟเวอร์จะสร้างคีย์ 2048 บิตและเขียนคีย์ดังกล่าวพร้อมกับพารามิเตอร์ของคลัสเตอร์ใหม่ลงในไฟล์การกำหนดค่า
ข้อความที่จารึก งานตกลง บ่งบอกถึงความสำเร็จของการดำเนินการ เมื่อดูข้อมูลทั่วไปเกี่ยวกับระบบแล้ว จะเห็นได้ว่า เซิร์ฟเวอร์ได้เปลี่ยนไปใช้โหมดคลัสเตอร์แล้ว จนถึงตอนนี้ คลัสเตอร์ประกอบด้วยโหนดเดียวเท่านั้น กล่าวคือ ยังไม่มีความสามารถที่จำเป็นสำหรับคลัสเตอร์
เข้าร่วมคลัสเตอร์
ก่อนที่จะเชื่อมต่อกับคลัสเตอร์ที่สร้างขึ้น เราจำเป็นต้องได้รับข้อมูลเพื่อทำการเชื่อมต่อให้เสร็จสมบูรณ์ โดยไปที่ส่วนนี้ Cluster และกดปุ่ม เข้าร่วมข้อมูล.
ในหน้าต่างที่เปิดขึ้นเราสนใจเนื้อหาของฟิลด์ชื่อเดียวกัน มันจะต้องมีการคัดลอก
พารามิเตอร์การเชื่อมต่อที่จำเป็นทั้งหมดได้รับการเข้ารหัสที่นี่: ที่อยู่เซิร์ฟเวอร์สำหรับการเชื่อมต่อและลายนิ้วมือดิจิทัล เราไปที่เซิร์ฟเวอร์ที่ต้องรวมอยู่ในคลัสเตอร์ เรากดปุ่ม เข้าร่วมคลัสเตอร์ และในหน้าต่างที่เปิดขึ้น ให้วางเนื้อหาที่คัดลอกไว้
สนาม ที่อยู่เพื่อน и ลายนิ้วมือ จะถูกกรอกโดยอัตโนมัติ ป้อนรหัสผ่านรูทสำหรับโหนดหมายเลข 1 เลือกการเชื่อมต่อเครือข่ายแล้วกดปุ่ม ร่วมเป็นผู้ขายกับเราที่.
ในระหว่างกระบวนการเข้าร่วมคลัสเตอร์ เว็บเพจ GUI อาจหยุดการอัปเดต ไม่เป็นไร แค่โหลดหน้านี้ซ้ำ ในทำนองเดียวกัน เราเพิ่มโหนดอื่นและด้วยเหตุนี้เราจึงได้คลัสเตอร์ที่เต็มเปี่ยมไปด้วยโหนดทำงาน 3 โหนด
ตอนนี้เราสามารถควบคุมโหนดคลัสเตอร์ทั้งหมดได้จาก GUI เดียว
องค์กรที่มีความพร้อมใช้งานสูง
Proxmox พร้อมใช้งานทันทีรองรับฟังก์ชันการทำงานขององค์กร HA สำหรับทั้งเครื่องเสมือนและคอนเทนเนอร์ LXC คุณประโยชน์ ฮ่า-ผู้จัดการ ตรวจจับและจัดการข้อผิดพลาดและความล้มเหลว ดำเนินการเฟลโอเวอร์จากโหนดที่ล้มเหลวไปยังโหนดที่ใช้งานได้ เพื่อให้กลไกทำงานได้อย่างถูกต้อง เครื่องเสมือนและคอนเทนเนอร์จำเป็นต้องมีที่เก็บไฟล์ทั่วไป
หลังจากเปิดใช้งานฟังก์ชัน High Availability แล้ว สแต็กซอฟต์แวร์ ha-manager จะตรวจสอบสถานะของเครื่องเสมือนหรือคอนเทนเนอร์อย่างต่อเนื่อง และโต้ตอบแบบอะซิงโครนัสกับโหนดคลัสเตอร์อื่นๆ
กำลังแนบที่เก็บข้อมูลที่ใช้ร่วมกัน
ตามตัวอย่าง เราปรับใช้การแชร์ไฟล์ NFS ขนาดเล็กที่ 192.168.88.18 เพื่อให้โหนดทั้งหมดของคลัสเตอร์สามารถใช้งานได้ คุณต้องดำเนินการต่อไปนี้
เลือกจากเมนูเว็บอินเตอร์เฟส ศูนย์ข้อมูล - ที่เก็บข้อมูล - เพิ่ม - NFS.
กรอกข้อมูลในฟิลด์ ID и เซิร์ฟเวอร์. ในรายการแบบหล่นลง ส่งออก เลือกไดเร็กทอรีที่ต้องการจากที่มีอยู่และในรายการ คอนเทนต์ — ประเภทข้อมูลที่จำเป็น หลังจากกดปุ่มแล้ว เพิ่ม ที่เก็บข้อมูลจะเชื่อมต่อกับโหนดคลัสเตอร์ทั้งหมด
เมื่อสร้างเครื่องเสมือนและคอนเทนเนอร์บนโหนดใด ๆ เราจะระบุของเรา การเก็บรักษา เป็นที่เก็บของ
ตั้งค่า HA
ตัวอย่างเช่น เรามาสร้างคอนเทนเนอร์ด้วย Ubuntu 18.04 และกำหนดค่า High Availability ให้กับคอนเทนเนอร์นั้น หลังจากสร้างและใช้งานคอนเทนเนอร์แล้ว ให้ไปที่ส่วนนี้ Datacenter-HA-เพิ่ม. ในฟิลด์ที่เปิดขึ้น ให้ระบุ ID เครื่องเสมือน/คอนเทนเนอร์ และจำนวนครั้งสูงสุดในการรีสตาร์ทและย้ายระหว่างโหนด
หากเกินจำนวนนี้ ไฮเปอร์ไวเซอร์จะทำเครื่องหมาย VM ว่าล้มเหลว และกำหนดให้อยู่ในสถานะข้อผิดพลาด หลังจากนั้นจะหยุดดำเนินการใดๆ กับมัน
หลังจากกดปุ่ม เพิ่ม ประโยชน์ ฮ่า-ผู้จัดการ จะแจ้งให้โหนดทั้งหมดของคลัสเตอร์ทราบว่าขณะนี้ VM ที่มี ID ที่ระบุได้รับการควบคุมแล้ว และในกรณีที่เกิดข้อขัดข้อง จะต้องรีสตาร์ทบนโหนดอื่น
มาทำผิดพลาดกัน
หากต้องการดูว่ากลไกการสลับทำงานอย่างไร ให้ปิดแหล่งจ่ายไฟของ node1 อย่างผิดปกติ เราดูจากโหนดอื่นว่าเกิดอะไรขึ้นกับคลัสเตอร์ เราเห็นว่าระบบได้แก้ไขข้อผิดพลาดแล้ว
การทำงานของกลไก HA ไม่ได้หมายถึงความต่อเนื่องของ VM ทันทีที่โหนด "ตก" การดำเนินการ VM จะหยุดชั่วคราวจนกว่าจะรีสตาร์ทโดยอัตโนมัติบนโหนดอื่น
และนี่คือจุดเริ่มต้นของ "ความมหัศจรรย์" - คลัสเตอร์จะกำหนดโหนดใหม่โดยอัตโนมัติเพื่อรัน VM ของเรา และงานจะได้รับการกู้คืนโดยอัตโนมัติภายใน 120 วินาที
เราดับโหนด 2 เกี่ยวกับโภชนาการ มาดูกันว่าคลัสเตอร์จะยังคงอยู่หรือไม่ และ VM จะกลับสู่สถานะการทำงานโดยอัตโนมัติหรือไม่
อนิจจา ดังที่เราเห็น เรามีปัญหากับความจริงที่ว่าไม่มีองค์ประชุมบนโหนดเดียวที่รอดตายอีกต่อไป ซึ่งจะปิดการใช้งาน HA โดยอัตโนมัติ เราให้คำสั่งเพื่อบังคับการติดตั้งองค์ประชุมในคอนโซล
pvecm expected 1
หลังจากผ่านไป 2 นาที กลไก HA ทำงานได้อย่างถูกต้อง และเมื่อไม่พบโหนด 2 จึงเปิดใช้ VM ของเราบนโหนด 3
ทันทีที่เราเปิด node1 และ node2 อีกครั้ง คลัสเตอร์ก็จะได้รับการกู้คืนอย่างสมบูรณ์ โปรดทราบว่า VM จะไม่ย้ายกลับไปยังโหนด 1 ด้วยตัวมันเอง แต่สามารถทำได้ด้วยตนเอง
ข้อสรุปถึง
เราได้บอกคุณเกี่ยวกับวิธีการทำงานของกลไกการทำคลัสเตอร์ Proxmox และยังแสดงให้คุณเห็นว่าการกำหนดค่า HA สำหรับเครื่องเสมือนและคอนเทนเนอร์เป็นอย่างไร การใช้การทำคลัสเตอร์และ HA อย่างเหมาะสมจะช่วยเพิ่มความน่าเชื่อถือของโครงสร้างพื้นฐานได้อย่างมาก พร้อมทั้งยังให้การกู้คืนความเสียหายอีกด้วย
ก่อนที่จะสร้างคลัสเตอร์ คุณต้องวางแผนทันทีว่าจะใช้เพื่อวัตถุประสงค์อะไร และจะต้องปรับขนาดคลัสเตอร์ในอนาคตมากน้อยเพียงใด คุณต้องตรวจสอบโครงสร้างพื้นฐานเครือข่ายเพื่อดูความพร้อมในการทำงานโดยมีความล่าช้าน้อยที่สุด เพื่อให้คลัสเตอร์ในอนาคตทำงานได้โดยไม่เกิดข้อผิดพลาด
บอกเราว่าคุณใช้ความสามารถในการจัดกลุ่มของ Proxmox หรือไม่ เรากำลังรอคุณอยู่ในความคิดเห็น
บทความก่อนหน้าเกี่ยวกับไฮเปอร์ไวเซอร์ Proxmox VE:
ที่มา: will.com