This article explains how to configure the client node pagepool.
The function and impact of pagepool
On vePFS client nodes, when mounting services to access the file system, both file data and metadata are cached in the pagepool.
- In scenarios with heavy client load, increasing the pagepool improves file system access performance. For example, when client nodes create or randomly delete a large number of files in vePFS, more metadata needs to be accessed. Increasing the pagepool allows for more metadata caching, thus improving creation and deletion performance.
- If the workload is high and the pagepool is set too small, such as setting pagepool to 4GB and workerThreads to 1024, 1024 concurrent requests may exceed the 4GB memory limit, resulting in memory allocation failures, slow or stalled vePFS access, and potentially causing the vePFS client node daemon to crash, which may lead to business I/O errors.
When adding client nodes, the system sets the default pagepool value based on the type of client node being added. For example, when the client accesses storage over a VPC network, the pagepool is set to 4GB by default when adding the node using vepfs add password {ECS IP address}; when the client accesses storage via RDMA network, the pagepool is set to 16GB by default when adding the node using vepfs -r add password {ECS IP address}.
Edit default configuration
For scenarios that require caching more data and metadata, you can adjust the default Pagepool parameter size on the client management node. Keep the WorkerThreads, FilesToCache, and StatCache parameters at their default values. After you modify the default configuration, new client nodes will use the values from the updated configuration file. Existing client nodes will not be changed.
warning
All three client management nodes must update their configuration files.
- Run the following command to modify the configuration file /opt/vepfs/user_vpc_cfg.sh.
UserVPCWorkerThreads=256
UserVPCFilesToCache=128k
- Run the following command after making changes.
chmod +x /opt/vepfs/user_vpc_cfg.sh
- Run the following command to modify the configuration file /opt/vepfs/user_rdma_cfg.sh.
UserRDMAWorkerThreads=256
UserRDMAFilesToCache=128k
- Run the following command after making changes.
chmod +x /opt/vepfs/user_vpc_cfg.sh
Edit configuration for added client node
For client nodes already added, you can run the following command to adjust settings. After running this command, increasing the pagepool takes effect online, while decreasing the pagepool requires restarting the vePFS service on the corresponding node.
warning
Pagepool reserves memory in advance. Setting it too high may use all system memory. Please check the node's free memory for reasonable adjustment.
/usr/lpp/mmfs/bin/mmchconfig <name>=<value> -N <node1,node2>
For example, to set the pagepool to 16GB for the node with IP 10.10.10.10, log in to any client management node and run the following command.
/usr/lpp/mmfs/bin/mmchconfig pagepool=16G -N 10.10.10.10 -i