การซิงโครไนซ์ไฟล์ระหว่างเซิร์ฟเวอร์แอปพลิเคชันหลายตัวในคลัสเตอร์
คู่มือนี้เรียบเรียงและปรับรูปแบบสำหรับ Ruk-Com Cloud PaaS ภาพหน้าจออาจแตกต่างเล็กน้อยตามเวอร์ชันของระบบ
คลิกหรือแตะภาพหน้าจอเพื่อดูรายละเอียดขนาดจริง
วัตถุประสงค์
บทความนี้อธิบายการใช้งาน การซิงโครไนซ์ไฟล์ระหว่างเซิร์ฟเวอร์แอปพลิเคชันหลายตัวในคลัสเตอร์ บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง
ก่อนเริ่มดำเนินการ
- เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
- ตรวจสอบชื่อ Environment, Region และทรัพยากรเป้าหมายก่อนบันทึกการเปลี่ยนแปลง
- สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production

เนื่องจากปริมาณการใช้งานที่เข้ามาในโปรเจกต์เพิ่มขึ้นคุณต้องปรับปรุงประสิทธิภาพของแอปให้ทันความจุบางส่วนสำหรับการขยายแบบยืดหยุ่นได้รับการจัดเตรียมโดยอัตโนมัติในขอบเขตของขีดจำกัดการปรับขนาดเซิร์ฟเวอร์แนวตั้งแนวตั้งที่ตั้งไว้และการขยายจำนวนโหนด (เช่น ปรับขนาดตามแนวนอนแนวนอน) เมื่อความนิยมบริการของคุณเพิ่มขึ้น
สำหรับแอปที่ใช้กันอย่างแพร่หลาย (เช่น WordPress, Drupal, Joomla, Liferay, Redmine และแอปที่คล้ายกัน) การกระจายไปยังอินสแตนซ์ของเว็บเซิร์ฟเวอร์หลายตัวจะกลายเป็นปัญหา เนื่องจากโดยปกติเนื้อหาที่ผู้ใช้จัดหาทั้งหมดจะถูกบันทึกบนโหนดที่ประมวลผลคำขออัปโหลดไฟล์ที่เกี่ยวข้องเท่านั้น
เพื่อที่จะช่วยคุณกำจัดเนื้อหาที่ไม่ซิงค์กันเมื่อสร้าง cluster solution สำหรับแอปพลิเคชันของคุณ Ruk-Com Cloud PaaS ได้จัดเตรียมโปรแกรมเสริมส่วนเสริมที่มีการซิงโครไนซ์ไฟล์เพื่อให้ไฟล์ที่อัปโหลดมีการตั้งค่าคล้ายกันในหลายอินสแตนซ์ของเว็บเซิร์ฟเวอร์พร้อมกันนี้การซิงโครไนซ์สามารถใช้ได้ ไม่เพียงแค่ในขอบเขตของ environment เดียว (เช่น สำหรับโหนดที่ปรับขนาดในแนวนอนเพียงโหนดเดียว) แต่สามารถทำข้ามแอปพลิเคชันเซิร์ฟเวอร์ใน environment ที่แยกจากกัน 2 environments ไม่ว่าจะเรียกใช้สแต็กและแอปพลิเคชันเดียวกันหรือต่างกันก็ตาม
ดังนั้นมาดูวิธีการใช้งานโซลูชันนี้โดยเฉพาะและวิธีการทำงานจริงในขั้นตอนต่อไป:
การทำ File Synchronization Add-on
การซิงค์ไฟล์โซลูชันสามารถทำได้เพียงคลิกเดียวส่วนเสริม, โดยใช้งานกับ bundle ของlsyncddaemon และการใช้ครอนพร้อมกันนี้เมื่อใช้งานร่วมกับไม่แจ้งให้ทราบ, lsyncd จะเริ่มต้นการซิงโครไนซ์ไฟล์เมื่อตรวจพบการเปลี่ยนแปลงที่เกิดขึ้นจริงในระบบ การทำเช่นนี้จะทำให้ CPU มีประสิทธิภาพลดลงมากเมื่อเทียบกับ sync calls แบบปกติและช่วยให้ข้อมูลของคุณทันสมัยอยู่เสมอซึ่งทำให้โซลูชันนี้ใช้งานง่าย ทรงพลัง และราคาไม่แพงในเวลาเดียวกัน

