
Swap memory is extra storage used when your server's RAM is full. It moves less active processes from RAM to a reserved space on disk, freeing up memory and preventing system crashes.
In this article, you are to add swap memory on Ubuntu 22.04. You are to use a block storage to increase the available server memory.
Before you begin:
Have an Ubuntu 22.04 server.
Have an existing block storage.
Access the server using SSH as a non-root user with sudo privileges.
Follow the steps in this section to view the already available swap memory on Ubuntu 22.04.
View the available server memory including RAM and Swap using the free utility.
Verify the Swap memory available on your server similar to the output below.
Follow the sections below to create swap memory using either a Swapfile or a dedicated block storage volume on your server.
Create a new Swapfile with a specific size such as 2GB using the fallocate utility in your root directory /.
Modify the Swapfile permissions to allow only the root user to read and write changes on the file.
Format the file as swap using mkswap.
Verify the new swap memory size, label information and UUID similar to the following output.
Vultr Block Storage is used here as an example to demonstrate the use of a dedicated block storage. You can replace the directories used in the commands to adjust according to any cloud provider.
List the storage devices available on your server using the lsblk utility. The new disk is attached as /dev/vdb and it has no partitions.
Output:
The Vultr Block Storage device is attached as vdb based on the above output with a 40GB size.
Initialize the volume using the GPT partition table.
Create a new partition using the entire block storage volume.
Verify that the new block storage partitiion is available.
Output:
Convert the new block storage partition to swap.
Verify that the new swap partition is available.
Output:
Note the swap partition UUID value to use when mounting the volume automatically at boot time.
Enable the Swapfile as swap memory using the swapon utility.
View the server swap memory and verify that the new Swapfile is active.
Output:
Run the following command to enable the Vultr Block Storage swap partition as swap memory. Replace /dev/vdb1 with your actual partition path.
View the server swap memory and verify that the swap partition is active.
Output:
The File System Table (fstab) controls how file systems are mounted on a server. Follow the steps below to set up fstab so your swap memory volumes mount automatically at boot.
Backup the original fstab configuration on your server.
Open the fstab configuration file using a text editor such as nano.
Add the following Swapfile configuration at the end of the file.
Save and close the file.
The above configuration enables automatic mounting using the /swapfile.img file.
swap: Specifies the file system type as swap.swap: Defines the mount point for the swap space.0: Disables automatic backups for the swap file system.0: Skips file system checks on the swap memory.View your block devices information and copy the UUID of new /dev/vdb1.
Output:
Add the block storage swap partition using its UUID value to enable automatic mounting on the volume.
Replace UUID=ca230c16-b5a4-44e6-b5a8-930bb1f33fcf with your server block device UUID.
After configuring automatic mounting, the server will now automatically mount and activate swap memory at boot.
A swappiness value controls how the server manages memory usage between RAM and swap space. A lower value reduces swapping, while a higher value increases it based on the following ranges:
0: Avoids swapping unless absolutely necessary.1-49: Swaps infrequently, only when RAM is nearly full.50: Balances RAM usage and swapping.51-99: Swaps more aggressively as RAM fills up.100: Prioritizes swapping, frequently moving processes from RAM to swap.Follow the steps below to configure the swappiness value on your server.
Run the following command to modify the /etc/sysctl.conf with your swappiness value. Replace 50 with your desired swapping level.
Output:
Reload the systctl configuration to apply the configuration changes.
View all available swap volumes on your server.
Output:
Run the following command to activate all inactive swap volumes in your /etc/fstab configuration.
View your server memory and verify the amount of swap memory actively in use.
Output:
Use the swapoff utility with the Swapfile or partition path to disable on your server. For example, run the following command to disable the default Swapfile /swapfile.
View the swap volumes on your server and verify that the default Swapfile is disabled.
Output:
In this article, you added swap memory on an Ubuntu 22.04 server and enabled swapping by extending the default system memory. For more configuration options, run $ man swapon to view the swap commands manual.
0 Comments
Be the first to comment and share your perspective with the community.