Each Cloud Next application has a set amount of disk storage allocated to it. This page explains how Cloud Next allocates and uses that storage, and how you can determine how much of that storage is in use by your application.
Introduction
Cloud Next includes various storage volumes that have each been allocated for a specific purpose related to content management or service delivery. Some of these volumes are provided with platform default size limitations and may not be counted against your total subscription utilization, while file system and database storage are always counted against subscription entitlements.
For directories without contractually-defined storage capacities, Acquia assigns a default allocation of storage capacity to ensure that normal platform operations can be executed properly, including code deployments and maintenance events. Acquia reserves the right to adjust the nature, size, and content of these volumes as needed, including unscheduled purges of such directories, if such actions are deemed necessary to maintain the performance, stability, security, or long-term supportability of one or more clusters.
Many directories on Cloud Next consist of storage volumes that allow their contents to persist for days or weeks, sometimes even after maintenance events. However, environments running on the Cloud Next technologies have entirely ephemeral storage volumes on all directories, excluding the file system and database, unless otherwise noted. This means that only persistent directories or your codebase should ever be used to store files, content, or settings that need to persist for your application to operate as expected.
While working with different directories on Cloud Next, ensure the following limitations and best practices:
- Acquia recommends that Cloud Next applications must not exceed 2 TB of total file system and database utilization. While Cloud Platform is designed and created with scale and throughput as the first principle, there is a threshold where the size of your file system and database storage can result in service delays, degradation, or both. Exceeding these recommended limits might impact certain services such as daily backups and the copies between environments. In addition, the timeframes of backup and restore operations might be impacted when disaster recovery efforts are required.
- Git repositories must never exceed 2 GB in size.
- Code in a single branch must not exceed 500 MB to avoid the risk of code deployment failures.
- Keep Git repositories and associated branches as small as practical to ensure optimal performance during code deployment, site scaling, and diagnostic operations. Avoid including large files or unnecessary media files, such as non-theme images and any video files, prune unnecessary versions from your branch periodically, and tag history to keep your repository small and manageable.
- Drupal pods are limited to 4 GB of active ephemeral storage. This is typically used by the platform for code or log management activities and shouldn’t be expected to persist for more than a few minutes. Excess utilization can reduce uptime and site stability and may cause workloads to be evicted, leading to immediate loss of ephemeral storage.
- Do not use temporary directories to store the files that are required to persist for more than a few minutes. These directories and the files within them are not shared between executions and at most should only be assumed present within the same PHP request, SSH session, cloud hook, or cron job during which the directory was populated with data.
Examining your disk storage utilization
You can review your disk storage utilization from the command line by connecting to your Cloud Next environment using SSH.
To assess disk utilization in your public files directory:
ncdu /shared/sites/default/files/
To assess disk utilization in your private files directory:
$ ncdu /shared/sites/default/files-private
To assess disk utilization in the legacy files directory:
$ ncdu /shared/files
The directories listed in /shared
are symlinked to their respective locations in /var/www/html/docroot
. The necessary directories may differ depending on your specific Drupal configuration to account for multisites or other non-standard locations.
Filesystem
Cloud Platform environments on Cloud Next technologies use different filesystems, as described in the following table:
Directories | Type/Scope | Drupal Setting | Description |
---|---|---|---|
| Persistent/Shared | This is the login home folder, equivalent to the $HOME environment variable. | |
| Persistent/Shared | This is where Drupal places public files for Cloud Platform. | |
| Persistent/Shared |
| This is where Drupal places private files for Cloud Platform. |
| Persistent/Shared | This location is used primarily by cron-wrapper.sh for persistent log storage, but can also be utilized by custom log files. Subscribers should prune outdated logs here on a routine basis to avoid them exceeding 1 GB in size. | |
| Ephemeral/Per Pod |
| Drupal and other processes may write temporary files here. This is local to the web infrastructure and is not shared across webs. |
All other paths | Ephemeral |