VPS Swap là bộ nhớ ảo trên hệ điều hành Linux. Nó được các doanh nghiệp sử dụng để tránh tình trạng hết bộ nhớ khiến server ngừng hoạt động. Vậy làm thế nào để tạo Swap cho VPS? ITXIN sẽ hướng dẫn bạn qua bài viết dưới đây. Hãy cùng theo dõi để tìm hiểu rõ hơn nhé.
Mục lục
- 1. Tại Sao Nên Dùng VPS Swap?
- Bước 1: Bạn cần kiểm tra xem hệ thống đã được kích hoạt swap chưa bằng cách chạy lệnh sau:
- Bước 1: Để tạo swap cho VPS Linux, ta dùng lệnh sau:
- Bước 2: Tiến hành kiểm tra lại xem VPS Swap được tạo có xảy ra lỗi gì không bằng lệnh:
- Bước 3: Bạn cấp quyền swap bằng lệnh:
- Bước 4: Bạn định dạng lại cho file swap bằng lệnh:
- Bước 5: Sau khi đã có file swap, bạn có thể kích hoạt hệ thống để sử dụng file này bằng lệnh:
- Bước 6: Để biết chắc file swap đã được kích hoạt trên VPS, bạn có thể kiểm tra bằng lệnh
- Bước 7: Nếu muốn swap tự động kích hoạt khi reboot lại VPS, hãy chạy lệnh sau:
- 4. Cấu Hình Tham Số Swappiness
1. Tại Sao Nên Dùng VPS Swap?
Swap sử dụng tài nguyên của ổ cứng để làm bộ nhớ ảo chạy các ứng dụng. nếu VPS của bạn không tạo Swap, khi hết RAM, hệ thống sẽ dừng service MySQL và trang web sẽ không hoạt động được.
Tuy nhiên, tốc độ của ổ cứng chậm hơn RAM nên việc tạo VPS Swap chỉ để dự phòng cho trường hợp hết bộ nhớ vật lý mà thôi. Bạn không nên lạm dụng Swap vì sẽ làm giảm hiệu năng của hệ thống. Nếu tình trạng hết RAM xảy ra nhiều, bạn hãy tối ưu server hoặc tăng cache, nâng cấp RAM. Ngoài ra, việc tạo swap chỉ nên làm khi VPS của bạn sử dụng ổ cứng SSD hoặc RAID-10. Với các VPS dùng công nghệ ảo hóa OpenVZ, bạn không cần tạo swap vì nó sẽ được hệ thống tự động kích hoạt sẵn.
2. Kiểm Tra VPS Swap Và Dung Lượng Hệ Thống
Để kiểm tra bạn cần phải SSH vào VPS của bạn. Nếu chưa biết SSH vui lòng tham khảo hướng dẫn tại đây.
Bước 1: Bạn cần kiểm tra xem hệ thống đã được kích hoạt swap chưa bằng cách chạy lệnh sau:
free -m

Nếu các thông số của swap bằng 0 thì nghĩa là VPS chưa được tạo swap.
Bước 2: Bạn cần kiểm tra dung lượng ổ cứng còn trống bằng cách dùng lệnh
df -h

Như dòng trên thì VPS mình 30GB và còn trống 27GB có thể thoải mái tạo SWAP 2->4GB
3. Tạo VPS Swap
Bước 1: Để tạo swap cho VPS Linux, ta dùng lệnh sau:
dd if=/dev/zero of=/swapfile count=2048 bs=1MiB
Lệnh này sẽ tạo swap có dung lượng 2Gb. Bạn có thể thay count=2048 bằng count=4096 hoặc bất kỳ con số khác để tạo dung lượng 4Gb hoặc hơn. Dung lượng tối đa của VPS Swap chỉ nên gấp đôi dung lượng của RAM vật lý.
Bước 2: Tiến hành kiểm tra lại xem VPS Swap được tạo có xảy ra lỗi gì không bằng lệnh:
ls -lh /swapfile
Nếu như ảnh dưới thì có nghĩa đã có swap được tạo

