Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'doc/user/usage_quotas.md')
-rw-r--r--doc/user/usage_quotas.md137
1 files changed, 42 insertions, 95 deletions
diff --git a/doc/user/usage_quotas.md b/doc/user/usage_quotas.md
index 305a46e1f15..7dea2b97249 100644
--- a/doc/user/usage_quotas.md
+++ b/doc/user/usage_quotas.md
@@ -5,7 +5,7 @@ group: Utilization
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
---
-# Storage usage quota **(FREE ALL)**
+# Storage **(FREE ALL)**
Storage usage statistics are available for projects and namespaces. You can use that information to
manage storage usage within the applicable quotas.
@@ -13,8 +13,8 @@ manage storage usage within the applicable quotas.
Statistics include:
- Storage usage across projects in a namespace.
-- Storage usage that exceeds the storage quota.
-- Available purchased storage.
+- Storage usage that exceeds the storage SaaS limit or [self-managed storage quota](../administration/settings/account_and_limit_settings.md#repository-size-limit).
+- Available purchased storage for SaaS.
Storage and network usage are calculated with the binary measurement system (1024 unit multiples).
Storage usage is displayed in kibibytes (KiB), mebibytes (MiB),
@@ -30,87 +30,33 @@ you might see references to `KB`, `MB`, and `GB` in the UI and documentation.
Prerequisites:
- To view storage usage for a project, you must have at least the Maintainer role for the project or Owner role for the namespace.
-- To view storage usage for a namespace, you must have the Owner role for the namespace.
+- To view storage usage for a group namespace, you must have the Owner role for the namespace.
1. On the left sidebar, select **Search or go to** and find your project or group.
1. On the left sidebar, select **Settings > Usage Quotas**.
-1. Select the **Storage** tab.
+1. Select the **Storage** tab to see namespace storage usage.
+1. To view storage usage for a project, select one of the projects from the table at the bottom of the **Storage** tab of the **Usage Quotas** page.
-Select any title to view details. The information on this page
-is updated every 90 minutes.
+The information on the **Usage Quotas** page is updated every 90 minutes.
If your namespace shows `'Not applicable.'`, push a commit to any project in the
namespace to recalculate the storage.
-### Container Registry usage **(FREE SAAS)**
+### View project fork storage usage **(FREE SAAS)**
-Container Registry usage is available only for GitLab.com. This feature requires a
-[new version](https://about.gitlab.com/blog/2022/04/12/next-generation-container-registry/)
-of the GitLab Container Registry. To learn about the proposed release for self-managed
-installations, see [epic 5521](https://gitlab.com/groups/gitlab-org/-/epics/5521).
-
-#### How container registry usage is calculated
-
-Image layers stored in the Container Registry are deduplicated at the root namespace level.
-
-An image is only counted once if:
-
-- You tag the same image more than once in the same repository.
-- You tag the same image across distinct repositories under the same root namespace.
-
-An image layer is only counted once if:
-
-- You share the image layer across multiple images in the same container repository, project, or group.
-- You share the image layer across different repositories.
-
-Only layers that are referenced by tagged images are accounted for. Untagged images and any layers
-referenced exclusively by them are subject to [online garbage collection](packages/container_registry/delete_container_registry_images.md#garbage-collection).
-Untagged image layers are automatically deleted after 24 hours if they remain unreferenced during that period.
-
-Image layers are stored on the storage backend in the original (usually compressed) format. This
-means that the measured size for any given image layer should match the size displayed on the
-corresponding [image manifest](https://github.com/opencontainers/image-spec/blob/main/manifest.md#example-image-manifest).
-
-Namespace usage is refreshed a few minutes after a tag is pushed or deleted from any container repository under the namespace.
-
-#### Delayed refresh
-
-It is not possible to calculate [container registry usage](#container-registry-usage)
-with maximum precision in real time for extremely large namespaces (about 1% of namespaces).
-To enable maintainers of these namespaces to see their usage, there is a delayed fallback mechanism.
-See [epic 9413](https://gitlab.com/groups/gitlab-org/-/epics/9413) for more details.
-
-If the usage for a namespace cannot be calculated with precision, GitLab falls back to the delayed method.
-In the delayed method, the displayed usage size is the sum of **all** unique image layers
-in the namespace. Untagged image layers are not ignored. As a result,
-the displayed usage size might not change significantly after deleting tags. Instead,
-the size value only changes when:
-
-- An automated [garbage collection process](packages/container_registry/delete_container_registry_images.md#garbage-collection)
- runs and deletes untagged image layers. After a user deletes a tag, a garbage collection run
- is scheduled to start 24 hours later. During that run, images that were previously tagged
- are analyzed and their layers deleted if not referenced by any other tagged image.
- If any layers are deleted, the namespace usage is updated.
-- The namespace's registry usage shrinks enough that GitLab can measure it with maximum precision.
- As usage for namespaces shrinks to be under the [limits](#namespace-storage-limit),
- the measurement switches automatically from delayed to precise usage measurement.
- There is no place in the UI to determine which measurement method is being used,
- but [issue 386468](https://gitlab.com/gitlab-org/gitlab/-/issues/386468) proposes to improve this.
+A cost factor is applied to the storage consumed by project forks so that forks consume less namespace storage than their actual size.
-### Storage usage statistics
+To view the amount of namespace storage the fork has used:
-> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/68898) project-level graph in GitLab 14.4 [with a flag](../administration/feature_flags.md) named `project_storage_ui`. Disabled by default.
-> - Enabled on GitLab.com in GitLab 14.4.
-> - Enabled on self-managed in GitLab 14.5.
-> - [Feature flag removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/71270) in GitLab 14.5.
+1. On the left sidebar, select **Search or go to** and find your project or group.
+1. On the left sidebar, select **Settings > Usage Quotas**.
+1. Select the **Storage** tab. The **Total** column displays the amount of namespace storage used by the fork as a portion of the actual size of the fork on disk.
-The following storage usage statistics are available to a maintainer:
+The cost factor applies to the project repository, LFS objects, job artifacts, packages, snippets, and the wiki.
-- Total namespace storage used: Total amount of storage used across projects in this namespace.
-- Total excess storage used: Total amount of storage used that exceeds their allocated storage.
-- Purchased storage available: Total storage that has been purchased but is not yet used.
+The cost factor does not apply to private forks in namespaces on the Free plan.
-## Manage your storage usage
+## Manage storage usage
To manage your storage, if you are a namespace Owner you can [purchase more storage for the namespace](../subscriptions/gitlab_com/index.md#purchase-more-storage-and-transfer).
@@ -126,14 +72,16 @@ Depending on your role, you can also use the following methods to manage or redu
To automate storage usage analysis and management, see the [storage management automation](storage_management_automation.md) documentation.
-## Manage your transfer usage
+## Set usage quotas **(FREE SELF)**
+
+There are no application limits on the amount of storage and transfer for self-managed instances. The administrators are responsible for the underlying infrastructure costs. Administrators can set [repository size limits](../administration/settings/account_and_limit_settings.md#repository-size-limit) to manage your repositories’ size.
-Depending on your role, to manage your transfer usage you can [reduce Container Registry data transfers](packages/container_registry/reduce_container_registry_data_transfer.md).
+## Storage limits **(FREE SAAS)**
-## Project storage limit
+### Project storage limit
-Projects on GitLab SaaS have a 10 GiB storage limit on their Git repository and LFS storage.
-After namespace-level storage limits are applied, the project limit is removed. A namespace has either a namespace-level storage limit or a project-level storage limit, but not both.
+Projects on GitLab SaaS have a 10 GiB storage limit on their Git repository and LFS storage. Limits on project storage
+will be removed before limits are applied to GitLab SaaS namespace storage in the future.
When a project's repository and LFS reaches the quota, the project is set to a read-only state.
You cannot push changes to a read-only project. To monitor the size of each
@@ -141,7 +89,7 @@ repository in a namespace, including a breakdown for each project,
[view storage usage](#view-storage-usage). To allow a project's repository and LFS to exceed the free quota
you must purchase additional storage. For more details, see [Excess storage usage](#excess-storage-usage).
-### Excess storage usage
+#### Excess storage usage
Excess storage usage is the amount that a project's repository and LFS exceeds the [project storage limit](#project-storage-limit). If no
purchased storage is available the project is set to a read-only state. You cannot push changes to a read-only project.
@@ -185,12 +133,19 @@ available decreases. All projects no longer have the read-only status because 40
| Yellow | 5 GiB | 0 GiB | 10 GiB | Not read-only |
| **Totals** | **45 GiB** | **10 GiB** | - | - |
-## Namespace storage limit
+### Namespace storage limit **(FREE SAAS)**
-Namespaces on GitLab SaaS have a storage limit. For more information, see our [pricing page](https://about.gitlab.com/pricing/).
+GitLab plans to enforce a storage limit for namespaces on GitLab SaaS. For more information, see
+the FAQs for the following tiers:
-After namespace storage limits are enforced, view them in the **Usage quotas** page.
-For more information about the namespace storage limit enforcement, see the FAQ pages for the [Free](https://about.gitlab.com/pricing/faq-efficient-free-tier/#storage-limits-on-gitlab-saas-free-tier) and [Paid](https://about.gitlab.com/pricing/faq-paid-storage-transfer/) tiers.
+- [Free tier](https://about.gitlab.com/pricing/faq-efficient-free-tier/#storage-limits-on-gitlab-saas-free-tier).
+- [Premium and Ultimate](https://about.gitlab.com/pricing/faq-paid-storage-transfer/).
+
+Namespaces on GitLab SaaS have a [10 GiB project limit](#project-storage-limit) with a soft limit on
+namespace storage. Soft storage limits are limits that have not yet been enforced by GitLab, and will become
+hard limits after namespace storage limits apply. To avoid your namespace from becoming
+[read-only](../user/read_only_namespaces.md) after namespace storage limits apply,
+you should ensure that your namespace storage adheres to the soft storage limit.
Namespace storage limits do not apply to self-managed deployments, but administrators can [manage the repository size](../administration/settings/account_and_limit_settings.md#repository-size-limit).
@@ -209,13 +164,13 @@ If your total namespace storage exceeds the available namespace storage quota, a
To notify you that you have nearly exceeded your namespace storage quota:
-- In the command-line interface, a notification displays after each `git push` action when you've reached 95% and 100% of your namespace storage quota.
-- In the GitLab UI, a notification displays when you've reached 75%, 95%, and 100% of your namespace storage quota.
+- In the command-line interface, a notification displays after each `git push` action when your namespace has reached between 95% and 100%+ of your namespace storage quota.
+- In the GitLab UI, a notification displays when your namespace has reached between 75% and 100%+ of your namespace storage quota.
- GitLab sends an email to members with the Owner role to notify them when namespace storage usage is at 70%, 85%, 95%, and 100%.
To prevent exceeding the namespace storage limit, you can:
-- [Manage your storage usage](#manage-your-storage-usage).
+- [Manage your storage usage](#manage-storage-usage).
- If you meet the eligibility requirements, you can apply for:
- [GitLab for Education](https://about.gitlab.com/solutions/education/join/)
- [GitLab for Open Source](https://about.gitlab.com/solutions/open-source/join/)
@@ -225,16 +180,8 @@ To prevent exceeding the namespace storage limit, you can:
- [Start a trial](https://about.gitlab.com/free-trial/) or [upgrade to GitLab Premium or Ultimate](https://about.gitlab.com/pricing/), which include higher limits and features to enable growing teams to ship faster without sacrificing on quality.
- [Talk to an expert](https://page.gitlab.com/usage_limits_help.html) for more information about your options.
-### View project fork storage usage
-
-A cost factor is applied to the storage consumed by project forks so that forks consume less namespace storage than their actual size.
-
-To view the amount of namespace storage the fork has used:
-
-1. On the left sidebar, select **Search or go to** and find your project or group.
-1. On the left sidebar, select **Settings > Usage Quotas**.
-1. Select the **Storage** tab. The **Total** column displays the amount of namespace storage used by the fork as a portion of the actual size of the fork on disk.
-
-The cost factor applies to the project repository, LFS objects, job artifacts, packages, snippets, and the wiki.
+## Related Topics
-The cost factor does not apply to private forks in namespaces on the Free plan.
+- [Automate storage management](storage_management_automation.md)
+- [Purchase storage and transfer](../subscriptions/gitlab_com/index.md#purchase-more-storage-and-transfer)
+- [Transfer usage](packages/container_registry/reduce_container_registry_data_transfer.md)