Como criar discos RAM na memória

As instâncias do Google Compute Engine têm memória de classe empresarial e de alto desempenho que você pode usar para executar seus aplicativos. Aloque uma parte dessa memória para criar um disco RAM com latência excepcionalmente baixa e alta capacidade. Os discos RAM funcionam bem quando o aplicativo espera uma estrutura de sistema de arquivos e não consegue armazenar os dados na memória. Esses discos, isoladamente, não fornecem redundância nem flexibilidade de armazenamento e, por isso, é preferível combinar o uso de discos RAM com outras opções de armazenamento de instância.

Os discos RAM compartilham memória de instância com os aplicativos. Se não houver memória suficiente nas instâncias para esses discos RAM e os aplicativos, crie instâncias com tipos de máquina com muita memória ou faça upgrade das instâncias atuais para adicionar mais memória.

Antes de começar

Como criar um disco RAM

Crie um disco RAM com a ferramenta tmpfs, que é instalada por padrão em muitos sistemas operacionais Linux.

  1. Se a instância não tiver memória suficiente, será possível alterar o tipo de máquina da instância para um que tenha mais memória.

  2. Conecte-se à instância por meio do SSH. Neste exemplo, para adicionar um disco RAM, acesse a página Instâncias de VMs e clique no botão SSH ao lado da instância.

  3. Crie um ponto de ativação para o disco RAM.

    $ sudo mkdir /mnt/ram-disk
    
  4. Crie e ative um novo disco RAM tmpfs. Determine um valor para a propriedade size que atenda aos requisitos de armazenamento, sem competir por memória com seus aplicativos nem gastar toda a memória disponível. Para este exemplo, a instância tem um tipo de máquina n1-highmem-32 com 208 GB de memória. Portanto, um tamanho de disco de 50g de RAM é apropriado.

    $ sudo mount -t tmpfs -o size=50g tmpfs /mnt/ram-disk
    
  5. Adicione o disco RAM ao arquivo /etc/fstab para que o dispositivo seja ativado outra vez de modo automático se você reiniciar a instância:

    $ echo 'tmpfs /mnt/ram-disk tmpfs nodev,nosuid,noexec,nodiratime,size=50G 0 0' | sudo tee -a /etc/fstab
    

Como excluir um disco RAM

Desmonte um disco RAM tmpfs exatamente como qualquer outro volume. Isso exclui o disco RAM e todos os dados armazenados nele. Nesse exemplo, remova um disco RAM montado em /mnt/ram-disk:

$ sudo umount /mnt/ram-disk

Como fazer backup automático dos dados do disco RAM entre reinícios de instância

Faça backup do disco RAM antes do reinício da instância para preservar os dados do disco RAM até a conclusão do reinício. Faça backup dos dados em um disco permanente para preservá-los.

  1. Crie e ative um disco permanente para usar como disco de backup do disco RAM. Certifique-se de que o disco tenha espaço suficiente para conter as informações do disco RAM.

  2. Crie um script de encerramento para a instância com um comando rsync que grava o conteúdo do disco RAM no volume de backup. Neste exemplo, use a ferramenta gcloud para adicionar os metadados shutdown-script à instância com o disco RAM montado em /mnt/ram-disk e o disco permanente montado em /mnt/ram-disk-backup.

    gcloud compute instances add-metadata example-instance --metadata shutdown-script="#! /bin/bash
    rsync -a --delete --recursive --force /mnt/ram-disk/ /mnt/ram-disk-backup/
    EOF"
    
  3. Se preferir, crie um script de inicialização que restaure os arquivos no disco RAM quando a instância é reiniciada. Use a ferramenta gcloud para adicionar os metadados startup-script à instância.

    gcloud compute instances add-metadata example-instance --metadata startup-script="#! /bin/bash
    rsync -a --recursive --force /mnt/ram-disk-backup/ /mnt/ram-disk/
    EOF"
    
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Compute Engine