ศูนย์คู่มือ Ruk-Com PaaS

คู่มือการพัฒนา Deploy และดูแล Application บน Platform

RUK-COM PAAS / DATABASES

การสำรอง Database

คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี

ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง

ปรับปรุงตามเอกสาร Platform ปัจจุบัน

ตรวจสอบชื่อเมนู ตัวเลือก และข้อกำหนดล่าสุดจากเนื้อหาภาษาอังกฤษในหน้าเดียวกันก่อนดำเนินการกับระบบจริง

วัตถุประสงค์

บทความนี้อธิบายการสำรอง Database บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง

ก่อนเริ่มดำเนินการ

  • เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
  • ตรวจสอบชื่อ Environment, Region และ Resource เป้าหมายก่อนบันทึกการเปลี่ยนแปลง
  • สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production

Ruk-Com PaaS ได้จัดเตรียมกอง Database ที่ผ่านการรับรองทั้งหมดไว้ด้วยความสะดวกสบายและ Script ที่ตรงประเด็นสำหรับการสำรองข้อมูล ดังนั้นการประมวลผลนี้เรียบง่ายเพียงแค่ระบุ Parameter ที่ต้องการและสามารถทำได้โดยใช้เวลาเพียงไม่กี่นาที ในตัวอย่างนี้ไม่จำเป็นที่จะต้องมีความรู้เฉพาะทาง เพียงแค่ทำตามขั้นตอนการติดตั้งขั้นตอนการตั้งค่าเพื่อตั้งค่า crontab ที่เหมาะสม

นอกจากนี้ เราจะแสดงให้เห็นว่าคุณสามารถที่จะทำงานร่วมกับการสร้างการสำรองข้อมูลได้อย่างไร

สำหรับการสอนนี้ เราจะใช้ Database MySQL/MariaDB เป็นตัวอย่าง อย่างไรก็ตามขั้นตอนที่จำเป็นต่าง ๆ นั้นมีความคล้ายกับ Database ประเภทอื่นใน Ruk-Com Platform

การตั้งเวลาการสำรองข้อมูล

ใช้ Script สำหรับการสำรองข้อมูลที่เป็นค่าตั้งต้นเพื่อทำให้กระบวนการสร้างการสำรองข้อมูลเป็นไปอย่างอัตโนมัติและตั้งค่าเฉพาะต่าง ๆ ที่ต้องการ (เช่น ความถี่ในการสำรองข้อมูล, จำนวนที่ต้องการเก็บไฟล์ย้อนหลัง, อื่น ๆ ) ตามนี้ถ้าคุณยังไม่มี Environment ของ Database ให้ทำตามแนวทางการสร้าง Databaseเพื่อสร้างขึ้นมา

1. source code ของ Script นั้นสามารถดูได้โดยตรงจาก Dashboard คลิกที่ปุ่มการกำหนดค่าที่อยู่ถัดจาก Database เพื่อเปิด built-in file manager และค้นหาไฟล์/var/lib/Ruk-Com PaaS/bin/backup_script.sh

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

Script การสำรองข้อมูลนั้นไม่รองรับสำหรับกอง Redisที่ใช้ในการจัดเก็บ key-value โดยปกติแล้วมักใช้เป็นเพียงแค่ระบบ Caching หรือเก็บข้อมูลชั่วคราว

2.เพื่อดำเนินการ Script โดยอัตโนมัติ เราจะใช้ linkตัวกำหนดเวลา cronที่มีอยู่ใน Container แบบสำเร็จรูป เปิดไฟล์/var/spool/cron/MySQL และให้ใช้cron expression ตามรูปแบบต่อไปนี้

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

