บทนำและข้อดี/ข้อเสียของการทำคลัสเตอร์ใน Linux - ตอนที่ 1
สวัสดีทุกคน ครั้งนี้ฉันตัดสินใจแบ่งปันความรู้ของฉันเกี่ยวกับการทำคลัสเตอร์ Linux กับคุณเป็นชุดคำแนะนำในหัวข้อ “การทำคลัสเตอร์ Linux สำหรับสถานการณ์ที่ล้มเหลว“
ต่อไปนี้เป็นบทความ 4 บทความเกี่ยวกับการทำคลัสเตอร์ใน Linux:
ก่อนอื่น คุณจะต้องรู้ว่าคลัสเตอร์คืออะไร ใช้อย่างไรในอุตสาหกรรม และมีข้อดีและข้อเสียประเภทใด เป็นต้น
การจัดกลุ่มคืออะไร
การทำคลัสเตอร์กำลังสร้างการเชื่อมต่อระหว่างเซิร์ฟเวอร์ตั้งแต่สองเครื่องขึ้นไปเพื่อให้ทำงานเป็นหนึ่งเดียว การทำคลัสเตอร์เป็นเทคนิคที่ได้รับความนิยมอย่างมากในหมู่วิศวกร Sys ที่พวกเขาสามารถทำคลัสเตอร์เซิร์ฟเวอร์เป็นระบบเฟลโอเวอร์ ระบบโหลดบาลานซ์ หรือหน่วยประมวลผลแบบขนาน
ตามคู่มือชุดนี้ ฉันหวังว่าจะแนะนำให้คุณสร้างคลัสเตอร์ Linux ที่มีสองโหนดบน RedHat/CentOS สำหรับสถานการณ์เฟลโอเวอร์
เนื่องจากตอนนี้คุณมีแนวคิดพื้นฐานแล้วว่าการทำคลัสเตอร์คืออะไร เรามาดูความหมายของการทำคลัสเตอร์เมื่อเกิดข้อผิดพลาดกันดีกว่า คลัสเตอร์ล้มเหลวคือชุดของเซิร์ฟเวอร์ที่ทำงานร่วมกันเพื่อรักษาความพร้อมใช้งานสูงของแอปพลิเคชันและบริการ
ตัวอย่างเช่น หากเซิร์ฟเวอร์เกิดข้อผิดพลาด ณ จุดใดจุดหนึ่ง โหนดอื่น (เซิร์ฟเวอร์) จะเข้ามารับหน้าที่โหลด และทำให้ผู้ใช้ปลายทางไม่มีประสบการณ์เรื่องเวลาหยุดทำงาน สำหรับสถานการณ์ประเภทนี้ เราจำเป็นต้องมีเซิร์ฟเวอร์อย่างน้อย 2 หรือ 3 เพื่อทำการกำหนดค่าที่เหมาะสม
ฉันชอบที่เราใช้เซิร์ฟเวอร์ 3 เซิร์ฟเวอร์หนึ่งเป็นเซิร์ฟเวอร์ที่เปิดใช้งานคลัสเตอร์ Red Hat และเซิร์ฟเวอร์อื่น ๆ เป็นโหนด (เซิร์ฟเวอร์ส่วนหลัง) ลองดูแผนภาพด้านล่างเพื่อความเข้าใจที่ดีขึ้น
Cluster Server: 172.16.1.250
Hostname: clserver.test.net
node01: 172.16.1.222
Hostname: nd01server.test.net
node02: 172.16.1.223
Hostname: nd02server.test.net
ในสถานการณ์ข้างต้น การจัดการคลัสเตอร์จะดำเนินการโดยเซิร์ฟเวอร์ที่แยกจากกัน และจะจัดการโหนดสองโหนดตามที่แสดงไว้ในแผนภาพ เซิร์ฟเวอร์การจัดการคลัสเตอร์จะส่งสัญญาณฮาร์ทบีทไปยังโหนดทั้งสองอย่างต่อเนื่องเพื่อตรวจสอบว่ามีใครล้มเหลวหรือไม่ หากมีใครล้มเหลว โหนดอื่นจะรับหน้าที่โหลดแทน
ข้อดีของการทำคลัสเตอร์เซิร์ฟเวอร์
- เซิร์ฟเวอร์การทำคลัสเตอร์เป็นโซลูชันที่สามารถปรับขนาดได้อย่างสมบูรณ์ คุณสามารถเพิ่มทรัพยากรลงในคลัสเตอร์ได้ในภายหลัง
- หากเซิร์ฟเวอร์ในคลัสเตอร์ต้องการการบำรุงรักษา คุณสามารถทำได้โดยการหยุดคลัสเตอร์ในขณะที่ส่งมอบภาระงานให้กับเซิร์ฟเวอร์อื่น
- ในบรรดาตัวเลือกความพร้อมใช้งานสูง การทำคลัสเตอร์ถือเป็นจุดพิเศษเนื่องจากมีความน่าเชื่อถือและกำหนดค่าได้ง่าย ในกรณีที่เซิร์ฟเวอร์มีปัญหาในการให้บริการ นอกจากนี้ เซิร์ฟเวอร์อื่นๆ ในคลัสเตอร์ก็สามารถรับภาระได้
ข้อเสียของการทำคลัสเตอร์เซิร์ฟเวอร์
- ต้นทุนสูง เนื่องจากคลัสเตอร์ต้องการฮาร์ดแวร์ที่ดีและการออกแบบ จึงมีค่าใช้จ่ายสูงเมื่อเปรียบเทียบกับการออกแบบการจัดการเซิร์ฟเวอร์ที่ไม่ใช่คลัสเตอร์ การไม่คุ้มค่าถือเป็นข้อเสียเปรียบหลักของการออกแบบนี้
- เนื่องจากการทำคลัสเตอร์ต้องการเซิร์ฟเวอร์และฮาร์ดแวร์มากขึ้นเพื่อสร้างหนึ่ง การตรวจสอบและบำรุงรักษาจึงเป็นเรื่องยาก จึงเพิ่มโครงสร้างพื้นฐาน
ตอนนี้เรามาดูกันว่าเราต้องใช้แพ็คเกจ/การติดตั้งประเภทใดเพื่อกำหนดค่าการตั้งค่านี้ให้สำเร็จ สามารถดาวน์โหลดแพ็คเกจ/RPM ต่อไปนี้ได้โดย rpmfind.net
- ริชชี่ (ricci-0.16.2-75.el6.x86_64.rpm)
- ลูซี่ (luci-0.26.0-63.el6.centos.x86_64.rpm)
- Mod_cluster (โมดคลัสเตอร์-0.16.2-29.el6.x86_64.rpm)
- ซีซีเอส (ccs-0.16.2-75.el6_6.2.x86_64.rpm)
- CMAN(cman-3.0.12.1-68.el6.x86_64.rpm)
- Clusterlib (คลัสเตอร์ลิบ-3.0.12.1-68.el6.x86_64.rpm)
มาดูกันว่าการติดตั้งแต่ละอย่างมีประโยชน์ต่อเราอย่างไรและมีความหมายอย่างไร
- Ricci เป็น daemon ซึ่งใช้สำหรับการจัดการคลัสเตอร์และการกำหนดค่า โดยจะกระจาย/จัดส่งการรับข้อความไปยังโหนดที่กำหนดค่าไว้
- Luci คือเซิร์ฟเวอร์ที่ทำงานบนเซิร์ฟเวอร์การจัดการคลัสเตอร์และสื่อสารกับหลายโหนดอื่นๆ มันมีเว็บอินเตอร์เฟสเพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้น
- Mod_cluster เป็นยูทิลิตีโหลดบาลานเซอร์ที่ใช้บริการ httpd และที่นี่ใช้เพื่อสื่อสารคำขอขาเข้ากับโหนดที่เกี่ยวข้อง
- CCS ใช้เพื่อสร้างและแก้ไขการกำหนดค่าคลัสเตอร์บนโหนดระยะไกลผ่าน ricci นอกจากนี้ยังใช้เพื่อเริ่มและหยุดบริการคลัสเตอร์อีกด้วย
- CMAN เป็นหนึ่งในยูทิลิตี้หลักที่ไม่ใช่ ricci และ luci สำหรับการตั้งค่าเฉพาะนี้ เนื่องจากทำหน้าที่เป็นผู้จัดการคลัสเตอร์ จริงๆ แล้ว cman ย่อมาจาก CLUSTER MANAGER เป็นส่วนเสริมที่มีความพร้อมใช้งานสูงสำหรับ RedHat ซึ่งกระจายไปตามโหนดในคลัสเตอร์
อ่านบทความ ทำความเข้าใจสถานการณ์ที่เราจะสร้างโซลูชันให้ และตั้งค่าข้อกำหนดเบื้องต้นสำหรับการนำไปใช้งาน มาพบกับส่วนที่ 2 ในบทความต่อๆ ไปของเรา ซึ่งเราจะเรียนรู้วิธีการติดตั้งและสร้างคลัสเตอร์สำหรับสถานการณ์ที่กำหนด
อ้างอิง:
- เอกสารประกอบ ch-cman
- เอกสารประกอบคลัสเตอร์ Mod
เชื่อมต่อกับ Tecmint เพื่อรับวิธีการที่มีประโยชน์และล่าสุด คอยติดตาม ตอนที่ 02 (การทำคลัสเตอร์ Linux Servers ด้วย 2 โหนดสำหรับสถานการณ์เฟลโอเวอร์บน RedHAT/CentOS – การสร้างคลัสเตอร์) เร็วๆ นี้