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

วิธีซิงค์การกำหนดค่าคลัสเตอร์และตรวจสอบการตั้งค่าการล้มเหลวในโหนด - ตอนที่ 4


สวัสดีทุกคน. ก่อนอื่นฉันต้องขออภัยในความล่าช้าของส่วนสุดท้ายของซีรีส์คลัสเตอร์นี้ มาทำงานต่อโดยไม่ล่าช้าอีกต่อไป

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

คุณสามารถอ้างอิงส่วนก่อนหน้าของฉันได้หากคุณจำไม่ได้เนื่องจากใช้เวลานานกว่าเล็กน้อยในการโพสต์ส่วนสุดท้าย

ความรู้เบื้องต้นเกี่ยวกับการทำคลัสเตอร์ Linux และข้อดี/ข้อเสียของการทำคลัสเตอร์ – ส่วนที่ 1

วิธีการติดตั้งและกำหนดค่าคลัสเตอร์ที่มีสองโหนดใน Linux – ส่วนที่ 2

การฟันดาบและการเพิ่มการเฟลโอเวอร์ให้กับการทำคลัสเตอร์ – ส่วนที่ 3

เราจะเริ่มต้นด้วยการเพิ่มทรัพยากรให้กับคลัสเตอร์ ในกรณีนี้เราสามารถเพิ่มระบบไฟล์หรือบริการเว็บได้ตามที่คุณต้องการ ตอนนี้ฉันมีพาร์ติชัน /dev/sda3 ที่ติดตั้งอยู่ที่ /x01 ซึ่งฉันต้องการเพิ่มเป็นทรัพยากรระบบไฟล์

1. ฉันใช้คำสั่งด้านล่างเพื่อเพิ่มระบบไฟล์เป็นทรัพยากร:

ccs -h 172.16.1.250 --addresource fs name=my_fs device=/dev/mapper/tecminttest_lv_vol01 mountpoint=/x01 fstype=ext3

นอกจากนี้ หากคุณต้องการเพิ่มบริการ คุณสามารถทำได้โดยใช้วิธีการด้านล่างนี้ ออกคำสั่งต่อไปนี้

ccs -h 172.16.1.250 --addservice my_web domain=testdomain recovery=relocate autostart=1

คุณสามารถตรวจสอบได้โดยการดูไฟล์ cluster.conf เหมือนที่เราทำในบทเรียนก่อนหน้านี้

2. ตอนนี้ให้ป้อนรายการต่อไปนี้ในไฟล์ cluster.conf เพื่อเพิ่มแท็กอ้างอิงให้กับบริการ

<fs ref="my_fs"/>

3. เรียบร้อยแล้ว ไม่ เราจะดูว่าเราจะซิงค์การกำหนดค่าที่เราทำกับคลัสเตอร์ระหว่าง 2 โหนดที่เรามีได้อย่างไร คำสั่งต่อไปนี้จะทำสิ่งที่จำเป็น

ccs -h 172.16.1.250 --sync --activate

หมายเหตุ: ป้อนรหัสผ่านที่เราตั้งไว้สำหรับ ricci ในระยะแรกเมื่อเราติดตั้งแพ็คเกจ

คุณสามารถตรวจสอบการกำหนดค่าของคุณได้โดยใช้คำสั่งด้านล่าง

ccs -h 172.16.1.250 --checkconf

4. ตอนนี้ก็ถึงเวลาเริ่มต้นสิ่งต่างๆ คุณสามารถใช้คำสั่งใดคำสั่งหนึ่งด้านล่างนี้ได้ตามที่คุณต้องการ

หากต้องการเริ่มต้นเพียงโหนดเดียวให้ใช้คำสั่งกับ IP ที่เกี่ยวข้อง

ccs -h 172.16.1.222 start

หรือถ้าคุณต้องการเริ่มโหนดทั้งหมดให้ใช้ตัวเลือก --startall ดังนี้

ccs -h 172.16.1.250 –startall

คุณสามารถใช้หยุดหรือ --stopall หากคุณต้องการหยุดคลัสเตอร์

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

เพื่อจุดประสงค์นั้น คุณสามารถใช้คำสั่งด้านล่างซึ่งเริ่มคลัสเตอร์ แต่ไม่ได้เปิดใช้งานทรัพยากร

ccs -h 172.16.1.250 --startall --noenable 

5. หลังจากที่คลัสเตอร์เริ่มต้นขึ้นแล้ว คุณสามารถดูสถิติได้โดยการออกคำสั่ง clusstat

clustat

เอาต์พุตด้านบนบอกว่ามีสองโหนดในคลัสเตอร์ และทั้งสองโหนดเริ่มทำงานอยู่ในขณะนี้

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

ฉันได้ปิด node02server(172.16.1.223) โดยใช้คำสั่ง shutdown -h now จากนั้นดำเนินการคำสั่ง clusterat จาก cluster_server(172.16.1.250) ของฉัน

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

df -h /x01

อ้างอิงไฟล์ cluster.conf พร้อมชุดการกำหนดค่าทั้งหมดที่เกี่ยวข้องกับการตั้งค่าของเราที่ใช้สำหรับ tecmint

<?xml version="1.0"?>
<cluster config_version="15" name="tecmint_cluster">
        <fence_daemon post_join_delay="10"/>
        <clusternodes>
                <clusternode name="172.16.1.222" nodeid="1">
                        <fence>
                                <method name="Method01">
                                        <device name="tecmintfence"/>
                                </method>
                        </fence>
                </clusternode>
                <clusternode name="172.16.1.223" nodeid="2">
                        <fence>
                                <method name="Method01">
                                        <device name="tecmintfence"/>
                                </method>
                        </fence>
                </clusternode>
        </clusternodes>
        <cman/>
        <fencedevices>
                <fencedevice agent="fence_virt" name="tecmintfence"/>
        </fencedevices>
        <rm>
                <failoverdomains>
                        <failoverdomain name="tecmintfod" nofailback="0" ordered="1" restricted="0">
                                <failoverdomainnode name="172.16.1.222" priority="1"/>
                                <failoverdomainnode name="172.16.1.223" priority="2"/>
                        </failoverdomain>
                </failoverdomains>
                <resources>
                        <fs device="/dev/mapper/tecminttest_lv_vol01" fstype="ext3" mountpoint="/x01" name="my_fs"/>
                </resources>
                <service autostart="1" domain="testdomain" name="my_web" recovery="relocate"/>
                <fs ref="my_fs"/>
       </rm>
</cluster>

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