Otimizando o desempenho do SSD local


O gráfico de desempenho por tipo de disco descreve o desempenho máximo alcançável para partições SSD locais. Para otimizar seus aplicativos e instâncias de VM para atingir essas velocidades, use as seguintes práticas recomendadas:

Use otimizações de ambiente convidado para SSDs locais

Por padrão, a maioria das imagens do Linux fornecidas pelo Compute Engine executam automaticamente um script de otimização que configura a instância para obter o desempenho máximo do SSD local. O script permite determinadas configurações sysfs de fila que melhoram o desempenho geral da sua máquina e mascaram solicitações de interrupção (IRQs) para CPUs virtuais específicas (vCPUs). Este script otimiza apenas o desempenho de partições SSD locais do Compute Engine.

Ubuntu, SLES e outras imagens anteriores podem não estar configuradas para incluir essa otimização de desempenho. Se você estiver usando qualquer uma dessas imagens ou uma imagem anterior a v20141218 , será possível instalar o ambiente convidado para ativar essas otimizações.

Escolha uma interface para conectar seus SSDs locais

Você pode conectar SSDs locais às suas VMs usando a interface NVMe ou a interface SCSI. A melhor escolha depende do sistema operacional (SO) que você está usando. Para a maioria das configurações de carga de trabalho que envolvem SSDs locais, o uso da interface NVMe leva a um melhor desempenho.

  • Se você precisar usar um sistema operacional específico , escolha uma interface para suas partições SSD locais que funcione melhor com sua imagem de disco de inicialização.

  • Se você tiver uma configuração existente que exija o uso de uma interface SCSI , use uma imagem que suporte SCSI multifila para obter melhor desempenho em relação à interface SCSI padrão.

Habilitar SCSI multifila

Algumas imagens públicas suportam SCSI multifila. Para usar SCSI multifilas em imagens personalizadas importadas para seu projeto, você mesmo deve habilitá-lo. Suas imagens importadas do Linux poderão usar SCSI multifila apenas se incluírem o kernel versão 3.19 ou posterior.

Para habilitar SCSI multifila em uma imagem personalizada, importe a imagem com o recurso de sistema operacional convidado VIRTIO_SCSI_MULTIQUEUE habilitado e adicione uma entrada à sua configuração do GRUB:

CentOS

Somente para CentOS7.

  1. Importe sua imagem personalizada usando a API e inclua um item guestOsFeatures com um valor de type VIRTIO_SCSI_MULTIQUEUE .

  2. Crie uma instância usando sua imagem personalizada e anexe um ou mais SSDs locais .

  3. Conecte-se à sua instância por meio de SSH.

  4. Verifique o valor do arquivo /sys/module/scsi_mod/parameters/use_blk_mq

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

    Se o valor deste arquivo for Y , então o SCSI multifila já está ativado na sua imagem importada. Se o valor do arquivo for N , inclua scsi_mod.use_blk_mq=Y na entrada GRUB_CMDLINE_LINUX em seu arquivo de configuração GRUB e reinicie o sistema.

    1. Abra o arquivo de configuração /etc/default/grub GRUB em um editor de texto.

      $ sudo vi /etc/default/grub
      
    2. Adicione scsi_mod.use_blk_mq=Y à entrada GRUB_CMDLINE_LINUX .

      GRUB_CMDLINE_LINUX=" vconsole.keymap=us console=ttyS0,38400n8 vconsole.font=latarcyrheb-sun16 scsi_mod.use_blk_mq=Y"
      
    3. Salve o arquivo de configuração.

    4. Execute o comando grub2-mkconfig para gerar novamente o arquivo GRUB e concluir a configuração.

      $ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
      
    5. Reinicie a instância.

      $ sudo reboot
      

Ubuntu

  1. Importe sua imagem personalizada usando a API Compute Engine e inclua um item guestOsFeatures com um valor de type VIRTIO_SCSI_MULTIQUEUE .

  2. Crie uma instância usando sua imagem personalizada e anexe um ou mais SSDs locais usando a interface SCSI.

  3. Conecte-se à sua instância por meio de SSH.

  4. Verifique o valor do arquivo /sys/module/scsi_mod/parameters/use_blk_mq .

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

    Se o valor deste arquivo for Y , então o SCSI multifila já está ativado na sua imagem importada. Se o valor do arquivo for N , inclua scsi_mod.use_blk_mq=Y na entrada GRUB_CMDLINE_LINUX em seu arquivo de configuração GRUB e reinicie o sistema.

    1. Abra o arquivo de configuração sudo nano /etc/default/grub GRUB em um editor de texto.

      $ sudo nano /etc/default/grub
      
    2. Adicione scsi_mod.use_blk_mq=Y à entrada GRUB_CMDLINE_LINUX .

      GRUB_CMDLINE_LINUX="scsi_mod.use_blk_mq=Y"
      
    3. Salve o arquivo de configuração.

    4. Execute o comando update-grub para gerar novamente o arquivo GRUB e concluir a configuração.

      $ sudo update-grub
      
    5. Reinicie a instância.

      $ sudo reboot
      

O que vem a seguir