Swap (partion) là phân vùng lưu trữ tạm thời của hệ điều hành linux, phân vùng swap đặt trên ổ cứng.
Nếu máy chủ của bạn thiếu RAM cho nhu cầu xử lý, swap đóng vai trò như RAM ảo, nhưng không nên ngộ nhận Swap có thể thay thế cho RAM mà chỉ là giải pháp tức thời vì ngay cả khi ổ cứng máy chủ là ổ SSD thì tốc độ ổ cứng SSD cũng thấp hơn nhiều lần RAM vật lý.
Một số lưu ý trước khi sử dụng Swap
- Swap không thể thay thế RAM.
- Swap hiểu theo nghia phổ thông dùng để chống Sock khi máy chủ thiếu RAM.
- Swap không làm máy chủ hoạt động nhanh hơn, nếu dữ liệu được cache nhiều trên swap thì vận hành sẽ chậm.
Để tạo Swap thực hiện lần lượt các bước sau:
Table of Contents
Tạo Swap file
Tạo file và gán dung lượng
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024k
Trong đó:
1024k sẽ tạo file swap kích thước 1Gb
Tương tự với 2048k -> 2Gb, 4096k -> 4Gb, 8192k -> 8Gb
Thông thường, Swap nên bằng 1/2 dung lượng của RAM.
- Đối với các máy chủ Webserver không có nhiều file dung lượng lớn hoặc ít có nhu cầu nén file (zip, tar.gz) thì swap tối đa nên là 2Gb
- Đối với các máy chủ backup hoặc cần hoạt động nén file nhiều thì Swap nên từ 2Gb
Gán phân vùng swap vào file vừa tạo
mkswap /swapfile
Kích hoạt vùng swap
swapon /swapfile
Kiểm tra trạng thái của Swap
swapon -s
Ghi vào cấu hình boot để sử dụng sau khi máy chủ khởi động
echo /swapfile none swap defaults 0 0 >> /etc/fstab
chown root:root /swapfile
chmod 0600 /swapfile
Xác định điều kiện sẽ sử dụng Swap
vm.swappiness là thông số xác định tỷ lệ RAM còn bao nhiêu % thì sẽ sử dụng swap, vm.swappiness càng nhỏ thì hệ điều hành sử dụng RAM càng nhiều.
Mặc định máy chủ linux sẽ đặt vm.swappiness tỷ lệ 60%
Trường hợp máy chủ cần hiệu năng xử lý cao thì vm.swappiness tỷ lệ nên là 10%
Ví dụ: Nếu VPS có ram 2Gb chạy WordPress thì vm.swappiness tỷ lệ nên là 30%
# thiết lập vm.swappiness
sysctl vm.swappiness=30
echo "vm.swappiness=30" >> /etc/sysctl.conf
#kiểm tra lại thay đổi
cat /proc/sys/vm/swappiness
Cuối cùng reboot lại máy chủ.
Leave A Comment?