วิธี Backup data บน Dedicated Server

บทความโดย : แอดมิน Limitrack.com Link : http://docs.limitrack.com/books/backup-data-dedicated-server

ทำไม Backup data จึงสำคัญสำหรับ Dedicated Server ?

Dedicated Server เป็นบริการเช่า Server ในรูปแบบที่ลูกค้าใช้เครื่อง Server เครื่องนั้นแต่เพียงผู้เดียว  ลูกค้าบริหารจัดการ Resource ในเครื่องได้เต็มที่ 100% โดยไม่ต้องใช้ร่วม Resource กับผู้อื่น

Limitrack จัดเตรียมเครื่อง Dedicated Server และติดตั้ง OS ให้ลูกค้า  หลังจากนั้น Software และ Data ทุกอย่างภายในเครื่องลูกค้าจะเป็นผู้บริหารจัดการเอง   โดย Limitrack ไม่มีสิทธิ์เข้าถึง Data ของลูกค้า  ดังนั้น Limitrack จึงไม่สามารถสำรองข้อมูล ( Backup data ) ภายในเครื่องให้ลูกค้าได้ ลูกค้าจำเป็นต้องสำรองข้อมูลภายใน Server ของท่านเอง

ทำไมควรสำรองข้อมูล ( Backup data ) ?

การสำรองข้อมูล  ก็เพื่อป้องกันกรณีเกิดเหตุการณ์ฉุกเฉิน เช่น เครื่องโดน Ransomware , ติด Virus , ลูกค้าเผลอลบข้อมูล , Disk รวน/เสียหาย  เป็นต้น


เราจะ Backup data บน Dedicated Server ด้วยวิธีใดได้บ้าง ?

การสำรองข้อมูลในเครื่อง Dedicated Server มีหลากหลายวิธี  ขึ้นอยู่กับลักษณะงานของลูกค้า  หรือเลือกตามความถนัดของลูกค้า เช่น

- บางท่านอาจจะไม่สำรองข้อมูลเลย  เพราะใช้รันโปรแกรมอย่างเดียวเท่านั้น  ไม่มีข้อมูลสำคัญ

- บางท่านสำรองข้อมูล file/folder ไว้ใน Harddrive อีกลูกนึง  เพื่อป้องกัน Disk หลักชำรุด/เสียหาย

- บางท่านสำรองข้อมูล file/folder ไว้ใน Personal Cloud Drive เช่น Dropbox , Google Drive , One Drive , Box เป็นต้น

- บางท่านสำรองข้อมูล file/folder ไว้เก็บไว้ใน Business Cloud Storage เช่น Amazon S3 , Azure Cloud Storage , Google Cloud Storage , Backblaze B2 , Akamai Storage , SugarSync , FTP/SFTP , SMB Server เป็นต้น

การทำ RAID ไม่ใช่การ Backup data

การทำ RAID บน Disk เป็นการเพิ่มประสิทธิภาพ ( ความเร็ว/ความจุ ) ให้กับ Disk และช่วยป้องกัน Data เสียหายกรณี Disk ชำรุด/ขัดข้องเท่านั้น  ดังนั้น การทำ RAID จึงไม่ใช่การสำรองข้อมูล ( Backup data )

หาก Disk ที่ทำ RAID เกิดโดน Ransomware หรือ Virus หรือเผลอลบไฟล์สำคัญไป  เราจึงไม่สามารถกู้ข้อมูลได้จาก RAID นั่นเอง

เปรียบเทียบ Software สำหรับ Backup data ในกลุ่ม Opensource

ทำไมเลือก Opensource ?

ที่ Limitrack เราจะเน้นใช้งาน Software แบบ Opensource เป็นหลัก  เนื่องจากยืดหยุ่น  อิสระ  และ scale ได้โดยไม่ต้องกังวลเรื่องค่าใช้จ่าย

และ Software แบบ Opensource ในปัจจุบันมีชุมชนที่เข้มแข็ง  Opensource หลายๆตัวมีประสิทธิภาพเหนือกว่า Software แบบ Commercial

ดังนั้น  ในบทความนี้แอดมินจะขอแนะนำ Software สำหรับ Backup data แบบ Opensouce ให้ท่าน

โดยระบบภายใน Limitrack เราเลือกใช้ Rsync , Duplicity , Duplicati , Duplicacy , Rclone , UrBackup , ...

ซึ่งแต่ละตัวก็จะมีความเหมาะสมกับชนิดของ Data / OS / วิธี Backup ที่แตกต่างกันไป


newrsynclogo.jpg

Rsync

ข้อดี

ข้อเสีย



2022-12-18_15-52-07.jpg

Duplicity

ข้อดี

ข้อเสีย


Duplicati-logo.jpg

Duplicati

ข้อดี

ข้อเสีย



index.jpg

Duplicacy

ข้อดี

ข้อเสีย



rclone.gifRclone

ข้อดี

ข้อเสีย




images.jpgUrBackup

ข้อดี

ข้อเสีย



ความเห็นแอดมิน

แต่ละตัวจะเหมาะกับงานที่แตกต่างกัน  โดยสรุปสั้นๆดังนี้

Backup data ด้วย Rclone

Backup data ด้วย Rclone

ใช้ Rclone สำรองข้อมูลบน Linux ไปไว้ใน Google Drive

เตรียม

- แอดมินใช้ Debian 64 bit เป็น Data ฝั่ง Source

- แอดมินใช้ Google Drive เป็น Data ฝั่ง Destination

ติดตั้ง Package พื้นฐาน

apt install sudo curl unzip

ติดตั้ง Rclone

curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
unzip rclone-current-linux-amd64.zip
cd rclone-*-linux-amd64
sudo cp rclone /usr/bin/
sudo chown root:root /usr/bin/rclone
sudo chmod 755 /usr/bin/rclone

ตั้งค่า Rclone

rclone config

No remotes found, make a new one?
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n

Enter name for new remote.
name> Gdrive

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.

Storage> 18

Option client_id.
Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a value. Press Enter to leave empty.
client_id> XXXXXXXXXXXXXXXXXXXXXXX

Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_secret> XXXXXXXXXXXXXXXXXXXXXXX

scope> 1

Option service_account_file.
Service Account Credentials JSON file path.
Leave blank normally.
Needed only if you want use SA instead of interactive login.
Leading `~` will be expanded in the file name as will environment variables such as `${RCLONE_CONFIG_DIR}`.
Enter a value. Press Enter to leave empty.
service_account_file>

Edit advanced config?
y) Yes
n) No (default)
y/n> n

Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine

y) Yes (default)
n) No
y/n> n

Option config_token.
For this to work, you will need rclone available on a machine that has
a web browser available.
For more help and alternate methods see: https://rclone.org/remote_setup/
Execute the following on the machine with the web browser (same rclone
version recommended):
        rclone authorize "drive" "XXXXXXXXXXXXXXXXXXXXX"
Then paste the result.
Enter a value.
config_token> XXXXXXXXXXXXXXXXXXXXX

Configure this as a Shared Drive (Team Drive)?

y) Yes
n) No (default)
y/n> n

Configuration complete.
Options:
- type: drive
- scope: drive
- team_drive:
Keep this "Gdrive" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

Current remotes:

Name                 Type
====                 ====
Gdrive               drive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q

List ดูไฟล์ใน Google Drive

rclone ls remote:

Copy ไฟล์ไปไว้ใน Google Drive

rclone copy /home/source remote:backup

Sync ไฟล์ไปไว้ใน Google Drive

rclone sync /home/source remote:backup

ดูคำสั่งอื่นๆของ Rclone

https://rclone.org/commands/

Backup data ด้วย Duplicati

Backup data ด้วย Duplicati

ใช้ Duplicati สำรองข้อมูลด้วย

Duplicati เป็นซอฟท์แวร์ Bakcup แบบโอเพ่นซอร์สฟรีที่ให้คุณสร้างข้อมูลสำรองของ File และ Folder และจัดเก็บไว้ในตำแหน่งต่างๆ รวมถึงที่เก็บข้อมูลในเครื่อง ( Local ) เซิร์ฟเวอร์ระยะไกล ( Remote Location ) และบริการที่เก็บข้อมูลบนคลาวด์ (Cloud)

หากต้องการใช้ Duplicati คุณต้องติดตั้งลงในคอมพิวเตอร์ของคุณก่อน ดูคำแนะนำในการติดตั้งได้ที่ https://www.duplicati.com/download

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

     1. เปิด Duplicati แล้วคลิกปุ่ม "เพิ่มข้อมูลสำรอง"
     2. เลือก File/Folder ที่คุณต้องการ Backup
     3. เลือกปลายทางสำหรับการสำรองข้อมูล ซึ่งอาจเป็นโฟลเดอร์ในเครื่อง ไดรฟ์เครือข่าย หรือบริการพื้นที่เก็บข้อมูลบนคลาวด์ เช่น Google Drive หรือ Amazon S3 ก็ได้
     4. เลือกกำหนดการสำรองข้อมูลและตัวเลือกอื่นๆ ที่คุณต้องการใช้ เช่น การเข้ารหัสหรือการบีบอัด
     5. คลิกปุ่ม "เริ่มการสำรองข้อมูล" เพื่อเริ่มกระบวนการสำรองข้อมูล

คุณสามารถดูข้อมูลเพิ่มเติมและคำแนะนำโดยละเอียดเกี่ยวกับการใช้ Duplicati ได้ที่ https://www.duplicati.com/