Mục lục1. Quản lý VPS bằng API là gì và khi nào nên dùng2. Những thao tác API của Cloudzone đang hỗ trợ3. Viết script bật tắt VPS theo lịch3.1 Bước 1: Lấy danh sách máy cần điều khiển3.2 Bước 2: Gửi lệnh tắt hoặc bật3.3 Bước 3: Kiểm tra lại trạng thái3.4 Bước 4: Đặt lịch chạy4. Snapshot và sao lưu: kết hợp thế nào cho an toàn5. Vài lưu ý khi tự động hoá6. Câu hỏi thường gặp6.1 Tắt VPS bằng API có làm mất dữ liệu không?6.2 Tôi không phải đại lý thì có dùng API được không?6.3 Nên chạy script trên máy nào?
1. Quản lý VPS bằng API là gì và khi nào nên dùng
API (giao diện lập trình ứng dụng) là cửa để phần mềm của bạn ra lệnh cho hệ thống của nhà cung cấp, thay cho việc bạn bấm nút trên giao diện web. Quản lý VPS bằng API nghĩa là mọi thao tác quen thuộc như xem danh sách máy, bật, tắt, khởi động lại đều được gửi đi bằng một yêu cầu HTTP, và bạn đặt chúng vào script hoặc lịch chạy tự động.
Bạn nên cân nhắc cách này khi gặp một trong các tình huống sau:
- Số máy đủ nhiều để thao tác tay bắt đầu tốn thời gian và dễ sót.
- Có máy chỉ cần chạy theo khung giờ, ví dụ môi trường thử nghiệm hay máy chạy báo cáo cuối ngày.
- Bạn là đại lý hoặc có hệ thống riêng, muốn khách cuối thao tác VPS ngay trên phần mềm của bạn.
- Đội vận hành muốn một bảng tổng hợp trạng thái máy mỗi sáng mà không cần ai mở portal.
Với vài máy chạy liên tục, giao diện web vẫn đủ dùng. API phát huy khi việc lặp lại đều đặn và số máy tăng dần.
2. Những thao tác API của Cloudzone đang hỗ trợ
Cloudzone cung cấp API cho đại lý và khách hàng có hệ thống riêng. Quyền dùng API được đăng ký ngay trong Portal, chi tiết có trong bài API Cloudzone: tự đăng ký quyền ngay trong Portal.
Với Cloud VPS, nhóm điểm cuối quản lý dịch vụ đang có gồm:
| Phương thức | Đường dẫn | Chức năng |
| GET | /vps-vn/get-list-vps | Danh sách VPS Việt Nam |
| GET | /vps-vn/get-detail-vps | Chi tiết một VPS |
| POST | /vps-vn/action-vps | Bật, tắt, khởi động lại, cài lại VPS |
| GET | /vps-nn/get-list-vps · /vps-nn/get-detail-vps | Danh sách, chi tiết VPS nước ngoài |
| POST | /vps-nn/action-vps | Thao tác VPS nước ngoài |
Ngoài VPS, API còn có nhóm điểm cuối cho Proxy, Hosting và gói lưu trữ Cloudzone Box.
Tên tham số và cách xác thực của từng lệnh, bạn lấy đúng theo tài liệu API được cấp khi đăng ký quyền. Đừng đoán tên trường, vì chỉ cần sai một chữ là yêu cầu bị từ chối.
3. Viết script bật tắt VPS theo lịch
Quay lại tình huống 12 máy thử nghiệm ở đầu bài. Một script bật tắt theo lịch thường gồm bốn bước.
3.1 Bước 1: Lấy danh sách máy cần điều khiển
Gọi GET /vps-vn/get-list-vps để lấy toàn bộ VPS trong tài khoản. Sau đó lọc ra đúng các máy thuộc nhóm thử nghiệm, ví dụ theo tên máy bắt đầu bằng test-. Đừng để script thao tác trên mọi máy, vì chỉ một lần lọc sai là máy chủ đang phục vụ khách cũng bị tắt.
3.2 Bước 2: Gửi lệnh tắt hoặc bật
Với mỗi máy trong danh sách, gửi POST /vps-vn/action-vps kèm mã máy và loại thao tác. Khung vòng lặp tắt máy trong script bash có thể như sau (địa chỉ API, khoá API và tên tham số lấy theo tài liệu được cấp):
for id in $(lay_danh_sach_vps_test); do
gui_lenh_vps "$id" "tat"
echo "$(date '+%F %T') da gui lenh tat VPS $id" >> /var/log/vps-lich.log
sleep 2
done
Hai hàm lay_danh_sach_vps_test và gui_lenh_vps là nơi bạn đặt lời gọi curl đúng theo tài liệu. Tách riêng như vậy để khi đổi tham số, bạn chỉ sửa một chỗ.
3.3 Bước 3: Kiểm tra lại trạng thái
Sau khi gửi lệnh, gọi GET /vps-vn/get-detail-vps cho từng máy để chắc máy đã thật sự tắt hay bật. Lệnh gửi đi thành công chưa chắc máy đã đổi trạng thái, đặc biệt với thao tác khởi động lại.
3.4 Bước 4: Đặt lịch chạy
Trên một máy Linux luôn bật, dùng cron để chạy script tắt lúc 19:00 và script bật lúc 7:30 các ngày trong tuần:
0 19 * * 1-5 /opt/vps-lich/tat.sh
30 7 * * 1-5 /opt/vps-lich/bat.sh
Nếu chưa quen cron hay các lệnh cơ bản, bài Các câu lệnh Linux cần biết để quản trị VPS là điểm khởi đầu phù hợp.
4. Snapshot và sao lưu: kết hợp thế nào cho an toàn
Snapshot là bản chụp trạng thái ổ đĩa của máy tại một thời điểm. Nó hữu ích ngay trước một thao tác rủi ro như cài lại phần mềm, nâng cấp hệ điều hành hay đổi cấu hình lớn. Nếu có sự cố, bạn quay về bản chụp thay vì dựng lại từ đầu.
Trên nền tảng sPortal, thao tác tạo snapshot, rebuild hệ điều hành và quản lý bản sao lưu được thực hiện qua giao diện web. Nhóm điểm cuối VPS trong bảng ở trên hiện tập trung vào bật, tắt, khởi động lại và cài lại máy. Vì vậy cách làm hợp lý là: script lo việc lặp lại hằng ngày, còn snapshot trước thao tác rủi ro thì bạn chủ động tạo trên portal.
Snapshot cũng không thay được sao lưu định kỳ, vì nó thường nằm cùng hệ thống với máy gốc. Với dữ liệu quan trọng, Backup as a Service của Cloudzone sao lưu theo lịch ít nhất 1 lần/ngày, giữ ít nhất 14 bản gần nhất, và lưu trên hệ thống lưu trữ riêng tách biệt. Bạn đặt được giờ sao lưu khác nhau trong ngày, tránh trùng với khung giờ script bật tắt máy.
5. Vài lưu ý khi tự động hoá
- Giữ khoá API như mật khẩu: lưu trong biến môi trường hoặc tệp chỉ người quản trị đọc được, không dán vào mã nguồn hay gửi qua tin nhắn.
- Ghi nhật ký mọi lệnh: máy nào, lệnh gì, lúc nào, kết quả ra sao. Khi có người hỏi vì sao máy tắt, bạn có câu trả lời ngay.
- Chạy thử trên một máy trước: kiểm tra kỹ bộ lọc danh sách rồi mới cho script chạy trên cả nhóm.
- Đừng tự động lệnh cài lại máy: thao tác này xoá dữ liệu trên ổ đĩa, nên để người thật xác nhận.
Cloud VPS của Cloudzone chạy trên chip Intel Xeon Platinum, lưu trữ Enterprise SSD/NVMe, uptime 99,99%, giá từ 100.000đ/tháng (chưa gồm VAT), đặt tại 6 cụm Data Center ở TP.HCM đạt chuẩn TIA-942 Rated 3.
6. Câu hỏi thường gặp
6.1 Tắt VPS bằng API có làm mất dữ liệu không?
Không. Lệnh tắt chỉ dừng hệ điều hành, dữ liệu trên ổ đĩa vẫn giữ nguyên và máy chạy lại bình thường khi bật. Thao tác cần cẩn trọng là cài lại máy, vì nó xoá dữ liệu trên ổ đĩa.
6.2 Tôi không phải đại lý thì có dùng API được không?
Khách hàng có hệ thống riêng cũng đăng ký quyền API ngay trong Portal. Bài hướng dẫn đăng ký được liên kết ở mục thứ hai.
6.3 Nên chạy script trên máy nào?
Chọn một máy luôn bật và không nằm trong nhóm bị tắt theo lịch, ví dụ một VPS nhỏ chuyên chạy công cụ quản trị. Nếu script nằm trên chính máy bị tắt, nó sẽ không bao giờ bật lại được.