Hướng dẫn tạo SWAP - bộ nhớ ảo cho VPS

Hướng dẫn tạo SWAP – bộ nhớ ảo cho VPS

Hướng dẫn cách tạo SWAP cho VPS Linux

Trong bài viết này mình sẽ hướng dẫn cách tạo swap cho VPS Linux để bạn có thể tạo bộ nhớ ảo cho hệ thống để chạy dự phòng khi hệ thống hết bộ nhớ RAM. Trước khi bắt đầu bạn hãy đăng nhập vào VPS qua SSH bằng ZOC Terminal hay bằng phần mềm SSH nào đó đều được. Ở đây mình dùng ZOC Terminal.

Kiểm tra swap trên hệ thống

– Việc đầu tiên trước khi tạo swap cho VPS là bạn cần check xem hệ thống của bạn đã được kích hoạt swap chưa bằng cách chạy lệnh

free -m

huong-dan-tao-swap-cho-vps-linux-1

Nếu các thông số của swap bằng 0 như hình trên có nghĩa là VPS của bạn chưa được tạo swap. Vậy chúng ta cần phải tạo swap cho VPS.

– Trước khi bắt đầu tạo swap thì cần kiểm tra dung lượng ổ cứng còn trống là bao nhiêu bằng cách dùng lệnh

df -h

huong-dan-tao-swap-cho-vps-linux-2

Ở dòng tô xanh dung lượng còn trống ở cột Avail là 18Gb. Bạn dựa vào đây để tính xem nên tạo swap bao nhiêu là đủ.

Tạo swap cho VPS

– Để tạo swap ta dùng lệnh sau:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=1024k

Lệnh trên sẽ tạo swap có dung lượng 1Gb. Nếu bạn muốn tạo swap có dung lượng khác hãy thay count=1024k bằng con số bạn muốn. Ví dụ count=2048k tương ứng với swap dung lượng 2Gb.

Lưu ý: Dung lượng swap tối đa chỉ nên gấp đôi dung lượng RAM vật lý.

huong-dan-tao-swap-cho-vps-linux-3

– Kiểm tra lại xem swap được tạo có bị lỗi gì không

ls -lh /swapfile

Nếu kết quả trả về như sau có nghĩa là mọi thứ đều ổn.

huong-dan-tao-swap-cho-vps-linux-4

– Định dạng lại cho file swap

sudo mkswap /swapfile

Kết quả

huong-dan-tao-swap-cho-vps-linux-5

– Kích hoạt file swap

swapon /swapfile

– Kiểm tra tình trạng swap trên VPS bằng lệnh

free -m

Kết quảhuong-dan-tao-swap-cho-vps-linux-6

– Chmod quyền truy cập cho file này bằng lệnh

chown root:root /swapfile
sudo chmod 600 /swapfile

– Chạy lệnh sau để mỗi khi reboot lại VPS swap tự động được kích hoạt

echo /swapfile none swap defaults 0 0 >> /etc/fstab

Cấu hình tham số swappiness

Việc cấu hình swappiness chính là cấu hình mức độ ưu tiên sử dụng swap. Tức là chúng ta sẽ thiết lập sao cho khi lượng RAM còn bằng giá trị của swappiness (tính bằng %) thì hệ thống sẽ sử dụng swap. Swappiness có giá trị từ 0 – 100.

  • swappiness = 0: swap dùng khi RAM được dùng hết.
  • swappiness = 10: swap sử dụng khi RAM còn 10%.
  • swappiness = 50: swap sử dụng khi RAM còn 50%.
  • swappiness = 100: swap được sử dụng đồng thời với RAM.

Như đã nói ở trên, tốc độ xử lý của RAM cao hơn nhiều so với Swap nên 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.

– Để kiểm tra giá trị hiện tại của swappiness bạn dùng lệnh

cat /proc/sys/vm/swappiness

Kết quả trả về là 30 hoặc 1 số nào đó tùy thuộc vào hệ điều hành đang dùng (CentOS, Ubuntu,…)

– Để 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. Bạn có thể dùng lại lệnh sau để kiểm tra xem đã đúng chưa.

cat /proc/sys/vm/swappiness

Để giữ nguyên thông số này sau mỗi lần khởi động lại VPS bạn cần điều chỉnh tham số vm.swappiness ở cuối file /etc/sysctl.conf (nếu không thấy bạn hãy tự thêm vào)

– Sử dụng lệnh sau để sửa file /etc/sysctl.conf

nano /etc/sysctl.conf

– Tìm đến dòng vm.swappiness và đổi sang giá trị mong muốn hoặc chưa có thì bạn có thể thêm vào cuối file dòng

vm.swappiness=10

Nhấn Ctrl + O để lưu, Enter và Ctrl + X để thoát.

huong-dan-tao-swap-cho-vps-linux-7

– 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

huong-dan-tao-swap-cho-vps-linux-8

Thay đổi dung lượng file swap trong VPS

Sau khi thực hiện theo các bước trên để tạo swap cho VPS Linux xong nếu bạn muốn thay đổi tăng giảm dung lượng swap thì hãy làm theo các bước sau:

– Tắt swap

swapoff /swapfile

– Xóa swap

rm -f /swapfile

– Tạo swap với dung lượng mới. Ví dụ lệnh dưới là tạo swap 2Gb (2048k)

sudo dd if=/dev/zero of=/swapfile bs=1024 count=2048k

– Tạo phân vùng swap

mkswap /swapfile

– Kích hoạt swap

swapon /swapfile

– Chmod file swap

chown root:root /swapfile
chmod 600 /swapfile

– Kiểm tra file swap

free -m

Khi thay đổi dung lượng file swap, các cài đặt từ trước như tự động kích hoạt khi server reboot, thông số Swappiness được giữ nguyên nên bạn không cần phải thao tác gì thêm.

Leave a Reply

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *