Skip to content

Commit 30ae9a0

Browse files
SamyOubouazizbene2k1ldecarvalho-docjcirinosclwy
authored
feat(srv): add faas/caas x VPC doc MTA-6202 (#5185)
* feat(srv): add faas/caas x VPC doc MTA-6202 * feat(srv): update * feat(srv): update * feat(srv): update * feat(srv): update * feat(srv): update * feat(srv): update * Update pages/serverless-containers/faq.mdx Co-authored-by: Benedikt Rollik <[email protected]> * Update pages/serverless-containers/how-to/use-private-networks.mdx Co-authored-by: ldecarvalho-doc <[email protected]> * Update pages/serverless-containers/how-to/use-private-networks.mdx Co-authored-by: Jessica <[email protected]> * Apply suggestions from code review Co-authored-by: Benedikt Rollik <[email protected]> Co-authored-by: Jessica <[email protected]> --------- Co-authored-by: Benedikt Rollik <[email protected]> Co-authored-by: ldecarvalho-doc <[email protected]> Co-authored-by: Jessica <[email protected]>
1 parent 03fbe21 commit 30ae9a0

File tree

12 files changed

+260
-20
lines changed

12 files changed

+260
-20
lines changed

menu/navigation.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4381,6 +4381,10 @@
43814381
"label": "Secure a container",
43824382
"slug": "secure-a-container"
43834383
},
4384+
{
4385+
"label": "Use Private Networks",
4386+
"slug": "use-private-networks"
4387+
},
43844388
{
43854389
"label": "Test a container",
43864390
"slug": "test-a-container"
@@ -4549,6 +4553,10 @@
45494553
"label": "Secure a function",
45504554
"slug": "secure-a-function"
45514555
},
4556+
{
4557+
"label": "Use Private Networks",
4558+
"slug": "use-private-networks"
4559+
},
45524560
{
45534561
"label": "Monitor function logs and metrics",
45544562
"slug": "monitor-function"

pages/instances/how-to/use-private-networks.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ If you want to create a Private Network without immediately attaching any resour
7070
## How to delete a Private Network
7171

7272
<Message type="note">
73-
Before deleting a Private Network, you must [detach](/instances/how-to/use-private-networks/#how-to-detach-instances-from-a-private-network) all Instances attached to it.
73+
Before deleting a Private Network, you must [detach](/vpc/how-to/attach-resources-to-pn/#how-to-detach-a-resource-from-a-private-network) all resources attached to it.
7474
</Message>
7575

7676
This must be carried out from the VPC section of the console. Follow the procedure detailed in our [dedicated VPC documentation](/vpc/how-to/delete-private-network/).

pages/serverless-containers/concepts.mdx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,9 +181,21 @@ Refer to the [dedicated documentation](/serverless-containers/reference-content/
181181

182182
A container's privacy policy defines whether a container may be invoked anonymously (**public**) or only via an authentication mechanism provided by the [Scaleway API](https://www.scaleway.com/en/developers/api/serverless-containers/#authentication) (**private**).
183183

184-
## Private Networks compatibility
184+
## Private Networks
185185

186-
Refer to the [dedicated FAQ](/serverless-containers/faq/#how-can-i-configure-access-to-a-private-network-or-virtual-private-cloud-vpc) for more information on Serverless Containers compatibility with Private Networks and [Virtual Private Cloud (VPC)](/vpc/).
186+
Scaleway Serverless Containers support Private Networks.
187+
188+
Private Networks let you connect Scaleway resources across multiple AZs within the same region. Attached resources can then communicate between themselves in an isolated and secure layer 2 network, away from the public internet.
189+
190+
**D**ynamic **H**ost **C**onfiguration **P**rotocol (DHCP) is built into each Private Network, making it easy to manage the private IP addresses of your resources on the network.
191+
192+
Read our dedicated documentation on [creating a Private Network](/vpc/how-to/create-private-network/).
193+
194+
<Message type="note">
195+
Previously, Private Networks at Scaleway were zoned. Only resources from within one defined AZ could be attached to each network. Now, all Private Networks are regional, and resources from any AZ within that network's region can be attached. "Old" zoned Private Networks have all been automatically migrated to become regional.
196+
197+
While DHCP is built into all new Private Networks, it may not be automatically activated for older Private Networks. Check our [migration](/vpc/reference-content/vpc-migration/) documentation for more information.
198+
</Message>
187199

188200
## Queue trigger
189201

pages/serverless-containers/faq.mdx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ Yes, you can [redirect all inbound HTTP connections to HTTPS](/serverless-contai
229229

230230
### Can I whitelist the IPs of my containers?
231231

232-
Serverless Containers does not yet support Private Networks. However, you can use the Scaleway IP ranges defined at [https://www.scaleway.com/en/peering/](https://www.scaleway.com/en/peering/) on Managed Databases and other products that allow IP filtering.
232+
Scaleway Serverless Containers support [Virtual Private Cloud (VPC)](/vpc/) and can be attached to a Private Network, which allows you to securely connect your resources in an isolated environment. Refer to the [dedicated documentation](/serverless-functions/how-to/use-private-networks/) for more information.
233233

234234
### Which protocols are supported by Serverless Containers?
235235

@@ -243,9 +243,7 @@ Containers use **http1** by default, yet the gRPC protocol requires `http2`. You
243243

244244
### How can I configure access to a Private Network or Virtual Private Cloud (VPC)?
245245

246-
Scaleway Serverless Containers does not currently support Scaleway VPC or Private Networks, though this feature is under development.
247-
248-
To add network restrictions on your resource, refer to the [list of prefixes used at Scaleway](https://www.scaleway.com/en/peering/). Serverless resources do not have dedicated or predictable IP addresses.
246+
Scaleway Serverless Functions support [Virtual Private Cloud (VPC)](/vpc/) and can be attached to a Private Network. Refer to the [dedicated documentation](/serverless-functions/how-to/use-private-networks/) for more information.
249247

250248
### Can I use my own TLS certificates for custom domains?
251249

@@ -290,6 +288,6 @@ Further integrations are also possible even if not listed above, for example, [S
290288

291289
You cannot use Serverless Containers with Edge Services because there are no native integrations between the two products yet.
292290

293-
### Can I use the IP address of a Serverless Function?
291+
### Can I use the IP address of a Serverless Container?
294292

295293
By design, it is not possible to guarantee static IPs on Serverless compute resources.

pages/serverless-containers/how-to/create-manage-delete-containers-namespace.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ This page shows you how to create and manage a Serverless Containers namespace.
2929
- Enter a **name** or use the automatically generated one. The name must only contain alphanumeric characters and dashes.
3030
- Enter an optional **description** and **tags**.
3131
- Choose a **region**, which is the geographical location in which your namespace will be deployed.
32+
- Tick the **Enable VPC support** if you want to create containers within this namespace that you can attach to a [Private Network](/serverless-functions/concepts/#private-networks).
3233
- Enter any **environment variables** required for your namespace. Environment variables configured in a namespace will be available in all containers/apps within the same namespace. For each environment variable, click **+ Add new variable** and enter the key / value pair.
3334
- Set secret environment variables (optional). **Secrets** are environment variables that are injected into your container and stored securely, but not displayed in the console after initial validation. Add a **key** and a **value**.
3435
- Verify the **estimated cost**.
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
meta:
3+
title: How to use Private Networks with your Serverless Containers
4+
description: This page explains how to use Private Networks for Scaleway Serverless Containers
5+
content:
6+
h1: How to use Private Networks with your Serverless Containers
7+
paragraph: This page explains how to use Private Networks for Scaleway Serverless Containers
8+
tags: private-networks private networks instance containers vpc
9+
dates:
10+
validation: 2025-06-25
11+
posted: 2021-06-25
12+
categories:
13+
- serverless
14+
---
15+
16+
[Private Networks](/serverless-containers/concepts/#private-networks) allow your Serverless Containers to communicate in an isolated and secure network without needing to be connected to the public internet. Each container can be connected to one or several Private Networks, letting you build your own network topologies.
17+
18+
For full information about Scaleway Private Networks and VPC, see our [dedicated documentation](/vpc/) and [best practices guide](/vpc/reference-content/getting-most-private-networks/).
19+
20+
<Message type="important">
21+
The Private Networks feature can only be enabled on newly created namespaces. Existing namespaces that do not have the feature enabled cannot be integrated in a Private Network.
22+
</Message>
23+
24+
<Macro id="requirements" />
25+
26+
- A Scaleway account logged into the [console](https://console.scaleway.com)
27+
- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
28+
- [Created a Private Network](/vpc/how-to/create-private-network/)
29+
30+
31+
## How to create a Private Network
32+
33+
This action must be carried out from the VPC section of the console. Follow the procedure detailed in our [dedicated VPC documentation](/vpc/how-to/create-private-network/).
34+
35+
## How to create a Private Networks-enabled namespace
36+
37+
Before attaching a Private Network to a Serverless Container, you must create it within a namespace with the Private Networks feature enabled.
38+
39+
1. Click **Containers** in the **Serverless** section of the side menu. The containers page displays.
40+
41+
2. Click **+ Create namespace**. If you have no existing Serverless Containers resources in your current Project, click **Create a container**. The containers namespace creation wizard displays.
42+
43+
3. Complete the following steps in the wizard:
44+
- Enter a **name** or use the automatically generated one. The name can only contain lowercase alphanumeric characters and dashes.
45+
- Enter an optional **description** and **tags**.
46+
- Choose a **region**, which is the geographical location in which your namespace will be deployed.
47+
- Tick the **Enable VPC support** box. This parameter cannot be edited once the namespace is created.
48+
- Click **+ Add advanced options** to define any **environment variables** you want to inject into your container. For each environment variable, click **+ Add variable** and enter the key/value pair.
49+
- Set optional secret environment variables. **Secrets** are environment variables which are injected into your container and stored securely, but not displayed in the console after initial validation. Add a **key** and a **value**.
50+
4. Click **Create namespace only** to finish, or click **Create namespace and add a container** if you want to [create a container](/serverless-containers/how-to/create-a-container/) next.
51+
52+
## How to attach a Serverless Container to a Private Network
53+
54+
<Tabs id="private-network-containers">
55+
<TabsTab label="Existing container">
56+
1. Click **Containers** in the **Serverless** section of the side menu. The containers page displays.
57+
2. Click the relevant containers namespace.
58+
3. Click the name of the container you want to manage.
59+
4. Open the **Settings** tab, then scroll to the **Advanced options** section.
60+
5. In the **VPC** tab, select a Private Network from the dropdown menu.
61+
6. Click **Save container settings**.
62+
63+
Your container is redeployed, and is now attached to the selected Private Network.
64+
</TabsTab>
65+
<TabsTab label="New container">
66+
1. Click **Containers** in the **Serverless** section of the side menu. The containers page displays.
67+
2. Click the **Private Networks-enabled** containers namespace in which you want to create your container.
68+
3. Click **+ Create container**. The container creation wizard displays.
69+
4. Scroll to the **Advanced options** section.
70+
5. In the **VPC** tab, select a Private Network from the dropdown menu.
71+
6. Configure the other parameters of your container, then click **Create container**. Refer to the [How to create a container](/serverless-containers/how-to/create-a-container/) for more information.
72+
73+
Your new container is deployed, and is attached to the selected Private Network.
74+
</TabsTab>
75+
</Tabs>
76+
77+
## How to detach a container from a Private Network
78+
79+
1. Click **Containers** in the **Serverless** section of the side menu. The containers page displays.
80+
2. Click the relevant containers namespace.
81+
3. Click the name of the container you want to manage.
82+
4. Open the **Settings** tab, then scroll to the **Advanced options** section.
83+
5. In the **VPC** tab, click the <Icon name="unlink" /> icon next to the Private Network attached to your container.
84+
6. Click **Save container settings**.
85+
86+
Your container is redeployed and is now detached from the Private Network.
87+
88+
## How to delete a Private Network
89+
90+
<Message type="note">
91+
Before deleting a Private Network, you must [detach](/vpc/how-to/attach-resources-to-pn/#how-to-detach-a-resource-from-a-private-network) all resources attached to it.
92+
</Message>
93+
94+
This must be carried out from the VPC section of the console. Follow the procedure detailed in our [dedicated VPC documentation](/vpc/how-to/delete-private-network/).

pages/serverless-containers/reference-content/containers-limitations.mdx

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ This section contains usage limits that apply when using Serverless Containers.
3535
| Secret environment variables | Max size | 65536 bytes | Secret environment variable |
3636
| Time before scale to zero | Time | 15 minutes | Instance |
3737
| Time before scale down | Time | 30 seconds | Instance |
38-
| Max HTTP request duration\*** | Max | 60 minutes | Request |
38+
| HTTP request duration\*** | Max | 60 minutes | Request |
39+
| Private Networks attached | Max | 1 | Container |
3940
| Logs | Logs | 30000 per minute | Project |
4041

4142
\* Lower limits may apply before account verification. Contact our support team if you have any questions.
@@ -87,9 +88,19 @@ Do not have your containers listen on these ports, as they are used by our servi
8788

8889
**Not available:** Serverless products are designed to abstract away infrastructure management, to be easily scalable, and to be cost-efficient and simple. So dedicated IPs are not supported for this product.
8990

90-
## Private Network and Virtual Private Cloud (VPC) compatibility
91+
## Private Networks and Virtual Private Cloud (VPC)
9192

92-
Refer to the [dedicated FAQ](/serverless-containers/faq/#how-can-i-configure-access-to-a-private-network-or-virtual-private-cloud-vpc) for more information on Serverless Containers compatibility with Private Networks and [Virtual Private Cloud (VPC)](/vpc/).
93+
### Compatibility
94+
95+
Scaleway Serverless Containers support [Virtual Private Cloud (VPC)](/vpc/) and can be attached to a Private Network, which allows you to securely connect your resources in an isolated environment. Refer to the [dedicated documentation](/serverless-containers/how-to/use-private-networks/) for more information.
96+
97+
### Limitations
98+
99+
- VPC is only compatible with containers using [sandbox](/serverless-containers/reference-content/container-sandbox/) V1 for the moment.
100+
101+
- VPC works with Namespaces that have **VPC support enabled**. VPC support can only be enabled at [namespace creation](/serverless-functions/how-to/create-manage-delete-containers-namespace/#creating-a-serverless-containers-namespace), and cannot be updated afterward.
102+
103+
- Only one Private Network can be attached to a function.
93104

94105
## Default values for CPU and memory limits
95106

pages/serverless-functions/concepts.mdx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,9 +113,21 @@ The function can then process the message and perform any required actions, such
113113

114114
A function's privacy policy defines whether a function may be executed anonymously (**public**) or only via an authentication mechanism provided by the [Scaleway API](https://www.scaleway.com/en/developers/api/serverless-functions/#authentication) (**private**).
115115

116-
## Private Networks compatibility
116+
## Private Networks
117117

118-
Refer to the [dedicated FAQ](/serverless-functions/faq/#how-can-i-configure-access-to-a-private-network-or-virtual-private-cloud-vpc) for more information on Serverless Functions compatibility with Private Networks and [Virtual Private Cloud (VPC)](/vpc/).
118+
Scaleway Serverless Functions support Private Networks.
119+
120+
Private Networks let you connect Scaleway resources across multiple AZs within the same region. Attached resources can then communicate between themselves in an isolated and secure layer 2 network, away from the public internet.
121+
122+
**D**ynamic **H**ost **C**onfiguration **P**rotocol (DHCP) is built into each Private Network, making it easy to manage the private IP addresses of your resources on the network.
123+
124+
Read our dedicated documentation on [creating a Private Network](/vpc/how-to/create-private-network/).
125+
126+
<Message type="note">
127+
Previously, Private Networks at Scaleway were zoned. Only resources from within one defined AZ could be attached to each network. Now, all Private Networks are regional, and resources from any AZ within that network's region can be attached. "Old" zoned Private Networks have all been automatically migrated to become regional.
128+
129+
While DHCP is built into all new Private Networks, it may not be automatically activated for older Private Networks. Check our [migration](/vpc/reference-content/vpc-migration/) documentation for more information.
130+
</Message>
119131

120132
## Queue trigger
121133

pages/serverless-functions/faq.mdx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -243,13 +243,11 @@ See the [functions runtimes documentation](/serverless-functions/reference-conte
243243

244244
### How can I configure access to a Private Network or Virtual Private Cloud (VPC)?
245245

246-
Scaleway Serverless Functions does not currently support Scaleway VPC or Private Networks, though this feature is under development.
247-
248-
To add network restrictions on your resource, consult the [list of prefixes used at Scaleway](https://www.scaleway.com/en/peering/). Note that Serverless resources do not have dedicated or predictable IP addresses.
246+
Scaleway Serverless Functions support [Virtual Private Cloud (VPC)](/vpc/) and can be attached to a Private Network. Refer to the [dedicated documentation](/serverless-functions/how-to/use-private-networks/) for more information.
249247

250248
### Can I allow to list the IPs of my functions?
251249

252-
Serverless Functions does not yet support Private Networks. However, you can use the Scaleway IP ranges defined at [https://www.scaleway.com/en/peering/](https://www.scaleway.com/en/peering/) on Managed Databases and other products that allow IP filtering.
250+
Scaleway Serverless Functions support [Virtual Private Cloud (VPC)](/vpc/) and can be attached to a Private Network, which allows you to securely connect your resources in an isolated environment. Refer to the [dedicated documentation](/serverless-functions/how-to/use-private-networks/) for more information.
253251

254252
### Can I use Serverless Functions with Edge Services?
255253

pages/serverless-functions/how-to/create-manage-delete-functions-namespace.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ This page shows you how to create, manage, and delete a Functions namespace usin
3232
- Enter a **name** or use the automatically generated one. The name can only contain lowercase alphanumeric characters and dashes.
3333
- Enter an optional **description** and **tags**.
3434
- Choose a **region**, which is the geographical location in which your namespace will be deployed.
35+
- Tick the **Enable VPC support** if you want to create functions within this namespace that you can attach to a [Private Network](/serverless-functions/concepts/#private-networks).
3536
- Click **+ Add advanced options** to define any **environment variables** you want to inject into your function. For each environment variable, click **+ Add variable** and enter the key/value pair.
3637
- Set optional secret environment variables. **Secrets** are environment variables which are injected into your function and stored securely, but not displayed in the console after initial validation. Add a **key** and a **value**.
3738
4. Click **Create namespace only** to finish, or click **Create namespace and add a function** if you want to [create a function](/serverless-functions/how-to/create-a-function/) next.

0 commit comments

Comments
 (0)