วิธีการตั้งค่า HAProxy ด้วย Keepalived เพื่อความพร้อมใช้งานสูง

Withi Kar Tang Kha Haproxy Dwy Keepalived Pheux Khwam Phrxm Chi Ngan Sung



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

เป็นเฟรมเวิร์กโอเพ่นซอร์สที่ออกแบบมาสำหรับระบบ Linux เพื่อให้เกิดความน่าเชื่อถือโดยการจัดการโหลดบาลานซ์และการเฟลโอเวอร์ IP Keepalived ใช้กับโหลดบาลานเซอร์ เช่น HAProxy เพื่อให้มั่นใจในความต่อเนื่องของการบริการเพื่อให้บรรลุความน่าเชื่อถือ โพสต์นี้จะแนะนำ Keepalived และทำตามขั้นตอนเพื่อตั้งค่าด้วย HAProxy

Keepalive คืออะไร?

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







คุณสมบัติหลักบางประการที่ Keepalive มีให้มีดังต่อไปนี้:



1. การจัดการ IP เสมือน

เซิร์ฟเวอร์ทั้งหมดได้รับการกำหนด IP เสมือนโดย Keepalive ซึ่งช่วยให้เซิร์ฟเวอร์เหล่านั้นทำงานเป็นเอนทิตีเสมือนเดียวได้ Keepalived จะถ่ายโอน IP เสมือนไปยังเซิร์ฟเวอร์สำรองในกรณีที่เกิดข้อผิดพลาด เพื่อหลีกเลี่ยงการหยุดทำงาน



2. การตรวจสุขภาพ

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





3. การปรับสมดุลโหลด

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

วิธีการตั้งค่า HAProxy ด้วย Keepalived

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



ขั้นตอนที่ 1: ติดตั้ง HAProxy

การติดตั้ง HAProxy เป็นกระบวนการที่ไม่ซับซ้อน โดยเฉพาะอย่างยิ่งเมื่อ HAProxy พร้อมใช้งานจากพื้นที่เก็บข้อมูล Linux เริ่มต้น เรากำลังทำงานร่วมกับ Ubuntu สำหรับบทช่วยสอนนี้ แต่ขั้นตอนจะคล้ายกับขั้นตอนของ distros อื่นๆ

ก่อนที่จะติดตั้ง HAProxy ให้อัพเดตพื้นที่เก็บข้อมูลอย่างรวดเร็ว

$ ซูโดะ ปรับปรุงฉลาด

ตอนนี้คุณสามารถใช้ APT เพื่อติดตั้ง HAProxy

$ ซูโดะ apt-get ติดตั้ง haproxy

ขั้นตอนที่ 2: กำหนดค่า HAProxy

บน HAProxy ของคุณ เราต้องเข้าถึงไฟล์การกำหนดค่า กำหนดวิธีที่คุณต้องการรับการรับส่งข้อมูลขาเข้าจากอุปกรณ์ไคลเอนต์ของคุณ จากนั้นกำหนดเซิร์ฟเวอร์ที่จะกระจายการรับส่งข้อมูล

เริ่มต้นด้วยการเข้าถึงไฟล์กำหนดค่า HAProxy

$ ซูโดะ นาโน / ฯลฯ / haproxy / haproxy.cfg

ในกรณีนี้ เราระบุว่าเราจะรับฟังการเชื่อมต่อขาเข้าทั้งหมดผ่านพอร์ต 80 สำหรับแบ็กเอนด์ เราระบุเซิร์ฟเวอร์สองเครื่องโดยใช้ Round Robin เพื่อกระจายการรับส่งข้อมูล ตรวจสอบให้แน่ใจว่าคุณเปลี่ยน IP ของเซิร์ฟเวอร์เพื่อให้ตรงกับเซิร์ฟเวอร์จริงของคุณ

หลังจากที่คุณทำการแก้ไขที่จำเป็นในไฟล์กำหนดค่าแล้ว ให้บันทึกและออก สุดท้ายรีสตาร์ท HAProxy

ขั้นตอนที่ 3: ติดตั้ง Keepalive

Keepalive ไม่ได้ติดตั้งไว้ล่วงหน้าใน Linux ดังนั้นเราจึงต้องติดตั้งจากพื้นที่เก็บข้อมูลเริ่มต้นโดยใช้ APT รันคำสั่งต่อไปนี้:

$ ซูโดะ apt-get ติดตั้ง เก็บไว้

ยืนยันการติดตั้งโดยกด 'y' เมื่อได้รับแจ้ง เมื่อการติดตั้งเสร็จสมบูรณ์ ให้ตรวจสอบว่าติดตั้ง Keepalive แล้วโดยตรวจสอบเวอร์ชัน

ขั้นตอนที่ 4: กำหนดค่า Keepalived

ในการกำหนดค่า Keepalived เราต้องเข้าถึงไฟล์การกำหนดค่าซึ่งอยู่ที่ “/etc/keepalived/keepalived.conf” ที่นี่ เราต้องกำหนดวิธีที่เราต้องการให้ Keepalived ให้ความพร้อมใช้งานสูงแก่ HAProxy

เราต้องกำหนดที่อยู่ IP เสมือน ลำดับความสำคัญสำหรับเซิร์ฟเวอร์ที่มีอยู่ และสคริปต์เพื่อตรวจสอบความสมบูรณ์และสถานะของ HAProxy ในไฟล์การกำหนดค่าต่อไปนี้ เราสร้างสคริปต์ “chk_haproxy” เพื่อประเมินสถานะของ HAProxy ทุกๆ สองวินาที เราระบุโดยใช้ “enp0s3” เป็นอินเทอร์เฟซเครือข่ายของเรา และสร้างอินสแตนซ์ VRRP ชื่อ “VI_1” เปลี่ยนอินเทอร์เฟซเครือข่ายให้ตรงกับกรณีของคุณ

อย่างไรก็ตาม ให้ตั้งค่ารหัสเราเตอร์ที่เหมาะกับอินเทอร์เฟซของคุณและตั้งค่าที่อยู่ IP เสมือนที่จะใช้ คุณควรเปลี่ยนรหัสผ่านการรับรองความถูกต้องด้วย

ขั้นตอนที่ 5: รีสตาร์ท Keepalived


เมื่อตั้งค่า Keepalived เรียบร้อยแล้ว ให้บันทึกไฟล์และปิดโปรแกรมแก้ไขข้อความ จากนั้นคุณสามารถตรวจสอบความถูกต้องของไฟล์การกำหนดค่าและเริ่มบริการ Keepalive ใหม่ได้

สุดท้ายนี้ ตรวจสอบให้แน่ใจว่า HAProxy และ Keepalived เริ่มต้นแล้ว

แค่นั้นแหละ. คุณตั้งค่า HAProxy ด้วย Keepalived เพื่อความพร้อมใช้งานสูง คุณสามารถใช้ IP เสมือนที่กำหนดเพื่อตรวจสอบว่าการตั้งค่าทำงานตามที่คาดไว้

บทสรุป

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