ค้นหาเว็บไซต์

บทนำและข้อดี/ข้อเสียของการทำคลัสเตอร์ใน 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   

ในสถานการณ์ข้างต้น การจัดการคลัสเตอร์จะดำเนินการโดยเซิร์ฟเวอร์ที่แยกจากกัน และจะจัดการโหนดสองโหนดตามที่แสดงไว้ในแผนภาพ เซิร์ฟเวอร์การจัดการคลัสเตอร์จะส่งสัญญาณฮาร์ทบีทไปยังโหนดทั้งสองอย่างต่อเนื่องเพื่อตรวจสอบว่ามีใครล้มเหลวหรือไม่ หากมีใครล้มเหลว โหนดอื่นจะรับหน้าที่โหลดแทน

ข้อดีของการทำคลัสเตอร์เซิร์ฟเวอร์

  1. เซิร์ฟเวอร์การทำคลัสเตอร์เป็นโซลูชันที่สามารถปรับขนาดได้อย่างสมบูรณ์ คุณสามารถเพิ่มทรัพยากรลงในคลัสเตอร์ได้ในภายหลัง
  2. หากเซิร์ฟเวอร์ในคลัสเตอร์ต้องการการบำรุงรักษา คุณสามารถทำได้โดยการหยุดคลัสเตอร์ในขณะที่ส่งมอบภาระงานให้กับเซิร์ฟเวอร์อื่น
  3. ในบรรดาตัวเลือกความพร้อมใช้งานสูง การทำคลัสเตอร์ถือเป็นจุดพิเศษเนื่องจากมีความน่าเชื่อถือและกำหนดค่าได้ง่าย ในกรณีที่เซิร์ฟเวอร์มีปัญหาในการให้บริการ นอกจากนี้ เซิร์ฟเวอร์อื่นๆ ในคลัสเตอร์ก็สามารถรับภาระได้

ข้อเสียของการทำคลัสเตอร์เซิร์ฟเวอร์

  1. ต้นทุนสูง เนื่องจากคลัสเตอร์ต้องการฮาร์ดแวร์ที่ดีและการออกแบบ จึงมีค่าใช้จ่ายสูงเมื่อเปรียบเทียบกับการออกแบบการจัดการเซิร์ฟเวอร์ที่ไม่ใช่คลัสเตอร์ การไม่คุ้มค่าถือเป็นข้อเสียเปรียบหลักของการออกแบบนี้
  2. เนื่องจากการทำคลัสเตอร์ต้องการเซิร์ฟเวอร์และฮาร์ดแวร์มากขึ้นเพื่อสร้างหนึ่ง การตรวจสอบและบำรุงรักษาจึงเป็นเรื่องยาก จึงเพิ่มโครงสร้างพื้นฐาน

ตอนนี้เรามาดูกันว่าเราต้องใช้แพ็คเกจ/การติดตั้งประเภทใดเพื่อกำหนดค่าการตั้งค่านี้ให้สำเร็จ สามารถดาวน์โหลดแพ็คเกจ/RPM ต่อไปนี้ได้โดย rpmfind.net

  1. ริชชี่ (ricci-0.16.2-75.el6.x86_64.rpm)
  2. ลูซี่ (luci-0.26.0-63.el6.centos.x86_64.rpm)
  3. Mod_cluster (โมดคลัสเตอร์-0.16.2-29.el6.x86_64.rpm)
  4. ซีซีเอส (ccs-0.16.2-75.el6_6.2.x86_64.rpm)
  5. CMAN(cman-3.0.12.1-68.el6.x86_64.rpm)
  6. Clusterlib (คลัสเตอร์ลิบ-3.0.12.1-68.el6.x86_64.rpm)

มาดูกันว่าการติดตั้งแต่ละอย่างมีประโยชน์ต่อเราอย่างไรและมีความหมายอย่างไร

  1. Ricci เป็น daemon ซึ่งใช้สำหรับการจัดการคลัสเตอร์และการกำหนดค่า โดยจะกระจาย/จัดส่งการรับข้อความไปยังโหนดที่กำหนดค่าไว้
  2. Luci คือเซิร์ฟเวอร์ที่ทำงานบนเซิร์ฟเวอร์การจัดการคลัสเตอร์และสื่อสารกับหลายโหนดอื่นๆ มันมีเว็บอินเตอร์เฟสเพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้น
  3. Mod_cluster เป็นยูทิลิตีโหลดบาลานเซอร์ที่ใช้บริการ httpd และที่นี่ใช้เพื่อสื่อสารคำขอขาเข้ากับโหนดที่เกี่ยวข้อง
  4. CCS ใช้เพื่อสร้างและแก้ไขการกำหนดค่าคลัสเตอร์บนโหนดระยะไกลผ่าน ricci นอกจากนี้ยังใช้เพื่อเริ่มและหยุดบริการคลัสเตอร์อีกด้วย
  5. CMAN เป็นหนึ่งในยูทิลิตี้หลักที่ไม่ใช่ ricci และ luci สำหรับการตั้งค่าเฉพาะนี้ เนื่องจากทำหน้าที่เป็นผู้จัดการคลัสเตอร์ จริงๆ แล้ว cman ย่อมาจาก CLUSTER MANAGER เป็นส่วนเสริมที่มีความพร้อมใช้งานสูงสำหรับ RedHat ซึ่งกระจายไปตามโหนดในคลัสเตอร์

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

อ้างอิง:

  1. เอกสารประกอบ ch-cman
  2. เอกสารประกอบคลัสเตอร์ Mod

เชื่อมต่อกับ Tecmint เพื่อรับวิธีการที่มีประโยชน์และล่าสุด คอยติดตาม ตอนที่ 02 (การทำคลัสเตอร์ Linux Servers ด้วย 2 โหนดสำหรับสถานการณ์เฟลโอเวอร์บน RedHAT/CentOS – การสร้างคลัสเตอร์) เร็วๆ นี้