ในสคริปด้านบนจะเห็นว่าเราได้ทำตัวอย่างไว้แล้วในแต่ละ feature สามารถเอา Comment ออกเพื่อเปิดให้ Crontab ทำงาน หลังจากนั้นตั้งค่าส่วนต่างๆตามนี้

  • {ความถี่}– กำหนดเวลาของการเรียกใช้ Script (รายละเอียดดูได้จากลิงก์แนวทางด้านบน), เช่น */10 * * * * เพื่อสำรองข้อมูลทุก ๆ 10 นาที
  • {เส้นทางไปยัง Script}- ชี้ไปยัง Script ที่ต้องการ (Script การสำรองข้อมูลค่าเริ่มต้นได้ตั้งไว้ที่ /var/lib/Ruk-Com PaaS/bin/backup_script.sh)
  • {Script-Parameter}– จัดเตรียม Parameter ที่กำหนดเองสำหรับคริปต์ที่กำหนด; สิ่งต่อไปนี้มีอยู่ในกรณีของเรา:
  • -m {โหมด}เพื่อสำรองข้อมูลทั้งหมดหรือบางส่วนของ Database ("-m dumpall" หรือ "-m dump" ตามลำดับ)
  • -c {นับ}กำหนดตัวเลขของการสำรองข้อมูลอันเก่าเพื่อจัดเก็บ (เช่น "-c 3" เพื่อเก็บการสำรองข้อมูลเก่า 3 ชุดเช่น 1 2 3 1 2 3 ไฟล์จะถูกทับไปเรื่อยๆเพื่อไม่ให้เปลืองพื้นที่
  • -u {ผู้ใช้}และ-p {รหัสผ่าน}รหัสผ่านสำหรับเข้าถึงสำหรับ Database (จะได้รับทาง Email หลังจากสร้าง Env เสร็จ)

ถ้า {password} ของคุณมีตัวอักขระพิเศษ ควรครอบด้วย " นอกจากนี้ เนื่องจากความเฉพาะของ cron คุณจำเป็นที่จะต้องเพิ่มอักษรแบบ escaping อย่างสัญลักษณ์ % โดยการเพิ่ม backslash เข้าไปก่อนหน้า ตัวอย่างเช่น -p "passw\\%rd"

  • -d {Database}และ-t {ตาราง}เพื่อระบุรายการเลือกของ Database ("-d db1[, db2, db3….]") หรือ ตารางที่อยู่ใน Database ("-d db -t table1[, table2, table3….]") เพื่อสำรองข้อมูล

3. ตัวอย่าง ถ้าคุณต้องการสำรองข้อมูลทั้งหมดจาก Database ทุก ๆ 10 นาที ด้วยการช่วยเหลือจาก Script เริ่มตั้น ถ้าเช่นนั้นสตริงควรเป็นตามนี้

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

บันทึกการตั้งค่าเพื่อนำไปใช้

4.เพื่อที่จะจัดเก็บข้อมูลบน Node ของ Container อื่นหรือการรีโมท Server สามารถที่จะกำหนดค่าMount Pointที่เหมาะสม สำหรับ Database ของคุณ

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

ข้อมูลต่าง ๆ ที่มีอยู่ในโฟลเดอร์Mount Pointจะถูกแทนที่ด้วยไฟล์จาก Directory ที่มากจากการรีโมท

ตรวจสอบการสำรองข้อมูล

รอให้สคริปดำเนินการ (ขึ้นอยู่กับความถี่ของ cron ที่ได้กำหนดค่าไว้) และไปที่โฟลเดอร์/var/lib/Ruk-Com PaaS/backup 

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

ถ้าดำเนินการสำรองข้อมูลเสร็จสิ้น คุณจะเห็น bz2 จัดเก็บไว้ใน Directory

ดาวน์โหลดการสำรองข้อมูล

มีตัวเลือกที่หลากหลายสำหรับการดาวโหลดไฟล์จาก Ruk-Com Container

1. ในทางตรงทีสุดคือการใช้Configuration File Managerโดยตรงใน Dashboard

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

ค้นหาไฟล์ที่ต้องการ วางเมาส์ไว้เหนือตำแหน่ง และกดดาวน์โหลดจากเมนูที่แสดง

2.ตัวเลือกอีกอย่างคือใช้การเชื่อมต่อProtocol SFTP/FISH

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

รายละเอียดการเข้าถึงที่จำเป็นสามารถดูได้ใน Dashboard

3.นอกจากนี้ยังสามารถติดตั้งFโปรแกรมเสริม TPสำหรับ Database เพื่อจัดการไฟล์ผ่าน FTP

Public IPaddress นั้นจำเป็นสำหรับตัวเลือกนี้ หากมีความจำเป็นมันจะเชื่อมต่อกับ Node โดยอัตโนมัติระหว่างการติดตั้งส่วนเสริม

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

คุณสามารถเลือกตัวเลือกใดก็ได้ ตามความต้องการของคุณ

การกู้คืน Database

ในกรณีที่จำเป็น คุณสามารถกู้คืน Database จากการสำรองข้อมูลได้อย่างง่าย จากตัวอย่าง MySQL ของเรา ให้ทำตามขั้นตอนที่จำเป็นต่อไปนี้ :

1. เข้าไปยังพาเนล phpMyAdmin ด้วยรายละเอียดจากอีเมลที่ได้รับหลังจากการสร้าง DB Node

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

2. ไปที่แท็บ Import ติ๊กตัวเลือก Browse your computer และใช้ปุ่มเลือกไฟล์เพื่ออัปโหลดการสำรองข้อมูลที่จำเป็น

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

กดปุ่ม Go ที่อยู่ด้านล่างของหน้า

3.เมื่อการนำเข้าสำเร็จเรียบร้อย คุณจะเห็นการแจ้งเตือนขึ้นในพาเนลแอดมิน

ภาพประกอบขั้นตอนการใช้งาน Ruk-Com Cloud PaaS

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