Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Les instances de Google Compute Engine disposent d'une mémoire hautes performances de classe entreprise que vous pouvez utiliser dans l'exécution de vos applications. Une partie de cette mémoire peut également être allouée à la création d'un disque RAM, garantissant une latence exceptionnellement faible et un débit élevé. Les disques RAM représentent une bonne solution lorsque l'application attend une structure de système de fichiers et ne peut pas stocker simplement ses données dans la mémoire. Dans la mesure où les disques RAM n'assurent pas à eux seuls la redondance ni la flexibilité du stockage, il est préférable de les utiliser en combinaison avec d'autres options de stockage d'instances.
Les disques RAM partagent la mémoire des instances avec vos applications. Si vos instances ne disposent pas de suffisamment de mémoire pour contenir à la fois les disques RAM et les applications, créez des instances dotées des types de machines highmem, tels que N2 ou mettez à niveau les instances existantes pour ajouter de la mémoire.
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification valide votre identité pour accéder aux services et aux API Google Cloud . Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes :
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and
APIs, you don't need to set up authentication.
gcloud
Installez la Google Cloud CLI.
Une fois que la Google Cloud CLI est installée, initialisez-la en exécutant la commande suivante :
Pour utiliser les exemples API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à la gcloud CLI.
Installez la Google Cloud CLI.
Une fois que la Google Cloud CLI est installée, initialisez-la en exécutant la commande suivante :
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud .
Créer un disque RAM
Vous pouvez créer un disque RAM avec le système de fichiers tmpfs, qui est inclus par défaut dans la plupart des distributions Linux.
Si une instance ne présente pas suffisamment de mémoire disponible, vous pouvez éventuellement remplacer le type de machine de cette instance par un type de machine comportant plus de mémoire.
Connectez-vous à l'instance via SSH. Pour cet exemple, accédez à la page Instances de VM, puis cliquez sur le bouton SSH situé en regard de l'instance à laquelle vous souhaitez ajouter un disque RAM.
Créez un point d'installation pour votre disque RAM.
$ sudo mkdir /mnt/ram-disk
Créez un disque RAM tmpfs, puis installez-le. Pour la propriété size, vous devez spécifier une valeur qui couvre vos besoins de stockage sans empiéter sur les besoins en mémoire de vos applications ni consommer la totalité de la mémoire disponible.
Pour cet exemple, l'instance est associée au type de machine n1-highmem-32, qui est doté de 208 Go de mémoire. La valeur 50g représente donc une taille de disque RAM appropriée.
$ sudo mount -t tmpfs -o size=50g tmpfs /mnt/ram-disk
Ajoutez le disque RAM au fichier /etc/fstab. Cela permet la réinstallation automatique de ce périphérique en cas de redémarrage de l'instance :
$ echo 'tmpfs /mnt/ram-disk tmpfs nodev,nosuid,noexec,nodiratime,size=50G 0 0' | sudo tee -a /etc/fstab
Supprimer un disque RAM
Vous pouvez désinstaller un disque RAM tmpfs comme n'importe quel autre volume. Cela supprime le disque RAM et toutes les données qui y sont stockées. Pour cet exemple, vous allez supprimer un disque RAM installé dans /mnt/ram-disk :
$ sudo umount /mnt/ram-disk
Sauvegarder automatiquement les données d'un disque RAM entre les redémarrages d'une instance
Vous pouvez sauvegarder un disque RAM avant le redémarrage d'une instance afin de conserver les données qu'il contient jusqu'à ce que cette instance soit de nouveau active. Sauvegardez vos données sur un volume Google Cloud Hyperdisk ou sur un volume Persistent Disk si le type de machine de votre VM n'est pas compatible avec Hyperdisk.
Créez et installez un volume Hyperdisk à utiliser comme disque de sauvegarde pour votre disque RAM. Assurez-vous que ce disque est assez volumineux pour contenir les informations stockées sur le disque RAM.
Créez un script d'arrêt pour votre instance, en y insérant une commande rsync permettant d'écrire le contenu du disque RAM sur le volume de sauvegarde. Pour cet exemple, utilisez gcloud CLI pour ajouter les métadonnées shutdown-script à l'instance. Le disque RAM de cette instance est installé dans /mnt/ram-disk, et le volume Hyperdisk dans /mnt/ram-disk-backup.
Si vous le souhaitez, vous pouvez également créer un script de démarrage qui restaure les fichiers sur le disque RAM lorsque l'instance redémarre. Utilisez gcloud CLI pour ajouter les métadonnées startup-script à l'instance.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[[["\u003cp\u003eCompute Engine RAM disks offer high-performance, low-latency storage by utilizing instance memory, suitable for applications requiring a file system structure.\u003c/p\u003e\n"],["\u003cp\u003eRAM disks share memory with applications, necessitating the use of \u003ccode\u003ehighmem\u003c/code\u003e machine types or memory upgrades to prevent memory exhaustion and potential instance crashes.\u003c/p\u003e\n"],["\u003cp\u003eData on RAM disks is volatile and not automatically replicated, meaning data loss will occur upon host error or system restart, thus regular backups to persistent storage are crucial.\u003c/p\u003e\n"],["\u003cp\u003eCreating a RAM disk involves establishing a mount point, mounting a \u003ccode\u003etmpfs\u003c/code\u003e volume with an appropriate size, and optionally adding it to \u003ccode\u003e/etc/fstab\u003c/code\u003e for automatic remounting after restarts.\u003c/p\u003e\n"],["\u003cp\u003eBackups of RAM disk data before instance restarts can be automated using shutdown scripts and persistent storage, with startup scripts to restore the backed-up data upon instance reboot.\u003c/p\u003e\n"]]],[],null,["# Creating in-memory RAM disks\n\n*** ** * ** ***\n\nCompute Engine instances have high-performance, enterprise-class memory that\nyou can use to run your applications. You can allocate some of this memory to\ncreate a RAM disk with exceptionally low latency and high throughput. RAM disks\nwork well when your application expects a file system structure and cannot\nsimply store its data in memory. RAM disks alone do not provide any\nstorage redundancy or flexibility, so it is best to use RAM disks in\ncombination with other\n[instance storage options](/compute/docs/disks).\n\nRAM disks share instance memory with your applications. If your instances do\nnot have enough memory to contain RAM disks and your applications, create\ninstances with `highmem` machine types, such as\n[N2](/compute/docs/general-purpose-machines#n2-high-mem) or\n[upgrade your existing instances](/compute/docs/instances/changing-machine-type-of-stopped-instance)\nto add more memory.\n| **Caution:** RAM disks are located in memory, and are **not** automatically replicated. **All data on these devices is erased** in the event of a [host error](/compute/docs/faq#hosterror) or a system restart. Frequently back up your data on replicated storage. Before you restart an instance with an in-memory RAM disk, [write data from the RAM disk to replicated storage](#backup-ram-disk-data).\n\nBefore you begin\n----------------\n\n- Read about the difference between RAM disks and other [Compute Engine storage options](/compute/docs/disks).\n- If you haven't already, set up [authentication](/compute/docs/authentication). Authentication verifies your identity for access to Google Cloud services and APIs. To run code or samples from a local development environment, you can authenticate to Compute Engine by selecting one of the following options:\n\n Select the tab for how you plan to use the samples on this page: \n\n ### Console\n\n\n When you use the Google Cloud console to access Google Cloud services and\n APIs, you don't need to set up authentication.\n\n ### gcloud\n\n 1.\n [Install](/sdk/docs/install) the Google Cloud CLI.\n\n After installation,\n [initialize](/sdk/docs/initializing) the Google Cloud CLI by running the following command:\n\n ```bash\n gcloud init\n ```\n\n\n If you're using an external identity provider (IdP), you must first\n [sign in to the gcloud CLI with your federated identity](/iam/docs/workforce-log-in-gcloud).\n | **Note:** If you installed the gcloud CLI previously, make sure you have the latest version by running `gcloud components update`.\n 2. [Set a default region and zone](/compute/docs/gcloud-compute#set_default_zone_and_region_in_your_local_client).\n\n ### REST\n\n\n To use the REST API samples on this page in a local development environment, you use the\n credentials you provide to the gcloud CLI.\n 1. [Install](/sdk/docs/install) the Google Cloud CLI. After installation, [initialize](/sdk/docs/initializing) the Google Cloud CLI by running the following command: \n\n ```bash\n gcloud init\n ```\n 2. If you're using an external identity provider (IdP), you must first [sign in to the gcloud CLI with your federated identity](/iam/docs/workforce-log-in-gcloud).\n\n\n For more information, see\n [Authenticate for using REST](/docs/authentication/rest)\n in the Google Cloud authentication documentation.\n\nCreating a RAM disk\n-------------------\n\nYou can create a RAM disk with the `tmpfs` filesystem, which is included by default\nin most [Linux distributions](/compute/docs/images#os-details).\n| **Caution:** You must ensure that `tmpfs` volumes on your instance do not use up all of your instance memory. By default, Compute Engine instances do not have any swap space. If you use all of the available instance memory in a RAM disk, the instance can crash and potentially cause you to lose your data.\n\n1. If your instance does not have enough available memory, you can optionally\n [change the instance machine type](/compute/docs/instances/changing-machine-type-of-stopped-instance#changing_a_machine_type)\n to a machine type with more memory.\n\n2. [Connect to your instance](/compute/docs/instances/connecting-to-instance)\n through SSH. For this example, go to the\n [VM instances page](https://console.cloud.google.com/compute/instances)\n and click the **SSH** button next the instance where you want to add a RAM\n disk.\n\n3. Create a mount point for your RAM disk.\n\n ```\n $ sudo mkdir /mnt/ram-disk\n ```\n4. Create and mount a new `tmpfs` RAM disk. You must determine a value for the\n `size` property that meets your storage requirements without competing with\n your applications for memory or expending all of the available memory.\n For this example, the instance has a\n [`n1-highmem-32`](/compute/docs/general-purpose-machines#n1-high-memory) machine type with\n 208 GB of memory, so a `50g` RAM disk size is appropriate.\n\n ```\n $ sudo mount -t tmpfs -o size=50g tmpfs /mnt/ram-disk\n ```\n5. Add the RAM disk to the `/etc/fstab` file so that the device automatically\n mounts again if you restart the instance:\n\n ```\n $ echo 'tmpfs /mnt/ram-disk tmpfs nodev,nosuid,noexec,nodiratime,size=50G 0 0' | sudo tee -a /etc/fstab\n ```\n\nDeleting a RAM disk\n-------------------\n\nYou can unmount a `tmpfs` RAM disk just like any other volume. This deletes the\nRAM disk and any data that is stored in it. For this example, remove a RAM disk\nthat is mounted at `/mnt/ram-disk`: \n\n```\n$ sudo umount /mnt/ram-disk\n```\n\nAutomatically backing up RAM disk data between instance restarts\n----------------------------------------------------------------\n\nYou can back up a RAM disk before your instance restarts to preserve the RAM\ndisk data until the instance starts up again. Back up your data to a Google Cloud Hyperdisk volume, or to a Persistent Disk volume if your VM's machine type\ndoesn't support Hyperdisk.\n\n1. [Create and mount a Hyperdisk](/compute/docs/disks/add-hyperdisk)\n volume to use as a backup disk for your RAM disk. Make sure the disk is big enough to contain the information in the RAM disk.\n\n2. [Create a shutdown script](/compute/docs/shutdownscript) for your instance\n with an `rsync` command that writes the RAM disk contents to the backup\n volume. For this example, use the gcloud CLI to add the `shutdown-script`\n metadata to the instance with the RAM disk mounted at `/mnt/ram-disk` and\n the Hyperdisk volume mounted at `/mnt/ram-disk-backup`.\n\n gcloud compute instances add-metadata example-instance --metadata shutdown-script=\"#! /bin/bash\n rsync -a --delete --recursive --force /mnt/ram-disk/ /mnt/ram-disk-backup/\n EOF\"\n\n3. Optionally, you can also\n [create a startup script](/compute/docs/startupscript#startupscriptrunninginstances)\n that restores the files back to the RAM disk when the instance starts\n again. Use the gcloud CLI to add the `startup-script` metadata to\n the instance.\n\n gcloud compute instances add-metadata example-instance --metadata startup-script=\"#! /bin/bash\n rsync -a --recursive --force /mnt/ram-disk-backup/ /mnt/ram-disk/\n EOF\""]]