Skip to content

Commit 702cf7d

Browse files
Merge pull request #4811 from platformsh/4810-guaranteed-resources
feat: added guaranteed resources page
2 parents 798856f + 46c00b1 commit 702cf7d

File tree

5 files changed

+130
-12
lines changed

5 files changed

+130
-12
lines changed

sites/upsun/src/manage-resources/_index.md

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,10 @@ keywords:
1313
- "scaling"
1414
---
1515

16-
{{% vendor/name %}} allows you to configure resources (CPU, RAM, and disk) per environment for each of your apps and services.
17-
You can also add instances for each of your apps depending on your needs.
16+
{{% note theme="note" title="Understand your resource options"%}}
1817

19-
For information on costs related to resource usage, see the [{{% vendor/name %}} pricing page](https://upsun.com/pricing/).
18+
To understand how resources work on {{% vendor/name %}} and learn more about your options, visit the [how resources work](/manage-resources/how-resources-work.html) page.
2019

21-
## How resources work on Upsun
22-
23-
Projects on Upsun run on shared hosts, which means the processing power allocated to your containers can be dependent on resources other customers are using on the same hosts. Our orchestration layer works to ensure stable access to resources when possible, however some variability should be expected due to the shared infrastructure of our regions.
24-
25-
{{< note theme="info" >}}
20+
{{< /note >}}
2621

27-
It should be noted that projects are always kept **strictly isolated** from each other.
2822

29-
{{< /note >}}

sites/upsun/src/manage-resources/autoscaling.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Autoscaling
33
description: Learn how autoscaling dynamically adjusts app instances based on CPU usage to keep apps responsive under load while optimizing costs.
4-
weight: -400
4+
weight: -100
55
keywords:
66
- "resources"
77
- "CPU"

sites/upsun/src/manage-resources/build-resources.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Project build resources
33
description: Configure project build resources on {{% vendor/name %}}.
4-
weight: -50
4+
weight: -30
55
---
66

77
When you push changes through Git, your applications are first built, then deployed.
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
title: Guaranteed resources
3+
description: Learn how Guaranteed CPU on {{% vendor/name %}} provide dedicated CPU and memory allocations for consistent, high-performance workloads.
4+
weight: -50
5+
---
6+
7+
For applications or services that need to scale to large resources and have performance guarantees, {{% vendor/name %}} offers Guaranteed resources (Guaranteed CPU).
8+
9+
Guaranteed CPU ensure that your app or service receives dedicated access to the specified amount of CPU and RAM. These resources are reserved exclusively for your container.
10+
11+
This kind of allocation provides performance close to dedicated infrastructure, ideal for:
12+
13+
- Backend services
14+
- Real-time APIs
15+
- Load testing
16+
- High-traffic production application containers
17+
- Resource-intensive services (e.g. database, search engine)
18+
- Any container requiring large resource allocations with consistent and predictable performance
19+
20+
{{% note theme="warning" title="Region availability"%}}
21+
22+
Guaranteed CPU is **not supported on OVHcloud regions**, and some sizes **may not be available for [all regions](/development/regions.html).**
23+
24+
{{% /note %}}
25+
26+
## Enable Guaranteed CPU
27+
28+
1. Open your project.
29+
2. Click the Configure resources button from the Allocated resources block.
30+
3. For each app/service:
31+
- Select **Guaranteed** or **Shared** as the resource type.
32+
- Choose the desired CPU and RAM combination.
33+
- Enter the amount of Disk/Storage to allocate.
34+
4. Click Save. Saving will rebuild your environment, which may cause temporary downtime.
35+
36+
{{% note %}}
37+
38+
You cannot enable Guaranteed CPU if your [container profile is set to `HIGHER_MEMORY`](/manage-resources/adjust-resources.html#advanced-container-profiles).
39+
40+
{{% /note %}}
41+
42+
## Pause environments with Guaranteed CPU
43+
44+
When any app or service in an environment uses Guaranteed CPU, that environment cannot be paused automatically or manually.
45+
46+
This is because, with Guaranteed CPU, you're billed for the reserved CPU and memory, so allowing pause functionality would lead to potential overuse of reserved compute and incorrect billing.
47+
48+
### To pause the environment again:
49+
50+
1. Switch all containers using Guaranteed CPU back to shared mode.
51+
2. Once no containers are using Guaranteed CPU, the environment can be paused as usual.
52+
53+
{{% note %}}
54+
55+
You can upscale to Guaranteed CPU even if the environment is currently paused. Doing so will automatically resume the environment and apply the changes.
56+
57+
{{% /note %}}
58+
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
title: How resources work on {{% vendor/name %}}
3+
description: Understand how resources work on {{% vendor/name %}} Flex. Learn the differences between shared and guaranteed CPU, how RAM is allocated, and how to configure scalable resources for your apps.
4+
weight: -400
5+
keywords:
6+
- "resources"
7+
- "flexible resources"
8+
- "CPU"
9+
- "RAM"
10+
- "disk storage"
11+
---
12+
13+
On **{{% vendor/name %}} Flex**, you have granular control over your application's resources. Instead of choosing from pre-defined plans, you can configure resources (CPU, RAM, and disk) per environment for each of your apps and services. You can also add instances for each of your apps depending on your needs.
14+
15+
Understanding how {{% vendor/name %}} allocates these resources is key to building stable and cost-effective architecture for your project.
16+
17+
For information on costs related to resource usage, see the [{{% vendor/name %}} pricing page](https://upsun.com/pricing/).
18+
19+
## CPUs vs. vCPUs
20+
21+
Throughout our product and documentation, when we refer to **CPU**, we are describing **vCPUs (virtual CPUs)**. A vCPU is a virtual representation of a physical CPU core. This is the standard for cloud computing, as it allows a physical server's resources to be securely divided among multiple applications.
22+
23+
vCPU performance can sometimes vary depending on factors such as:
24+
25+
- Cloud provider and [region](/development/regions.html)
26+
- System load from other containers on a shared host (in shared mode)
27+
28+
## CPU: Shared vs. Guaranteed
29+
30+
CPU resources can be allocated in two distinct ways. This choice allows you to precisely balance cost with performance needs for each individual container in your project.
31+
32+
### Shared CPU (Default)
33+
34+
By default, projects on {{% vendor/name %}} Flex run on **shared hosts**, which means the processing power allocated to your containers can be dependent on resources other customers are using on the same hosts. Our orchestration layer works to ensure stable access to resources when possible, however some variability should be expected due to the shared infrastructure of our regions.
35+
36+
{{< note theme="info" >}}
37+
38+
It should be noted that projects are always kept **strictly isolated** from each other.
39+
40+
{{< /note >}}
41+
42+
**Best for:**
43+
- Containers in development/staging environments
44+
- Production containers with low-to-moderate traffic
45+
46+
**Consideration:**
47+
- Performance can be variable due to the "noisy neighbour" effect inherent in shared infrastructure.
48+
49+
### Guaranteed CPU
50+
51+
With [Guaranteed CPU](/manage-resources/guaranteed-resources), your container is placed on a dedicated host, and the host's CPU resources are reserved exclusively for your container's use. This provides the highest level of CPU performance and predictability by eliminating any "noisy neighbour" effect.
52+
53+
**Best for:**
54+
- High-traffic production application containers
55+
- Resource-intensive services (e.g. database, search engine)
56+
- Any container requiring large resource allocations with consistent and predictable performance
57+
58+
**Consideration:**
59+
- This option has a higher cost due to its dedicated nature.
60+
- A small portion of host CPU and RAM is used by {{% vendor/name %}}’s system services. The available capacity will be slightly lower than the full allocation selected.
61+
62+
## Memory (RAM)
63+
64+
The memory (RAM) you configure for a container is **always guaranteed**.
65+
66+
This means the full amount of RAM you define is exclusively available to that container and is never shared. This guarantees predictable memory performance and prevents issues caused by other applications on the same host, regardless of your chosen CPU type.
67+

0 commit comments

Comments
 (0)