Optimización del rendimiento del SSD local


El gráfico de rendimiento por tipo de disco describe el rendimiento máximo alcanzable para las particiones SSD locales. Para optimizar sus aplicaciones e instancias de VM para lograr estas velocidades, utilice las siguientes mejores prácticas:

Utilice optimizaciones del entorno invitado para SSD locales

De forma predeterminada, la mayoría de las imágenes de Linux proporcionadas por Compute Engine ejecutan automáticamente un script de optimización que configura la instancia para obtener el máximo rendimiento de SSD local. El script habilita ciertas configuraciones de cola sysfs que mejoran el rendimiento general de su máquina y enmascaran las solicitudes de interrupción (IRQ) a CPU virtuales específicas (vCPU). Este script solo optimiza el rendimiento de las particiones SSD locales de Compute Engine.

Es posible que Ubuntu, SLES y otras imágenes anteriores no estén configuradas para incluir esta optimización del rendimiento. Si está utilizando alguna de estas imágenes o una imagen anterior a v20141218 , puede instalar el entorno invitado para habilitar estas optimizaciones.

Elija una interfaz para conectar sus SSD locales

Puede conectar SSD locales a sus máquinas virtuales mediante la interfaz NVMe o la interfaz SCSI. La mejor opción depende del sistema operativo (SO) que esté utilizando. Para la mayoría de las configuraciones de cargas de trabajo que involucran SSD locales, el uso de la interfaz NVMe conduce a un mejor rendimiento.

  • Si necesita utilizar un sistema operativo específico , elija una interfaz para sus particiones SSD locales que funcione mejor con la imagen de su disco de arranque.

  • Si tiene una configuración existente que requiere el uso de una interfaz SCSI , use una imagen que admita SCSI de colas múltiples para lograr un mejor rendimiento con respecto a la interfaz SCSI estándar.

Habilitar SCSI de colas múltiples

Algunas imágenes públicas admiten SCSI de colas múltiples. Para utilizar SCSI de colas múltiples en imágenes personalizadas que importe a su proyecto, debe habilitarlo usted mismo. Sus imágenes de Linux importadas pueden usar SCSI de colas múltiples solo si incluyen la versión del kernel 3.19 o posterior.

Para habilitar SCSI de colas múltiples en una imagen personalizada, importe la imagen con la función del sistema operativo invitado VIRTIO_SCSI_MULTIQUEUE habilitada y agregue una entrada a su configuración de GRUB:

CentOS

Sólo para CentOS7.

  1. Importe su imagen personalizada usando la API e incluya un elemento guestOsFeatures con un valor de type VIRTIO_SCSI_MULTIQUEUE .

  2. Cree una instancia usando su imagen personalizada y adjunte uno o más SSD locales .

  3. Conéctese a su instancia a través de SSH.

  4. Verifique el valor del archivo /sys/module/scsi_mod/parameters/use_blk_mq

    $ cat /sys/module/scsi_mod/parameters/use_blk_mq
    

    Si el valor de este archivo es Y , entonces SCSI multicola ya está habilitado en su imagen importada. Si el valor del archivo es N , incluya scsi_mod.use_blk_mq=Y en la entrada GRUB_CMDLINE_LINUX en su archivo de configuración de GRUB y reinicie el sistema.

    1. Abra el archivo de configuración /etc/default/grub GRUB en un editor de texto.

      $ sudo vi /etc/default/grub
      
    2. Agregue scsi_mod.use_blk_mq=Y a la entrada GRUB_CMDLINE_LINUX .

      GRUB_CMDLINE_LINUX=" vconsole.keymap=us console=ttyS0,38400n8 vconsole.font=latarcyrheb-sun16 scsi_mod.use_blk_mq=Y"
      
    3. Guarde el archivo de configuración.

    4. Ejecute el comando grub2-mkconfig para regenerar el archivo GRUB y completar la configuración.

      $ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
      
    5. Reinicie la instancia.

      $ sudo reboot
      

ubuntu

  1. Importe su imagen personalizada usando la API de Compute Engine e incluya un elemento guestOsFeatures con un valor de type VIRTIO_SCSI_MULTIQUEUE .

  2. Cree una instancia usando su imagen personalizada y conecte uno o más SSD locales usando la interfaz SCSI.

  3. Conéctese a su instancia a través de SSH.

  4. Verifique el valor del archivo /sys/module/scsi_mod/parameters/use_blk_mq .

    $ cat /sys/module/scsi_mod/parameters/use_blk_mq
    

    Si el valor de este archivo es Y , entonces SCSI multicola ya está habilitado en su imagen importada. Si el valor del archivo es N , incluya scsi_mod.use_blk_mq=Y en la entrada GRUB_CMDLINE_LINUX en su archivo de configuración de GRUB y reinicie el sistema.

    1. Abra el archivo de configuración sudo nano /etc/default/grub GRUB en un editor de texto.

      $ sudo nano /etc/default/grub
      
    2. Agregue scsi_mod.use_blk_mq=Y a la entrada GRUB_CMDLINE_LINUX .

      GRUB_CMDLINE_LINUX="scsi_mod.use_blk_mq=Y"
      
    3. Guarde el archivo de configuración.

    4. Ejecute el comando update-grub para regenerar el archivo GRUB y completar la configuración.

      $ sudo update-grub
      
    5. Reinicie la instancia.

      $ sudo reboot
      

¿Qué sigue?