Nhân dịp vừa viết Restic Multi-Cloud Backup Manager để quản lý phần backup, restore cho thèng Docker LCMP Multisite, tiện thể thử nghiệm trên VPS UpCloud cấu hình thấp nhất, xem có thể chạy nổi không
CPU Cores | Memory | Storage | Price / Month |
---|---|---|---|
1 core | 1 GB | 10 GB | €3.00 |
Cấu hình này gần tương tự với gói Vultr mình dùng trên thèng bibica.net từ những ngày đầu (~$2.5/1 tháng), nói tới đây lại thấy thanh niên UpCloud đúng ảo, €3 ở 2025 mà gần x2 lượng RAM ở 2017, gói thì bán quá đắt, gọi thì lại rẻ phi lý
Restore toàn bộ dữ liệu trên VPS mới
Cài đặt Rclone, Restic xong rồi chỉ cần thêm 2 dòng code để restore chính xác mọi thứ như ban đầu
export RESTIC_PASSWORD="your-secure-password" restic restore -r rclone:cloudflare-free:bibica-net latest --target /
So với cách restore truyền thống, đa phần phải download file zip về, giải nén, chép lại vị trí cũ
# Tạo thư mục tạm thời để giải nén bản sao lưu. mkdir -p /var/backups/lcmp/tmp # Giải nén dữ liệu zstd -d /var/backups/lcmp/backup.tar.zst --stdout | tar -xvf - -C /var/backups/lcmp/tmp # Khôi phục dữ liệu về vị trí cũ cp -a /var/backups/lcmp/tmp/home/ / cp -a /var/backups/lcmp/tmp/var/spool/cron/crontabs/root /var/spool/cron/crontabs/ # Xóa tất cả file backup và file rác cho sạch sẽ VPS mới rm -rf /var/backups/lcmp
Sử dụng Restic tiện hơn, vì nó tự chép chính xác lại các file, thư mục vào vị trí ban đầu, không phải làm thủ công bước nào, hạn chế các sai sót
Do Restic chia thành cực kì nhiều file nhỏ trên cloud storage, công đoạn restore toàn bộ dữ liệu trên 1 VPS cấu hình thấp nhất (CPU yếu) khá tệ, ngoài chuyện nó lệ thuộc vào cấu hình CPU, nó cũng rất lệ thuộc vào tốc độ của cloud storage, thậm chí ở lần chạy đầu tiên, nó cũng phải mất thời gian tạo 1 số dữ liệu ban đầu
Trên Google Drive, mình thử thấy 3-4 phút nó mới kéo xong 2.3 GB dữ liệu, trên Cloudflare R2 tốc độ có khá khẩm hơn, tầm 30-45s
Restore kiểu truyền thống, dù nhìn nhiều công đoạn, khá dễ sót các bước, nhưng nếu viết thành bash script chạy tự động, tổng thời gian đa phần chỉ là thời gian download 1GB dữ liệu đã nén từ cloud storage, sau đó thì chạy như ăn cướp, đa phần 10-15s là làm xong tất cả công đoạn
Về thời gian restore toàn bộ dữ liệu trên 1 VPS mới, Restic có khá nhiều khuyết điểm, mà các khuyết điểm này đều bắt nguồn từ ưu điểm của nó, đây có lẽ là sự đánh đổi hợp lý 😀 vì 5 thì 10 họa chúng ta mới phải restore lại toàn bộ dữ liệu như này
Tất nhiên ở điều kiện sử dụng khác, kiểu bạn có 1 con VPS khỏe, cloud storage dạng Amazon S3, Cloudflare R2 cho tốc độ nhanh, ổn định, thời gian restore dữ liệu về sẽ nhanh hơn, nhưng có nhanh hơn nữa, thì cũng không thể hạ xuống 10-15s như cách zip truyền thống được
Nói chung, trang nhỏ, dùng Restic ổn, chứ dữ liệu tầm 100GB hay tính hàng TB, tốc độ restore rùa bò thế này thì toang hẳn
Về ý liên quan tới công nghệ dạng deduplication, đều sẽ bị lỗi “file changed while we backed it up
, nôm na nếu truy cập vào 1 file đang được 1 ứng dụng khác sử dụng, kiểu MariaDB ghi log xuống file, lúc này các tool có tính năng deduplication đọc file log này, sẽ báo lỗi, trên BorgBackup rất dễ xử lý, khi chạy gặp lỗi này thì tạm ngừng quá trình, chờ 10-30s sau thử lại, mọi thứ sẽ được đảm bảo sao lưu chính xác 100% dữ liệu
Trên Restic thì không thấy báo lỗi này, nên mình cũng chịu 😀 nay thử nghiệm restore thì thấy mọi thứ bình thường, không hiểu Restic sử lý vấn đề này kiểu gì luôn
Hiệu năng Restic Multi-Cloud Backup Manager
Kiểm tra log, ở điều kiện chạy backup, kiểm tra toàn bộ dữ liệu lúc 4h sáng, mất gần 90s
[2025-01-25 04:00:01] Bắt đầu backup - cloudflare-free:bibica-net [2025-01-25 04:00:14] Backup thành công [2025-01-25 04:00:14] Bắt đầu dọn dẹp backup cũ [2025-01-25 04:00:18] Dọn dẹp backup cũ thành công [2025-01-25 04:00:18] Bắt đầu kiểm tra toàn vẹn dữ liệu [2025-01-25 04:01:17] Kiểm tra toàn vẹn dữ liệu thành công [2025-01-25 04:01:17] Bắt đầu sao lưu dự phòng [2025-01-25 04:01:17] Có 1 remote được cấu hình [2025-01-25 04:01:26] Sao lưu dự phòng thành công - google-drive-api:bibica-net [2025-01-25 04:01:26] Hoàn tất quy trình backup
Ở các lần chạy khác trong ngày, chỉ backup loanh quanh 30-45s
[2025-01-25 04:15:01] Bắt đầu backup - cloudflare-free:bibica-net [2025-01-25 04:15:14] Backup thành công [2025-01-25 04:15:14] Bắt đầu dọn dẹp backup cũ [2025-01-25 04:15:27] Dọn dẹp backup cũ thành công [2025-01-25 04:15:27] Bắt đầu sao lưu dự phòng [2025-01-25 04:15:27] Có 1 remote được cấu hình [2025-01-25 04:15:35] Sao lưu dự phòng thành công - google-drive-api:bibica-net [2025-01-25 04:15:35] Hoàn tất quy trình backup
Khi chạy loanh quanh 20%-90% CPU, tùy thuộc vào tình hình VPS lúc đó, sẽ tự được cân đối qua renice
, ionice
, khi chạy
Tổng thể không có gì phàn nàn trên 1 con VPS cấu hình thấp như thế 😀
Hiệu năng Docker LCMP Multisite
Trong đó bao gồm trang bibica.net, 2 trang wordpress test, artalk, umami, myip … nhìn khá ngu người, VPS 1GB RAM trước đây đa phần mình chỉ cài 1 trang WordPress và Artalk làm comment, hiếm khi nhét cả đống thứ vào như thế
- Kiểm tra dung lượng
Filesystem | Size | Used | Avail | Use% | Mounted on |
---|---|---|---|---|---|
udev | 430M | 0 | 430M | 0% | /dev |
tmpfs | 88M | 1.3M | 87M | 2% | /run |
/dev/vda1 | 9.8G | 7.1G | 2.3G | 77% | / |
tmpfs | 440M | 0 | 440M | 0% | /dev/shm |
tmpfs | 5.0M | 0 | 5.0M | 0% | /run/lock |
Đây là bước thường không bao giờ mình nhìn, mà nay do VPS có 10 GB space à, nên phải check lại coi làm sao thì thấy còn dư ra được 2.3GB 😀 khi chạy backup truyền thống, giai đoạn này chỉ còn 881M ổ cứng 😀
Nhìn lượng RAM sau khi chạy ~ 10h cũng hơi rén 😀 dùng gần 2/3 lượng RAM rồi, không biết nó có đủ sức chạy 24/24 nhiều tháng với quá xá thứ cài lên đó như vậy không 😀 (thường sau khi chạy vài tháng, lượng RAM dùng sẽ x2 con số hiện tại)
Vấn đề hơi ảo game là dù nhìn thông số RAM, CPU, cái vẹo gì cũng phò, mà viết bài, thao tác trong quản trị vẫn mượt như bơ, mỗi lần ấn save draft thấy dùng ~ 30% CPU, con số rất ư là bình thường luôn
PHP v8.4: bibica/wordpress-wp-cli-php8.4-fpm-alpine-minial Caddy v2.9.1: caddy:2.9.1-alpine MariaDB v10.11.10: mariadb:10.11.10
Các phiên bản images cơ bản là chính thức, các cấu hình PHP, MariaDB dùng mặc định như cấu hình từ Docker LCMP Multisite tạo ra
Tiện thể thử nghiệm mọi phiên bản plugin tự viết trên con VPS UpCloud cấu hình thấp nhất, tính năng nặng nhất là tự preload cache khi viết bài, sửa bài, chạy thử thì thấy cũng nhẹ, không gặp vấn đề gì liên quan tới hiệu năng 😀
Cuối cùng là tính năng nặng nhất mà thèng bibica.net đang dùng là plugin Simply Static để tạo trang tĩnh
Khi chạy nó bào CPU gần 80% công xuất luôn 😀 mà thời gian hoàn thành khá nhanh, có thể vì con VPS này tốc độ đọc ghi ổ cứng cao hơn
Hiệu quả thực tế?
Dù cấu hình VPS khá yếu, nhưng với các user, có khi bạn sẽ thấy nhanh hơn trước đây, do location là Singapore, nhất là ở khoản comment :]]
Thậm chí tới mình, nếu không coi thông số phần cứng, thuần túy chỉ dùng và chạy, không thấy tốc độ chậm hơn tẹo nào, cũng hơi bất ngờ, vì giá con VPS này chỉ 3€ /1 tháng mà chạy quá trời dịch vụ bên trong luôn
Chính sách bình luận: Chúng tôi rất trân trọng các bình luận của bạn và cảm ơn thời gian bạn dành để chia sẻ ý tưởng và phản hồi.
Ghi chú: Những bình luận được xác định là spam hoặc chỉ mang tính quảng cáo sẽ bị xóa.
• Để cải thiện trải nghiệm bình luận, chúng tôi khuyến khích bạn tạo một tài khoản Gravatar. Thêm avatar vào tài khoản Gravatar sẽ giúp bình luận của bạn dễ nhận diện hơn đối với các thành viên khác.
• ✂️ Sao chép và 📋 Dán Emoji 💪 giúp bình luận thêm sinh động và thú vị!