Bước 3: Bạn cấp quyền swap bằng lệnh:
chmod 600 /swapfile
Bước 4: Bạn định dạng lại cho file swap bằng lệnh:
sudo mkswap /swapfile
Bước 5: Sau khi đã có file swap, bạn có thể kích hoạt hệ thống để sử dụng file này bằng lệnh:
swapon /swapfile
Bước 6: Để biết chắc file swap đã được kích hoạt trên VPS, bạn có thể kiểm tra bằng lệnh
free -m
Hiển thị như ảnh sau có nghĩa bạn đã tạo thành công 2GB swap

Bước 7: Nếu muốn swap tự động kích hoạt khi reboot lại VPS, hãy chạy lệnh sau:
echo /swapfile none swap defaults 0 0 >> /etc/fstab
4. Cấu Hình Tham Số Swappiness
Tham số Swappiness là mức độ ưu tiên sử dụng swap, cho biết thời điểm nào sẽ dùng VPS Swap. Nó có giá trị từ 0 – 100 (tính bằng %).
swappiness = 0: có nghĩa là sử dụng swap khi RAM được dùng hết.
swappiness = 50: có nghĩa là sử dụng swap khi RAM còn 50%.
swappiness = 100: có nghĩa là swap được sử dụng đồng thời với RAM.
Tốc độ xử lý của RAM cao hơn nhiều so với Swap. Do đó, hãy đặt giá trị swappiness gần với 0 để tận dụng tối đa sức mạnh của RAM. Giá trị tốt nhất nên đặt là 10.
Bước 1: Để kiểm tra giá trị hiện tại của swappiness, bạn dùng lệnh:
cat /proc/sys/vm/swappiness
Bước 2: Để thay đổi giá trị của swappiness, bạn dùng lệnh:
sudo sysctl vm.swappiness=10
Lệnh trên giúp thay đổi giá trị của swappiness là 10. Nếu muốn swappiness có giá trị khác, bạn có thể thay 10 bằng con số khác (từ 1 – 100).
Bước 3: Dùng lại lệnh sau để kiểm tra xem đã đúng chưa:
cat /proc/sys/vm/swappiness
Bước 4: Để giữ nguyên thông số này sau mỗi lần reboot lại VPS, bạn hãy điều chỉnh tham số vm.swappiness ở cuối file /etc/sysctl.conf. Nếu không tìm thấy bạn hãy tự thêm vào.
Để sửa file /etc/sysctl.conf, bạn có thể sử dụng lệnh sau:
nano /etc/sysctl.conf
Sau đó tìm dòng chữ vm.swappiness và đổi sang giá trị mong muốn. Nếu chưa có thì bạn có thể thêm vào cuối file dòng lệnh: vm.swappiness=10
Nhấn Ctrl + O để lưu, Enter và Ctrl + X để thoát.
Bước 5: Khởi động lại VPS và kiểm tra lại kết quả bằng lệnh:
free -m
cat /proc/sys/vm/swappiness
5. Thay Đổi Dung Lượng File Swap Trong VPS
Khi đã tạo được swap cho VPS Linux và bạn muốn thay đổi dung lượng, hãy làm theo các bước sau:
Bước 1: Tắt swap bằng lệnh:
swapoff /swapfile
Bước 2: Xóa swap bằng lệnh: rm -f /swapfile
Bước 3: Tạo swap với dung lượng mới.
Chẳng hạn như muốn tạo VPS Swap 2Gb (2048k), bạn có thể thực hiện theo lệnh: sudo dd if=/dev/zero of=/swapfile bs=1024 count=2048k
Bước 4: Tạo phân vùng swap bằng lệnh: mkswap /swapfile
Bước 5: Kích hoạt swap bằng lệnh: swapon /swapfile
Bước 6: Chmod file swap bằng lệnh:
chown root:root /swapfile
chmod 600 /swapfile
Bước 7: Kiểm tra file swap bằng lệnh: free -m
Khi thay đổi dung lượng swap, các cài đặt từ trước như tự động kích hoạt, thông số Swappiness vẫn được giữ nguyên. Do đó, bạn không cần phải thao tác gì thêm.
Trên đây là hướng dẫn chi tiết về tạo swap. Chúc các bạn thành công.