สามารถติดตั้งโปรแกรมเสริม File Sync ที่ด้านบนของสแต็กแอปพลิเคชันเซิร์ฟเวอร์ที่จัดการด้วย Ruk-Com Cloud (ยกเว้นDockerContainers) โดยก่อนใช้งานอุปกรณ์ระบบจะให้คุณเลือกโฟลเดอร์ที่จะซิงโครไนซ์ ด้วยวิธีนี้คุณสามารถซิงค์เฉพาะส่วนหนึ่งของระบบไฟล์ของแอปเซิร์ฟเวอร์ที่ต้องการ ดังนั้นการเปลี่ยนแปลงเฉพาะภายในไดเร็กทอรีที่เลือก (ในอินสแตนซ์ของแอปพลิเคชันเซิร์ฟเวอร์ที่ระบุ) เท่านั้นที่จะทริกเกอร์การซิงโครไนซ์ได้
การติดตั้งแอปพลิเคชัน
ในตัวอย่างนี้เราจะใช้แอปพลิเคชัน WordPress ซึ่ง deploy กับ environment ที่มีแอปพลิเคชันเซิร์ฟเวอร์สองตัว
เคล็ดลับ:คำแนะนำด้านล่างนี้เหมาะสำหรับแอปพลิเคชันอื่นๆที่คล้ายกัน (เช่น Drupal, Joomla, Liferay, Redmine เป็นต้น) ขึ้นอยู่กับภาษาโปรแกรมที่รองรับ เช่น Java, PHP, Ruby เป็นต้น
1. คุณสามารถติดตั้งแอปพลิเคชันเวิร์ดเพรสด้วยตนเองหรือค้นหาแพ็กเกจที่เหมาะสมในตลาดเพื่อ deploy โดยอัตโนมัติ

คลิกติดตั้งและระบุรายละเอียดที่จำเป็น เช่น environment, ชื่อที่แสดง (alias) และภูมิภาค

2. คลิกเปลี่ยนสภาพแวดล้อม โทโพโลยีและใช้ปุ่ม +ปรับขนาดแนวนอนสำหรับเพื่อเพิ่มโหนดแอปเซิร์ฟเวอร์อีกหนึ่งโหนดเพื่อสร้างคลัสเตอร์


เคล็ดลับ:คุณสามารถดูคำแนะนำของเราในเอกสารประกอบเพื่อเพิ่มแอปเซิร์ฟเวอร์พิเศษเปิดใช้งานความพร้อมใช้งานสูงหรือแม้แต่กำหนดค่าเป็นกลุ่มก้อนsolution ได้อย่างง่ายดาย
หากคุณต้องการเพิ่มแอปเซิร์ฟเวอร์เข้ากับ environment ที่มีความซับซ้อนมากขึ้น คุณสามารถดูการตั้งค่าโซลูชันแบบคลัสเตอร์สำหรับแอปพลิเคชัน WordPress ของคุณได้ตามลิงก์ที่แนบไว้
การทดสอบ File synchronization ด้วยการการอัปโหลดไฟล์
ในส่วนของการติดตั้ง Wordpress Cluster Kit v2 จะซิงโครไนซ์โหนดทั้งสองโดยอัตโนมัติโดยมีขั้นตอนดังนี้:
1. เข้าไปที่แผงผู้ดูแลระบบ Wordpress admin panel โดยเพิ่มส่วนต่อท้าย/wp-เข้าสู่ระบบ.phpกับโดเมน environment ของคุณและเข้าสู่ระบบโดยใช้ข้อมูลที่คุณได้รับทางอีเมล
- คลิกปุ่ม Open browser ที่ environment ของคุณแล้วเพิ่ม /wp-เข้าสู่ระบบ.php ต่อท้ายหรือคลิกลิงก์ที่ได้รับทางอีเมล
- ใส่ Username และ Password ที่ได้รับทางอีเมล

2. เมื่อเข้าสู่ระบบแล้ว เปลี่ยนแปลงที่กำหนดด้วยตนเอง (เช่น อัปโหลดรูปภาพหรือไฟล์อื่นๆ แก้ไขธีม เพิ่มหน้า ฯลฯ)

3. หลังจากอัปโหลดรูปภาพเสร็จให้คุณกลับมาที่หน้า Ruk-Com Cloud Dashboard แล้วคลิก Config ถัดจากเลเยอร์แอปเซิร์ฟเวอร์

4. ไปที่หน้าเว็บรูท(คลิกที่รายการโปรด) >รูท> เนื้อหา wpdirectory และเปรียบเทียบกับโหนดทั้งสองจะเห็นว่าไฟล์ที่อัปโหลดถูกจัดเก็บไว้ที่ไดเร็กทอรีทั้งสองโดยอัตโนมัติ


เพิ่มเติม:ไดเร็กทอรีที่มีไฟล์ที่อัปโหลดขึ้นอยู่กับแอปพลิเคชั่นที่คุณใช้งาน โดยคุณสามารถค้นหาได้จากรายการของโฟลเดอร์ดังนี้:
เวิร์ดเพรส-webroot/ROOT/wp-เนื้อหา
ดรูปัล-เว็บรูท/รูท/ไซต์
จูมล่า-เว็บรูท/รูท/รูปภาพ
ไลฟ์เรย์-webroot/home/liferay/data
หากคุณเปลี่ยน environment topology โดยเพิ่มแอปเซิร์ฟเวอร์โหนดใหม่จะถูก sync ไฟล์โดยอัตโนมัติโดยไม่ต้องปรับเปลี่ยน/แก้ไขด้วยตนเอง
การซิงโครไนซ์ไฟล์จะดำเนินการโดยอัตโนมัติทุกครั้งที่คุณเพิ่มหรือเปลี่ยนแปลงอะไรก็ตามใน WordPress ของคุณ (หรือแอปพลิเคชันอื่นๆที่คุณดูแล) เพื่อให้ข้อมูลบนเซิร์ฟเวอร์ของคุณเหมือนกันเสมอ