Pruebas de rendimiento SFS Turbo
fio es una herramienta de prueba de presión de E/S de código abierto. Puede usar fio para probar el rendimiento y las IOPS de SFS.
Prerrequisitos
fio ha sido instalado en el servidor. Puede descargarse desde el sitio web oficial o desde GitHub.
Nota y descripción
El rendimiento de la prueba depende del ancho de banda de la red entre el cliente y el servidor, así como de la capacidad del sistema de archivos.
Instalación de fio
El siguiente ejemplo utiliza un sistema Linux CentOS:
Datos de rendimiento del sistema de archivos
Los indicadores de rendimiento de los sistemas de archivos SFS Turbo incluyen IOPS y rendimiento. Para más detalles, consulte Tabla 1.
Parámetro |
SFS Turbo Standard |
SFS Turbo Performance |
---|---|---|
Maximum capacity |
32 TB |
32 TB |
Maximum IOPS |
5,000 |
20,000 |
Maximum throughput |
150 MB/s |
350 MB/s |
Formula used to calculate the IOPS |
IOPS = Min. (5,000, (1,200 + 6 x Capacity)) |
IOPS = Min. (20,000, (1,500 + 20 x Capacity)) |
IOPS Calculation Formula
- IOPS of a single file system = Min. (Maximum IOPS, (Baseline IOPS + IOPS per GB x Capacity))
Para un sistema de archivos SFS Turbo Performance:
- Si la capacidad del sistema de archivos es de 500 GB: IOPS = Min. (20,000, (1,500 + 20 x 500)) = 11,500
- Si la capacidad del sistema de archivos es de 1,000 GB: IOPS = Min. (20,000, (1,500 + 20 x 1,000)) = 20,000
- No hay una fórmula de cálculo de rendimiento disponible para los sistemas de archivos SFS Turbo Standard - Enhanced y SFS Turbo Performance - Enhanced file systems. La IOPS de un sistema de archivos SFS Turbo Standard - Mejorado es de 15,000, y la de un sistema de archivos SFS Turbo Performance - Enhanced file system es de 100,000.
Ejemplo de configuración de prueba común
Los siguientes valores estimados se obtienen a partir de la prueba en un único ECS. Se recomienda utilizar múltiples ECS para probar el rendimiento de SFS.
En los siguientes ejemplos, SFS Turbo Performance y servidores con las siguientes especificaciones se utilizan como ilustración.
Especificaciones: General computing-plus | c3.xlarge.4 | 4 vCPUs | 16 GB
Imagen: CentOS 7.5 64-bit
Mixed read/write with a read/write ratio of 7:3
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/nfs/test_fio --bs=4k --iodepth=128 --size=10240M --readwrite=rw --rwmixwrite=30 --fallocate=none
/mnt/nfs/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre de archivo, que es el archivo test_fio en el directorio /mnt/nfs en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Mixed read/write with a read/write ratio of 3:7
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/nfs/test_fio --bs=4k --iodepth=128 --size=10240M --readwrite=rw --rwmixwrite=70 --fallocate=none
/mnt/nfs/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre de archivo, que es el archivo test_fio en el directorio /mnt/nfs en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Sequential read IOPS
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=4k --iodepth=128 --size=10240M --readwrite=read --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Random read IOPS
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=4k --iodepth=128 --size=10240M --readwrite=randread --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Sequential write IOPS
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=4k --iodepth=128 --size=10240M --readwrite=write --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Random write IOPS
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=4k --iodepth=128 --size=10240M --readwrite=randwrite --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Sequential read bandwidth
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=1M --iodepth=128 --size=10240M --readwrite=read --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Random read bandwidth
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=1M --iodepth=128 --size=10240M --readwrite=randread --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Sequential write bandwidth
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=1M --iodepth=128 --size=10240M --readwrite=write --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result:
Random write bandwidth
- fio command:
fio --randrepeat=1 --ioengine=libaio --name=test -output=output.log --direct=1 --filename=/mnt/sfs-turbo/test_fio --bs=1M --iodepth=128 --size=10240M --readwrite=randwrite --fallocate=none
/mnt/sfs-turbo/test_fio indica la ubicación del archivo que se va a probar. La ubicación debe ser específica del nombre del archivo, que es el archivo test_fio en el directorio /mnt/sfs-turbo en este ejemplo. Establezca este valor en función de los requisitos del sitio.
- fio result: