From d60d17347d61b2eb533f1e1e244ff0eae0abbfa2 Mon Sep 17 00:00:00 2001 From: Rowena Date: Wed, 6 Nov 2024 10:18:30 +0100 Subject: [PATCH 01/22] fix(pgw): explain deprecation --- .../reference-content/index.mdx | 8 +++ .../reference-content/understanding-v2.mdx | 63 +++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 network/public-gateways/reference-content/index.mdx create mode 100644 network/public-gateways/reference-content/understanding-v2.mdx diff --git a/network/public-gateways/reference-content/index.mdx b/network/public-gateways/reference-content/index.mdx new file mode 100644 index 0000000000..056146c1fd --- /dev/null +++ b/network/public-gateways/reference-content/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Public Gateways - Additional Content + description: Explore detailed Scaleway configurations, best practices and troubleshooting for Scaleway Public Gateways. Optimize configuration of your gateway with our comprehensive reference guides. +content: + h1: Public Gateways - Additional Content + paragraph: Explore detailed Scaleway configurations, best practices and troubleshooting for Scaleway Public Gateways. Optimize configuration of your gateway with our comprehensive reference guides. +--- diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/network/public-gateways/reference-content/understanding-v2.mdx new file mode 100644 index 0000000000..fbb1e57fe1 --- /dev/null +++ b/network/public-gateways/reference-content/understanding-v2.mdx @@ -0,0 +1,63 @@ +--- +meta: + title: Understanding and preparing for Public Gateways v2 + description: Find out what to expect from Public Gateways v2, and get ready for deprecation of DHCP entries and the DHCP object, as well as new default behavior for IPAM mode. +content: + h1: Understanding and preparing for Public Gateways v2 + paragraph: Find out what to expect from Public Gateways v2, and get ready for deprecation of DHCP entries and the DHCP object, as well as new default behavior for IPAM mode. +tags: public-gateways dhcp dhcp-entries api v2 ipam-mode legacy +dates: + creation: 2024-11-05 + validation: 2024-11-05 +categories: + - network +--- + +Scaleway's VPC offering is evolving, and with this comes changes for the Public Gateway product. + +This document explains what to expect and how to prepare for the upcoming changes. + +## Background: DHCP and IPAM + +When Public Gateways were originally introduced, they provided DHCP functionality for resources on attached Private Networks. With the [arrival of Scaleway VPC](/network/vpc/reference-content/vpc-migration/), DHCP was moved from Public Gateways to Private Networks themselves. + +Scaleway also introduced [IPAM](/network/ipam/concepts/#ipam) to act as a single source of truth for the IP addressing of all Scaleway resources. DHCP uses IPAM to ensure consistent and reliable addressing across all Private Networks. + +When you [create a Private Network](/network/vpc/how-to/create-private-network/), you can either automatically generate a default IPv4 CIDR block, or define a custom block. A default IPv6 block is automatically created. When you attach resources to the Private Network, they automatically receive an IPv4 address (and, if compatible, an IPv6 address) from this block. Alternatively, you can [reserve a specific IP address](/network/ipam/how-to/reserve-ip/) from the block, and [specify this address](/network/ipam/how-to/reserve-ip/#how-to-attach-a-resource-to-a-private-network-using-a-reserved-ip-address) when attaching the resource. + +Whether you choose a custom or default CIDR block, automatic address assignment or use a reserved address, **the resource's private IP address does not risk changing** unless you detach the resource from the Private Network. To ensure that you can keep the same address for a resource even after detaching it, use the [reserve IP](/network/ipam/how-to/reserve-ip/) functionality. + +## Completing the removal of DHCP from Public Gateways + +Since the assignment and management of IP addresses on Private Networks is now managed by IPAM and the Private Networks themselves, we must complete the removal of the DHCP functionality from Public Gateways. This means releasing a new version (v2) of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), which has until now retained a number of legacy DHCP functions. From this new version, you can expect: + +- Deprecation of the DHCP object +- IPAM mode becoming default +- Deprecation of DHCP entries + +Read on to find out more. + +### Deprecation of the DHCP object + +The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has, until now, allowed users to define a DHCP configuration, which specified how IP addresses should be assigned to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). + +When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)), via the API, you could either: +- Pass a DHCP object +- Pass a static IP address to use + + + + +These objects define a DHCP configuration, i.e. how IP addresses should be assigned to devices on a Private Network attached to a Public Gateway. Definable parameters include the subnet for the DHCP server, the validity period for DHCP entries, whether to use dynamic pooling, and more. A DHCP configuration object has a DHCP ID, which can then be used as part of a call to create or update a Gateway Network. This lets you attach an existing DHCP configuration to a Public Gateway attached to a Private Network. Similarly, you can use a DHCP ID as a query parameter to list Gateway Networks which use this DHCP configuration object. + + + + +The NetProdCore will release a new version of the PGW API, deprecating DHCP entries, DHCP object and setting the IPAM mode as the new default mode when creating a PGW. + +We will need a documentation page explaining: + + why we will deprecate the old API + what will be the impacts for the customers + how can they migrate to the new API (using some TF examples that DevTools will provide) + From 0217e4d2a7eb35b8cc78e7d8b043909b698f64aa Mon Sep 17 00:00:00 2001 From: Rowena Date: Wed, 6 Nov 2024 11:31:28 +0100 Subject: [PATCH 02/22] fix(pgw): add v2 prep doc --- .../reference-content/understanding-v2.mdx | 62 +++++++++++++++---- 1 file changed, 50 insertions(+), 12 deletions(-) diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/network/public-gateways/reference-content/understanding-v2.mdx index fbb1e57fe1..deb809ee9a 100644 --- a/network/public-gateways/reference-content/understanding-v2.mdx +++ b/network/public-gateways/reference-content/understanding-v2.mdx @@ -19,7 +19,7 @@ This document explains what to expect and how to prepare for the upcoming change ## Background: DHCP and IPAM -When Public Gateways were originally introduced, they provided DHCP functionality for resources on attached Private Networks. With the [arrival of Scaleway VPC](/network/vpc/reference-content/vpc-migration/), DHCP was moved from Public Gateways to Private Networks themselves. +When Scaleway originally introduced Public Gateways, they provided DHCP functionality for resources on attached Private Networks. With the [arrival of Scaleway VPC](/network/vpc/reference-content/vpc-migration/), DHCP was moved from Public Gateways to Private Networks themselves. Scaleway also introduced [IPAM](/network/ipam/concepts/#ipam) to act as a single source of truth for the IP addressing of all Scaleway resources. DHCP uses IPAM to ensure consistent and reliable addressing across all Private Networks. @@ -31,33 +31,71 @@ Whether you choose a custom or default CIDR block, automatic address assignment Since the assignment and management of IP addresses on Private Networks is now managed by IPAM and the Private Networks themselves, we must complete the removal of the DHCP functionality from Public Gateways. This means releasing a new version (v2) of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), which has until now retained a number of legacy DHCP functions. From this new version, you can expect: +- IPAM mode becomes default - Deprecation of the DHCP object -- IPAM mode becoming default +- Deprecation of the `address` field - Deprecation of DHCP entries Read on to find out more. +### IPAM mode becomes default + +Scaleway Public Gateways are either in **Legacy mode** or **IPAM mode**. You can see the mode of a given gateway by: + +- Checking its badge in the gateway listing page of the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) +- Checking the value of the `is_legacy` field via the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-get-a-public-gateway). + + +All Public Gateways created via the Scaleway console since 17 October 2023 are necessarily in IPAM mode. + + +Legacy Public Gateways use a [workaround](/network/vpc/reference-content/vpc-migration/#public-gateways-and-vpc) to ensure IPAM compatibility. IPAM-mode Public Gateways are fully integrated with Scaleway's [IPAM](/network/ipam/concepts/#ipam), which manages the coherent assignment of IP addresses to the gateway itself, and resources on attached Private Networks. + +Legacy mode will be deprecated going forward. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode and the `is_legacy` parameter will be removed. + ### Deprecation of the DHCP object -The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has, until now, allowed users to define a DHCP configuration, which specified how IP addresses should be assigned to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). +The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has, until now, allowed users to define a DHCP configuration, which specified how the gateway should assign IP addresses to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). + +When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can pass a DHCP object, or the ID of an existing DHCP object. + +This functionality will be deprecated going forward. It will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default. + +### Deprecation of the `address` field + +When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. + +This functionality will be deprecated going forward. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for the Public Gateway on this Private Network, if you wish. Otherwise, IPAM will auto-assign an IP address from the Private Network's CIDR block to the Public Gateway. + +### Deprecation of DHCP entries + +[DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries) belong to a specified `GatewayNetwork` (Public Gateway / Private Network attachment) and can hold dynamic DHCP leases or static, user-created DHCP reservations. They effectively allow the Public Gateway to assign certain IP addresses to certain resources on the Private Network. + +DHCP entries will be deprecated going forward. Instead, you can rely on the default IPAM/DHCP functionality as described [above](#background-dhcp-and-ipam). The default behavior will auto-assign IP addresses to resources on the Private Network from the network's CIDR block, or you can use the IP reservation functionality to specify the IP address(es) to assign to each resource. -When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)), via the API, you could either: -- Pass a DHCP object -- Pass a static IP address to use +For custom resources, such as VMs hosted on Elastic Metal servers, you can use the IPAM API's [Attach IP to custom resource](https://www.scaleway.com/en/developers/api/ipam/#path-ips-attach-ip-to-custom-resource) method to assign IP addresses on Private Networks. This lets you associate a [reserved IP](https://www.scaleway.com/en/developers/api/ipam/#path-ips-reserve-a-new-ip) address with a resource name and MAC address. +## Deprecation and removal timeline +The Public Gateway v1 API will be deprecated on [TODO-DATE. OR JUST CERTAIN FIELDS/OBJECTS DEPRECATED?]. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. +We will release v2 of the Public Gateway API on [TODO-DATE - SAME DATE?]. During the period that both versions of the API co-exist, you must migrate your resources from v1 to v2. -These objects define a DHCP configuration, i.e. how IP addresses should be assigned to devices on a Private Network attached to a Public Gateway. Definable parameters include the subnet for the DHCP server, the validity period for DHCP entries, whether to use dynamic pooling, and more. A DHCP configuration object has a DHCP ID, which can then be used as part of a call to create or update a Gateway Network. This lets you attach an existing DHCP configuration to a Public Gateway attached to a Private Network. Similarly, you can use a DHCP ID as a query parameter to list Gateway Networks which use this DHCP configuration object. +[TODO - INSERT INFORMATION ON HOW TO MIGRATE] +[TODO - WHAT WILL THIS ALL LOOK LIKE IN THE CONSOLE? +[TODO - DO USERS WHO DON'T USE LEGACY / DHCP OBJECT / DHCP ENTRIES HAVE ANY ACTION TO TAKE?] +After a period of [TODO - HOW LONG] weeks/months, v1 of the API will be removed. Any resources that have not been migrated to v2 by this time [TODO - WHAT WILL HAPPEN TO THEM?] -The NetProdCore will release a new version of the PGW API, deprecating DHCP entries, DHCP object and setting the IPAM mode as the new default mode when creating a PGW. +## Further help and support -We will need a documentation page explaining: +If you have any questions, get in touch with us on the `#public-gateway` channel on the [Scaleway Slack Community](https://www.scaleway.com/en/docs/tutorials/scaleway-slack-community/), or [open a support ticket](https://console.scaleway.com/support/tickets/create). - why we will deprecate the old API - what will be the impacts for the customers - how can they migrate to the new API (using some TF examples that DevTools will provide) +The following documentation resources may be useful to you: +- [Public Gateway API Documentation](https://www.scaleway.com/en/developers/api/public-gateway/) +- [Public Gateway Main Documentation](https://www.scaleway.com/en/docs/network/public-gateways/) +- [IPAM API Documentation](https://www.scaleway.com/en/developers/api/ipam/) +- [IPAM Main Documentation](https://www.scaleway.com/en/docs/network/ipam/) From c85c853e9e5629cdd30d5abf25d9b527ff1056df Mon Sep 17 00:00:00 2001 From: Rowena Date: Wed, 6 Nov 2024 11:41:57 +0100 Subject: [PATCH 03/22] fix(pgw): corrections --- .../reference-content/understanding-v2.mdx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/network/public-gateways/reference-content/understanding-v2.mdx index deb809ee9a..cb07c978da 100644 --- a/network/public-gateways/reference-content/understanding-v2.mdx +++ b/network/public-gateways/reference-content/understanding-v2.mdx @@ -17,6 +17,10 @@ Scaleway's VPC offering is evolving, and with this comes changes for the Public This document explains what to expect and how to prepare for the upcoming changes. +## Summary (TL;DR) + +[TODO INSERT BRIEF SUMMARY OF CHANGES AND WHAT USERS MUST DO] + ## Background: DHCP and IPAM When Scaleway originally introduced Public Gateways, they provided DHCP functionality for resources on attached Private Networks. With the [arrival of Scaleway VPC](/network/vpc/reference-content/vpc-migration/), DHCP was moved from Public Gateways to Private Networks themselves. @@ -61,7 +65,7 @@ When attaching a Public Gateway to a Private Network (creating a [Gateway Networ This functionality will be deprecated going forward. It will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default. -### Deprecation of the `address` field +### Deprecation of the address field When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. @@ -83,7 +87,7 @@ We will release v2 of the Public Gateway API on [TODO-DATE - SAME DATE?]. During [TODO - INSERT INFORMATION ON HOW TO MIGRATE] -[TODO - WHAT WILL THIS ALL LOOK LIKE IN THE CONSOLE? +[TODO - WHAT WILL THIS ALL LOOK LIKE IN THE CONSOLE? ] [TODO - DO USERS WHO DON'T USE LEGACY / DHCP OBJECT / DHCP ENTRIES HAVE ANY ACTION TO TAKE?] From d1d9c064e7ced709c784fa3735e5e43d4ed5dd82 Mon Sep 17 00:00:00 2001 From: Rowena Date: Thu, 7 Nov 2024 11:51:09 +0100 Subject: [PATCH 04/22] fix(pgw): add info --- .../reference-content/understanding-v2.mdx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/network/public-gateways/reference-content/understanding-v2.mdx index cb07c978da..d23760ec97 100644 --- a/network/public-gateways/reference-content/understanding-v2.mdx +++ b/network/public-gateways/reference-content/understanding-v2.mdx @@ -19,7 +19,9 @@ This document explains what to expect and how to prepare for the upcoming change ## Summary (TL;DR) -[TODO INSERT BRIEF SUMMARY OF CHANGES AND WHAT USERS MUST DO] +If you have a [legacy](/network/public-gateways/concepts/#ipam) Public Gateway, or a Public Gateway that is still using the [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) or [DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries) from the existing API, you must recreate your Public Gateway in the new v2 API, as these functionalities are being deprecated. + +If your Public Gateway is already in [IPAM-mode](/network/public-gateways/concepts/#ipam), and you do not use the DHCP object or DHCP entries (only configurable by the API and not the console) your gateway will be automatically migrated to the new v2, and you do not need to take any action. [TODO - DOWNTIME?] ## Background: DHCP and IPAM @@ -91,7 +93,9 @@ We will release v2 of the Public Gateway API on [TODO-DATE - SAME DATE?]. During [TODO - DO USERS WHO DON'T USE LEGACY / DHCP OBJECT / DHCP ENTRIES HAVE ANY ACTION TO TAKE?] -After a period of [TODO - HOW LONG] weeks/months, v1 of the API will be removed. Any resources that have not been migrated to v2 by this time [TODO - WHAT WILL HAPPEN TO THEM?] +After a period of [TODO - HOW LONG] weeks/months, v1 of the API will be removed. Any resources that have not been migrated to v2 by this time will cotinue to run, but can no longer be modified, nor recreated on the v1 API if they fail or are deleted. Any CLI, Terraform or other devtool scripts using v1 of the API will no longer function. + +[TODO - IF PGW ON V1 CRASHES, HOW IS IT RECREATED? Elle est remontée à l'identique (y compris basée sur des fonctionnalités dispos uniquement en v1) ? A confirmer.] ## Further help and support From cf8e9430995e43892fffc9bd1e2e57bef4136e46 Mon Sep 17 00:00:00 2001 From: Rowena Date: Thu, 23 Jan 2025 18:05:36 +0100 Subject: [PATCH 05/22] fix(pgw): update migration doc --- .../reference-content/understanding-v2.mdx | 67 ++++++++++++++----- 1 file changed, 51 insertions(+), 16 deletions(-) diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/network/public-gateways/reference-content/understanding-v2.mdx index d23760ec97..fdfb6bed88 100644 --- a/network/public-gateways/reference-content/understanding-v2.mdx +++ b/network/public-gateways/reference-content/understanding-v2.mdx @@ -7,8 +7,8 @@ content: paragraph: Find out what to expect from Public Gateways v2, and get ready for deprecation of DHCP entries and the DHCP object, as well as new default behavior for IPAM mode. tags: public-gateways dhcp dhcp-entries api v2 ipam-mode legacy dates: - creation: 2024-11-05 - validation: 2024-11-05 + creation: 2025-01-23 + validation: 2025-01-23 categories: - network --- @@ -19,9 +19,17 @@ This document explains what to expect and how to prepare for the upcoming change ## Summary (TL;DR) -If you have a [legacy](/network/public-gateways/concepts/#ipam) Public Gateway, or a Public Gateway that is still using the [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) or [DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries) from the existing API, you must recreate your Public Gateway in the new v2 API, as these functionalities are being deprecated. +All Scaleway Public Gateways until now have been created and managed with the [v1 version](TODO-LINK) of the Public Gateways API, either explicitly via the API itself or other devtools, or implicitly behind the scenes of the Scaleway console. -If your Public Gateway is already in [IPAM-mode](/network/public-gateways/concepts/#ipam), and you do not use the DHCP object or DHCP entries (only configurable by the API and not the console) your gateway will be automatically migrated to the new v2, and you do not need to take any action. [TODO - DOWNTIME?] +**We are now deprecating v1 of the API and transitioning to [v2](TODO-LINK).** + +After a six month deprecation period, the Public Gateways API v1 and associated developer tools will be removed. Before this time, you must: + +- Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM mode gateways are compatible with v2. +- Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode, by detaching them and reattaching them to their Private Networks. +- Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. + +If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by this changes and you do not need to take any action. ## Background: DHCP and IPAM @@ -41,6 +49,7 @@ Since the assignment and management of IP addresses on Private Networks is now m - Deprecation of the DHCP object - Deprecation of the `address` field - Deprecation of DHCP entries +- New SSH bastion feature: Allowed IPs Read on to find out more. @@ -57,45 +66,71 @@ All Public Gateways created via the Scaleway console since 17 October 2023 are n Legacy Public Gateways use a [workaround](/network/vpc/reference-content/vpc-migration/#public-gateways-and-vpc) to ensure IPAM compatibility. IPAM-mode Public Gateways are fully integrated with Scaleway's [IPAM](/network/ipam/concepts/#ipam), which manages the coherent assignment of IP addresses to the gateway itself, and resources on attached Private Networks. -Legacy mode will be deprecated going forward. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode and the `is_legacy` parameter will be removed. +Legacy mode will be deprecated going forward, and will not be compatible with v2 of the Public Gateway API. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode. + +If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by **detaching and reattaching the Public Gateway from its Private Network**. This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. ### Deprecation of the DHCP object -The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has, until now, allowed users to define a DHCP configuration, which specified how the gateway should assign IP addresses to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). +This functionality was available via the API and developer tools only (not the Scaleway console). + +The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has, until now, allowed users to define a DHCP configuration, which specified how the gateway should assign IP addresses to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can pass a DHCP object, or the ID of an existing DHCP object. -This functionality will be deprecated going forward. It will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default. +**The DHCP object will not exist in v2 of the API**. It will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default, and replace any need for DHCP configuration via the Public Gateway. + +For legacy gateways using the DHCP object for custom DHCP configuration, **no automatic migration of this DHCP functionality** will take place when the gateway moves into IPAM-mode. We expect users to move to the standard set-up of IPAM and Private Networks for DHCP and private IP assignment. ### Deprecation of the address field +This functionality was available via the API and developer tools only (not the Scaleway console). + When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. -This functionality will be deprecated going forward. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for the Public Gateway on this Private Network, if you wish. Otherwise, IPAM will auto-assign an IP address from the Private Network's CIDR block to the Public Gateway. +**The `address` field will not exist in v2 of the API**. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for the Public Gateway on this Private Network, if you wish. Otherwise, IPAM will auto-assign an IP address from the Private Network's CIDR block to the Public Gateway. + +TODO: will we automatically take care of this when legacy gateways transition to IPAM mode? ### Deprecation of DHCP entries +This functionality was available via the API and developer tools only (not the Scaleway console). + [DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries) belong to a specified `GatewayNetwork` (Public Gateway / Private Network attachment) and can hold dynamic DHCP leases or static, user-created DHCP reservations. They effectively allow the Public Gateway to assign certain IP addresses to certain resources on the Private Network. -DHCP entries will be deprecated going forward. Instead, you can rely on the default IPAM/DHCP functionality as described [above](#background-dhcp-and-ipam). The default behavior will auto-assign IP addresses to resources on the Private Network from the network's CIDR block, or you can use the IP reservation functionality to specify the IP address(es) to assign to each resource. +**DHCP entries will not exist in v2 of the API**. Instead, you can rely on the default IPAM/DHCP functionality as described [above](#background-dhcp-and-ipam). The default behavior will auto-assign IP addresses to resources on the Private Network from the network's CIDR block, or you can use the IP reservation functionality to specify the IP address(es) to assign to each resource. For custom resources, such as VMs hosted on Elastic Metal servers, you can use the IPAM API's [Attach IP to custom resource](https://www.scaleway.com/en/developers/api/ipam/#path-ips-attach-ip-to-custom-resource) method to assign IP addresses on Private Networks. This lets you associate a [reserved IP](https://www.scaleway.com/en/developers/api/ipam/#path-ips-reserve-a-new-ip) address with a resource name and MAC address. +We will automatically migrate any existing DHCP entries to IPAM for you, at the moment you put a legacy Public Gateway into IPAM mode by detaching it and reattaching it from/to its Private Network. + +### SSH bastion allowed IPs + +TODO + ## Deprecation and removal timeline -The Public Gateway v1 API will be deprecated on [TODO-DATE. OR JUST CERTAIN FIELDS/OBJECTS DEPRECATED?]. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. +1. [TODO-DATE] **V1 deprecation**: The Public Gateway v1 API will be deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. +2. [TODO-DATE] **V2 release**: The Public Gateway v2 API will be released, co-existing with v1. + + + You will be able to list and manage both v1 and v2 Gateways with the **Scaleway console**. However, all new Public Gateways created via the console after [TODO-DATE] will necessarily be v2 gateways. + -We will release v2 of the Public Gateway API on [TODO-DATE - SAME DATE?]. During the period that both versions of the API co-exist, you must migrate your resources from v1 to v2. +3. [TODO-DATE - TODO-DATE] **Migration period**: You have a six month migration period to complete the following actions -[TODO - INSERT INFORMATION ON HOW TO MIGRATE] + - Ensure that your Public Gateway is in [IPAM-mode](/network/public-gateways/concepts/#ipam). Only IPAM-mode gateways are compatible with v2. + - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by **detaching them and reattaching them to their Private Networks**. + - Ensure that [DHCP is activated](TODO) on all Private Networks attached to your IPAM-mode Public Gateways. + - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. This includes removing any use of the DHCP entries, DHCP objects or address fields as mentioned [above](link). -[TODO - WHAT WILL THIS ALL LOOK LIKE IN THE CONSOLE? ] + If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by this changes and you do not need to take any action. -[TODO - DO USERS WHO DON'T USE LEGACY / DHCP OBJECT / DHCP ENTRIES HAVE ANY ACTION TO TAKE?] +4. [TODO-DATE] **V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. -After a period of [TODO - HOW LONG] weeks/months, v1 of the API will be removed. Any resources that have not been migrated to v2 by this time will cotinue to run, but can no longer be modified, nor recreated on the v1 API if they fail or are deleted. Any CLI, Terraform or other devtool scripts using v1 of the API will no longer function. +## FAQ -[TODO - IF PGW ON V1 CRASHES, HOW IS IT RECREATED? Elle est remontée à l'identique (y compris basée sur des fonctionnalités dispos uniquement en v1) ? A confirmer.] +TODO ## Further help and support From 235eca92e43298f9e19985192e10218fd05d7160 Mon Sep 17 00:00:00 2001 From: Rowena Date: Thu, 23 Jan 2025 18:06:37 +0100 Subject: [PATCH 06/22] fix(pgw): typo --- network/public-gateways/reference-content/understanding-v2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/network/public-gateways/reference-content/understanding-v2.mdx index fdfb6bed88..0ec0b91273 100644 --- a/network/public-gateways/reference-content/understanding-v2.mdx +++ b/network/public-gateways/reference-content/understanding-v2.mdx @@ -29,7 +29,7 @@ After a six month deprecation period, the Public Gateways API v1 and associated - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode, by detaching them and reattaching them to their Private Networks. - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. -If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by this changes and you do not need to take any action. +If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. ## Background: DHCP and IPAM From 6fbc6c240f5817c55fe65702d84b9bbe641ffc45 Mon Sep 17 00:00:00 2001 From: Rowena Date: Thu, 23 Jan 2025 18:12:12 +0100 Subject: [PATCH 07/22] fix(pgw): corrections --- .../public-gateways/reference-content/understanding-v2.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/network/public-gateways/reference-content/understanding-v2.mdx index 0ec0b91273..2f17f218d5 100644 --- a/network/public-gateways/reference-content/understanding-v2.mdx +++ b/network/public-gateways/reference-content/understanding-v2.mdx @@ -114,7 +114,7 @@ TODO 2. [TODO-DATE] **V2 release**: The Public Gateway v2 API will be released, co-existing with v1. - You will be able to list and manage both v1 and v2 Gateways with the **Scaleway console**. However, all new Public Gateways created via the console after [TODO-DATE] will necessarily be v2 gateways. + You will be able to list and manage all gateways with the **Scaleway console**, which will adapt to use v1 or v2 of the API as necessary. However, all new Public Gateways created via the console after [TODO-DATE] will necessarily be v2 gateways. 3. [TODO-DATE - TODO-DATE] **Migration period**: You have a six month migration period to complete the following actions @@ -124,7 +124,7 @@ TODO - Ensure that [DHCP is activated](TODO) on all Private Networks attached to your IPAM-mode Public Gateways. - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. This includes removing any use of the DHCP entries, DHCP objects or address fields as mentioned [above](link). - If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by this changes and you do not need to take any action. + If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. 4. [TODO-DATE] **V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. From 6303b23d2a99041a747b346ba135a869649bbb96 Mon Sep 17 00:00:00 2001 From: Rowena Date: Mon, 27 Jan 2025 17:56:31 +0100 Subject: [PATCH 08/22] fix(pgw): rebase and add dates --- .../public-gateways/reference-content/index.mdx | 0 .../public-gateways/reference-content/understanding-v2.mdx | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) rename {network => pages}/public-gateways/reference-content/index.mdx (100%) rename {network => pages}/public-gateways/reference-content/understanding-v2.mdx (96%) diff --git a/network/public-gateways/reference-content/index.mdx b/pages/public-gateways/reference-content/index.mdx similarity index 100% rename from network/public-gateways/reference-content/index.mdx rename to pages/public-gateways/reference-content/index.mdx diff --git a/network/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx similarity index 96% rename from network/public-gateways/reference-content/understanding-v2.mdx rename to pages/public-gateways/reference-content/understanding-v2.mdx index 2f17f218d5..c79f3209f8 100644 --- a/network/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -110,7 +110,7 @@ TODO ## Deprecation and removal timeline -1. [TODO-DATE] **V1 deprecation**: The Public Gateway v1 API will be deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. +1. [TODO-DATE] **21 February 2025 - V1 deprecation**: The Public Gateway v1 API will be deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. 2. [TODO-DATE] **V2 release**: The Public Gateway v2 API will be released, co-existing with v1. @@ -126,7 +126,7 @@ TODO If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. -4. [TODO-DATE] **V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. +4. [TODO-DATE] **2 June 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. ## FAQ From b00e2c648ccda837c4150a5260676d77f52b84dd Mon Sep 17 00:00:00 2001 From: Rowena Date: Thu, 30 Jan 2025 16:53:11 +0100 Subject: [PATCH 09/22] fix(pgw): add screenshot --- .../assets/scaleway-pgw-listing.png | Bin 0 -> 123299 bytes .../reference-content/understanding-v2.mdx | 44 +++++++++++------- 2 files changed, 26 insertions(+), 18 deletions(-) create mode 100644 pages/public-gateways/reference-content/assets/scaleway-pgw-listing.png diff --git a/pages/public-gateways/reference-content/assets/scaleway-pgw-listing.png b/pages/public-gateways/reference-content/assets/scaleway-pgw-listing.png new file mode 100644 index 0000000000000000000000000000000000000000..6e7106fbb66f0051a282a00a0e11110f7c943e59 GIT binary patch literal 123299 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 + All Public Gateways created via the Scaleway console since 17 October 2023 are necessarily in IPAM mode. @@ -68,37 +70,41 @@ Legacy Public Gateways use a [workaround](/network/vpc/reference-content/vpc-mig Legacy mode will be deprecated going forward, and will not be compatible with v2 of the Public Gateway API. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode. -If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by **detaching and reattaching the Public Gateway from its Private Network**. This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. +If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by either: +- Detaching and reattaching the Public Gateway from its Private Network, or +- Using the dedicated button in the Scaleway console. + +This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. ### Deprecation of the DHCP object -This functionality was available via the API and developer tools only (not the Scaleway console). +For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). -The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has, until now, allowed users to define a DHCP configuration, which specified how the gateway should assign IP addresses to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). +The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has allowed users to define a DHCP configuration, which specified how the gateway should assign IP addresses to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can pass a DHCP object, or the ID of an existing DHCP object. -**The DHCP object will not exist in v2 of the API**. It will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default, and replace any need for DHCP configuration via the Public Gateway. +**The DHCP object does not exist in v2 of the API**. After v1 is removed, it will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default, and replace any need for DHCP configuration via the Public Gateway. For legacy gateways using the DHCP object for custom DHCP configuration, **no automatic migration of this DHCP functionality** will take place when the gateway moves into IPAM-mode. We expect users to move to the standard set-up of IPAM and Private Networks for DHCP and private IP assignment. ### Deprecation of the address field -This functionality was available via the API and developer tools only (not the Scaleway console). +For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). -When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. +When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you could use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. -**The `address` field will not exist in v2 of the API**. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for the Public Gateway on this Private Network, if you wish. Otherwise, IPAM will auto-assign an IP address from the Private Network's CIDR block to the Public Gateway. +**The `address` field does not exist in v2 of the API**. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for the Public Gateway on this Private Network, if you wish. Otherwise, IPAM will auto-assign an IP address from the Private Network's CIDR block to the Public Gateway. TODO: will we automatically take care of this when legacy gateways transition to IPAM mode? ### Deprecation of DHCP entries -This functionality was available via the API and developer tools only (not the Scaleway console). +For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). -[DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries) belong to a specified `GatewayNetwork` (Public Gateway / Private Network attachment) and can hold dynamic DHCP leases or static, user-created DHCP reservations. They effectively allow the Public Gateway to assign certain IP addresses to certain resources on the Private Network. +[DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries) could be created, belonging to a specified `GatewayNetwork` (Public Gateway / Private Network attachment), holding dynamic DHCP leases or static, user-created DHCP reservations. They have effectively allowed the Public Gateway to assign certain IP addresses to certain resources on the Private Network. -**DHCP entries will not exist in v2 of the API**. Instead, you can rely on the default IPAM/DHCP functionality as described [above](#background-dhcp-and-ipam). The default behavior will auto-assign IP addresses to resources on the Private Network from the network's CIDR block, or you can use the IP reservation functionality to specify the IP address(es) to assign to each resource. +**DHCP entries do not exist in v2 of the API**. Instead, you can rely on the default IPAM/DHCP functionality as described [above](#background-dhcp-and-ipam). The default behavior will auto-assign IP addresses to resources on the Private Network from the network's CIDR block, or you can use the IP reservation functionality to specify the IP address(es) to assign to each resource. For custom resources, such as VMs hosted on Elastic Metal servers, you can use the IPAM API's [Attach IP to custom resource](https://www.scaleway.com/en/developers/api/ipam/#path-ips-attach-ip-to-custom-resource) method to assign IP addresses on Private Networks. This lets you associate a [reserved IP](https://www.scaleway.com/en/developers/api/ipam/#path-ips-reserve-a-new-ip) address with a resource name and MAC address. @@ -110,14 +116,16 @@ TODO ## Deprecation and removal timeline -1. [TODO-DATE] **21 February 2025 - V1 deprecation**: The Public Gateway v1 API will be deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. +TODO CHECK DATES + +1. **21 February 2025 - V1 deprecation**: The Public Gateway v1 API will be deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. 2. [TODO-DATE] **V2 release**: The Public Gateway v2 API will be released, co-existing with v1. You will be able to list and manage all gateways with the **Scaleway console**, which will adapt to use v1 or v2 of the API as necessary. However, all new Public Gateways created via the console after [TODO-DATE] will necessarily be v2 gateways. -3. [TODO-DATE - TODO-DATE] **Migration period**: You have a six month migration period to complete the following actions +3. **21 February 2025 - 2 June 2025: Migration period**: You have a six month migration period to complete the following actions - Ensure that your Public Gateway is in [IPAM-mode](/network/public-gateways/concepts/#ipam). Only IPAM-mode gateways are compatible with v2. - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by **detaching them and reattaching them to their Private Networks**. @@ -126,7 +134,7 @@ TODO If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. -4. [TODO-DATE] **2 June 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. +4. **2 June 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. ## FAQ From 88fb4eee3fe3c3f785ab0e8d808223f0e3eeb3e7 Mon Sep 17 00:00:00 2001 From: Rowena Date: Fri, 31 Jan 2025 18:00:22 +0100 Subject: [PATCH 10/22] fix(pgw): update deprecation info --- .../assets/scaleway-pgw-listing.png | Bin 123299 -> 0 bytes .../assets/scaleway-pgw-listing.webp | Bin 0 -> 35716 bytes .../assets/scaleway-pgw-table.webp | Bin 0 -> 46290 bytes .../reference-content/understanding-v2.mdx | 106 ++++++++++++------ 4 files changed, 74 insertions(+), 32 deletions(-) delete mode 100644 pages/public-gateways/reference-content/assets/scaleway-pgw-listing.png create mode 100644 pages/public-gateways/reference-content/assets/scaleway-pgw-listing.webp create mode 100644 pages/public-gateways/reference-content/assets/scaleway-pgw-table.webp diff --git a/pages/public-gateways/reference-content/assets/scaleway-pgw-listing.png b/pages/public-gateways/reference-content/assets/scaleway-pgw-listing.png deleted file mode 100644 index 6e7106fbb66f0051a282a00a0e11110f7c943e59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 123299 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

6DIG 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 C3Ww_e literal 0 HcmV?d00001 diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index 04d656e77d..d38a452fa2 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -19,36 +19,38 @@ This document explains what to expect and how to prepare for the upcoming change ## Summary (TL;DR) -All Scaleway Public Gateways until now have been created and managed with the v1 version of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), either explicitly via the API itself or other devtools, or implicitly behind the scenes of the Scaleway console. + + +All Scaleway Public Gateways until now have been created and managed with the version 1 of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), either explicitly via the API itself, or implicitly behind the scenes of the Scaleway console / devtools. **We are now deprecating v1 of the API and transitioning to v2.** -After a six month deprecation period, the Public Gateways API v1 and associated developer tools will be removed. Before this time, you must: +After a six month deprecation period ending on 2 June 2025, the Public Gateways API v1 and associated developer tools will be removed. Before this time, you must: -- Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM-mode gateways are compatible with v2. -- Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode, by detaching them and reattaching them to their Private Networks, or using the dedicated button in the console. -- Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. +- Ensure that your Public Gateway is in [IPAM mode](#ipam-mode-becomes-default). Only IPAM-mode gateways are compatible with v2. +- Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode, by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). +- Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead, and do not refer to [removed functionalities](#introducing-public-gateways-api-v2). -If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. +If your Public Gateway is already in IPAM mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. ## Background: DHCP and IPAM -When Scaleway originally introduced Public Gateways, they provided DHCP functionality for resources on attached Private Networks. With the [arrival of Scaleway VPC](/network/vpc/reference-content/vpc-migration/), DHCP was moved from Public Gateways to Private Networks themselves. +When Scaleway originally introduced Public Gateways, they provided DHCP functionality for resources on attached Private Networks. With the [arrival of Scaleway VPC](/network/vpc/reference-content/vpc-migration/) in 2023, DHCP was moved from Public Gateways to Private Networks themselves. Scaleway also introduced [IPAM](/network/ipam/concepts/#ipam) to act as a single source of truth for the IP addressing of all Scaleway resources. DHCP uses IPAM to ensure consistent and reliable addressing across all Private Networks. -When you [create a Private Network](/network/vpc/how-to/create-private-network/), you can either automatically generate a default IPv4 CIDR block, or define a custom block. A default IPv6 block is automatically created. When you attach resources to the Private Network, they automatically receive an IPv4 address (and, if compatible, an IPv6 address) from this block. Alternatively, you can [reserve a specific IP address](/network/ipam/how-to/reserve-ip/) from the block, and [specify this address](/network/ipam/how-to/reserve-ip/#how-to-attach-a-resource-to-a-private-network-using-a-reserved-ip-address) when attaching the resource. +When you [create a Private Network](/network/vpc/how-to/create-private-network/), you can either automatically generate a default IPv4 CIDR block, or define a custom block. A default IPv6 block is automatically created. When you attach resources to the Private Network, they automatically receive an IPv4 address (and, if compatible, an IPv6 address) from this block. Alternatively, you can [reserve a specific IP address](/network/ipam/how-to/reserve-ip/) from the block, and [specify this address](/network/ipam/how-to/reserve-ip/#how-to-attach-a-resource-to-a-private-network-using-a-reserved-ip-address) when attaching the resource. When you reserve a private IP with IPAM, you have the option to attach a MAC address to it. This allows you to use the IP with a custom resource e.g. virtual machines hosted on a Proxmox cluster on an Elastic Metal server. Whether you choose a custom or default CIDR block, automatic address assignment or use a reserved address, **the resource's private IP address does not risk changing** unless you detach the resource from the Private Network. To ensure that you can keep the same address for a resource even after detaching it, use the [reserve IP](/network/ipam/how-to/reserve-ip/) functionality. -## Completing the removal of DHCP from Public Gateways +## Introducing Public Gateways API v2 Since the assignment and management of IP addresses on Private Networks is now managed by IPAM and the Private Networks themselves, we must complete the removal of the DHCP functionality from Public Gateways. This means releasing a new version (v2) of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), which has until now retained a number of legacy DHCP functions. From this new version, you can expect: - IPAM mode becomes default -- Deprecation of the DHCP object -- Deprecation of the `address` field -- Deprecation of DHCP entries +- Removal of the DHCP object +- Removal of the `address` field +- Removal of DHCP entries - New SSH bastion feature: Allowed IPs Read on to find out more. @@ -70,13 +72,11 @@ Legacy Public Gateways use a [workaround](/network/vpc/reference-content/vpc-mig Legacy mode will be deprecated going forward, and will not be compatible with v2 of the Public Gateway API. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode. -If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by either: -- Detaching and reattaching the Public Gateway from its Private Network, or -- Using the dedicated button in the Scaleway console. +If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. -### Deprecation of the DHCP object +### Removal of the DHCP object For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). @@ -86,19 +86,19 @@ When attaching a Public Gateway to a Private Network (creating a [Gateway Networ **The DHCP object does not exist in v2 of the API**. After v1 is removed, it will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default, and replace any need for DHCP configuration via the Public Gateway. -For legacy gateways using the DHCP object for custom DHCP configuration, **no automatic migration of this DHCP functionality** will take place when the gateway moves into IPAM-mode. We expect users to move to the standard set-up of IPAM and Private Networks for DHCP and private IP assignment. +Going forward, we expect users who were previously using a custom DHCP object to move to the standard set-up of IPAM and Private Networks' inbuilt DHCP for private IP assignment. Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-network/#how-to-configure-cidr) for a Private Network at the time of creation, and use [reserved IP addresses](/ipam/how-to/reserve-ip/#how-to-reserve-a-private-ip-address) with IPAM when attaching both standard and custom resources. -### Deprecation of the address field +### Removal of the address field For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you could use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. -**The `address` field does not exist in v2 of the API**. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for the Public Gateway on this Private Network, if you wish. Otherwise, IPAM will auto-assign an IP address from the Private Network's CIDR block to the Public Gateway. +**The `address` field does not exist in v2 of the API**. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for a Public Gateway on a Private Network, if you wish. On the Scaleway console, you can select a [reserved IP](/ipam/how-to/reserve-ip/) to use when attaching a Public Gateway to a Private Network. Otherwise, use the default behaviour where IPAM auto-assigns an IP address from the Private Network's CIDR block to the Public Gateway at the moment of attachment. -TODO: will we automatically take care of this when legacy gateways transition to IPAM mode? +When you use the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO) to move a legacy Public Gateway to IPAM mode, it will keep its current IP address on all attached Private Networks. -### Deprecation of DHCP entries +### Removal of DHCP entries For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). @@ -108,37 +108,79 @@ For some time now, this functionality has been available via the API and develop For custom resources, such as VMs hosted on Elastic Metal servers, you can use the IPAM API's [Attach IP to custom resource](https://www.scaleway.com/en/developers/api/ipam/#path-ips-attach-ip-to-custom-resource) method to assign IP addresses on Private Networks. This lets you associate a [reserved IP](https://www.scaleway.com/en/developers/api/ipam/#path-ips-reserve-a-new-ip) address with a resource name and MAC address. -We will automatically migrate any existing DHCP entries to IPAM for you, at the moment you put a legacy Public Gateway into IPAM mode by detaching it and reattaching it from/to its Private Network. +We will automatically migrate any existing DHCP entries to IPAM for you, at the moment you put a legacy Public Gateway into IPAM mode. TODO STUFF ABOUT LATER ON DETACH/REATTACH ### SSH bastion allowed IPs -TODO +Allowed IPs is a new functionality of the Public Gateways API v2, that will also be available to all IPAM-mode Public Gateways via the Scaleway console. This feature allows you to specify a list of IP address ranges which should be allowed to connect to the gateway's SSH bastion and the resources behind it. All other IP addresses will be blocked from connecting. Find out more in the [SSH bastion](/network/public-gateways/how-to/use-ssh-bastion/) documentation. -## Deprecation and removal timeline +## Timeline and action to take TODO CHECK DATES -1. **21 February 2025 - V1 deprecation**: The Public Gateway v1 API will be deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. -2. [TODO-DATE] **V2 release**: The Public Gateway v2 API will be released, co-existing with v1. +- **21 February 2025 - V2 release**: The Public Gateway v2 API is be released, co-existing with v1. +- **21 February 2025 - V1 deprecation**: The Public Gateway v1 API is deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. - You will be able to list and manage all gateways with the **Scaleway console**, which will adapt to use v1 or v2 of the API as necessary. However, all new Public Gateways created via the console after [TODO-DATE] will necessarily be v2 gateways. + You will be able to list and manage all gateways with the **Scaleway console**, which will adapt to use v1 or v2 of the API as necessary depending on whether or not the gateway is in IPAM mode. -3. **21 February 2025 - 2 June 2025: Migration period**: You have a six month migration period to complete the following actions +- **21 February 2025 - 2 June 2025: Migration period**: You have a six month migration period to complete the following actions - - Ensure that your Public Gateway is in [IPAM-mode](/network/public-gateways/concepts/#ipam). Only IPAM-mode gateways are compatible with v2. - - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by **detaching them and reattaching them to their Private Networks**. + - Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM mode gateways are compatible with v2. + - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). - Ensure that [DHCP is activated](TODO) on all Private Networks attached to your IPAM-mode Public Gateways. - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. This includes removing any use of the DHCP entries, DHCP objects or address fields as mentioned [above](link). If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. -4. **2 June 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. +- **2 June 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. ## FAQ -TODO +### How do I know if I have to take action? + +- Consider whether you mange your Public Gateway uniquely via the Scaleway console, or via calls to the API/devtools in code and scripts: + - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is removed from v2 such as DHCP object or entries, **you must take action before 2 June 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](TODO) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). + - **Console-only**: You do not need to take any action, except ensuring that your gateway is in IPAM mode. + +- Check in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) whether your Public Gateway is in IPAM mode or legacy mode. + - **Legacy mode**: you must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). + - **IPAM mode**: you do not have any action to take, except updating any code and scripts that you have (see above). + +### How do I move my legacy Public Gateway to IPAM mode? + +Use the **Move to IPAM mode** button next to your gateway in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways), or the [dedicated API call](TODO). + +If you use Terraform to manage your infrastructure as code, modify your templates to reattach your Public Gateways in IPAM mode, and use IPAM functionality to replace any DHCP configurations. Refer to our [Terraform snippets](TODO) for help with this. + +### What happens when I move my legacy Public Gateway to IPAM mode? + +We will detach your Public Gateway from all attached Private Networks, and reattach it in IPAM mode. You can expect downtime of about 10-20 seconds. We will ensure that the IP used for the new attachment is the same as the old one. + +### My Public Gateway is already in IPAM mode, do I need to take any action? + +If you only manage your gateway via the Scaleway console, you do not need to take any action once your gateway is in IPAM mode. + +If you have any code or scripts that call v1 of the Scaleway Public Gateways API, you must update these to point towards [v2](TODO) before 2 June 2025. + +### What if I want to keep using my custom gateway DHCP configuration from v1 of the API? + +After version 1 of the Public Gateways API is removed on 2 June 2025, these functionalities will no longer be available. + +Going forward, we expect users who were previously using custom DHCP with a Public Gateway to move to the standard set-up of IPAM and Private Networks' inbuilt DHCP for private IP assignment. Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-network/#how-to-configure-cidr) for a Private Network at the time of creation, and use [reserved IP addresses](/ipam/how-to/reserve-ip/#how-to-reserve-a-private-ip-address) with IPAM when attaching both standard and custom resources. + +### I use Terraform to manage my Public Gateway, what should I do? + +If you use Terraform to manage your infrastructure as code, ensure that you are not using any functionality associated with v1 of the API (DHCP objects, DHCP entries or the `address` field). If necessary, modify your templates to reattach your Public Gateways in IPAM mode, and use IPAM functionality to replace any DHCP configurations. Refer to our [Terraform snippets](TODO) for help with this. + +### Can't I just wait for Scaleway to force the move to IPAM mode? + +After the 2 June 2025 we will carry out a forced action which will move all existing legacy Public Gateways to IPAM mode, and we will remove v1 of the Public Gateways API. + +We highly recommend that you move to IPAM mode **before** this date, so that you can plan a smooth and synchronized transition at a time that suits you. + +If you still have code or scripts pointing to v1 of the API after the 2 June 2025, these will cease to function. ## Further help and support From 27b7883748b69d6612f9639e670a50a08507514f Mon Sep 17 00:00:00 2001 From: Rowena Date: Mon, 3 Feb 2025 17:35:54 +0100 Subject: [PATCH 11/22] fix(pgw): update --- pages/public-gateways/concepts.mdx | 5 +-- .../assets/scaleway-pgw-table.webp | Bin 46290 -> 0 bytes .../reference-content/understanding-v2.mdx | 35 +++++++++++++----- 3 files changed, 28 insertions(+), 12 deletions(-) delete mode 100644 pages/public-gateways/reference-content/assets/scaleway-pgw-table.webp diff --git a/pages/public-gateways/concepts.mdx b/pages/public-gateways/concepts.mdx index 26b3839dbd..de94fa9275 100644 --- a/pages/public-gateways/concepts.mdx +++ b/pages/public-gateways/concepts.mdx @@ -73,9 +73,8 @@ Private Networks attached to legacy Public Gateways must stay in the gateway's a **IPAM** Public Gateways are fully and natively integrated with the Scaleway IPAM without any workaround. Your gateway is in IPAM mode if: - You created it via the Scaleway console on or after 17 October 2023 -- You created it via the Scaleway API or developer tools using the `ipam_config` object, and the auto-calculated `is_legacy` [Gateway parameter](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-create-a-public-gateway) has a value of `false`. - -You cannot "migrate" a legacy Public Gateway to become an IPAM-mode gateway. While legacy Public Gateways continue to function thanks to our [workaround](/vpc/reference-content/vpc-migration/#public-gateways-and-vpc), you cannot modify them to become natively integrated IPAM networks. If you wish to have an IPAM-mode Public Gateway, for example to benefit from IP management via Scaleway's [IPAM](https://www.scaleway.com/en/developers/api/vpc/) API as more features become available, or to use Kapsule with full isolation, you must create a new gateway. +- You created it via the Scaleway API or devtools using the `ipam_config` object, and the auto-calculated `is_legacy` [Gateway parameter](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-create-a-public-gateway) has a value of `false`. +- You moved it from legacy mode to IPAM mode using the dedicated button in the console, or the dedicated API call. When creating a Kubernetes Kapsule cluster with [full isolation](/kubernetes/reference-content/secure-cluster-with-private-network/#can-i-use-a-public-gateway-with-my-private-network-to-exit-all-outgoing-traffic-from-the-nodes) you are required to attach a Public Gateway to the cluster's Private Network, and this **cannot** be a legacy Public Gateway - it must be an IPAM-mode gateway. diff --git a/pages/public-gateways/reference-content/assets/scaleway-pgw-table.webp b/pages/public-gateways/reference-content/assets/scaleway-pgw-table.webp deleted file mode 100644 index ba0c6c986c8819624fd329f61238702c83a3e3b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46290 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 C3Ww_e diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index d38a452fa2..5e4f31af52 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -13,22 +13,37 @@ categories: - network --- +TODO CHECK CONSOLE MENTIONS +TODO CHECK DATE - NOT JUNE + Scaleway's VPC offering is evolving, and with this comes changes for the Public Gateway product. This document explains what to expect and how to prepare for the upcoming changes. ## Summary (TL;DR) - - -All Scaleway Public Gateways until now have been created and managed with the version 1 of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), either explicitly via the API itself, or implicitly behind the scenes of the Scaleway console / devtools. +All Scaleway Public Gateways until now have been created and managed with the version 1 of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), either explicitly via the API itself, or implicitly behind the scenes of the Scaleway console or other developer tools. **We are now deprecating v1 of the API and transitioning to v2.** -After a six month deprecation period ending on 2 June 2025, the Public Gateways API v1 and associated developer tools will be removed. Before this time, you must: +| | **PGW API v1** | **PGW API v2** | +|---|---|---| +| Supports [legacy-mode PGWs](/public-gateways/concepts/#ipam) | Yes ✅ | No ❌| +| Supports [IPAM-mode PGWs](/public-gateways/concepts/#ipam) | Yes ✅ | Yes ✅| +| Supports custom DHCP via PGW | Yes ✅ | No ❌| +| Supports SSH bastion allowed IPs, and future new features | No ❌| Yes ✅ | +| Deprecated? | Yes ✅ | No ❌| +| Removal date | 2 June 2025 | --- | +| Compatible with PGW management via Scaleway console? | Only until 2 June 2025 | Yes ✅ | + +After a deprecation period ending on 2 June 2025, the Public Gateways API v1 and associated developer tools will be removed. + +**What you need to do before 2 June 2025:** - Ensure that your Public Gateway is in [IPAM mode](#ipam-mode-becomes-default). Only IPAM-mode gateways are compatible with v2. + - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode, by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). + - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead, and do not refer to [removed functionalities](#introducing-public-gateways-api-v2). If your Public Gateway is already in IPAM mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. @@ -72,9 +87,7 @@ Legacy Public Gateways use a [workaround](/network/vpc/reference-content/vpc-mig Legacy mode will be deprecated going forward, and will not be compatible with v2 of the Public Gateway API. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode. -If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). - -This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. +If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. ### Removal of the DHCP object @@ -86,7 +99,7 @@ When attaching a Public Gateway to a Private Network (creating a [Gateway Networ **The DHCP object does not exist in v2 of the API**. After v1 is removed, it will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default, and replace any need for DHCP configuration via the Public Gateway. -Going forward, we expect users who were previously using a custom DHCP object to move to the standard set-up of IPAM and Private Networks' inbuilt DHCP for private IP assignment. Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-network/#how-to-configure-cidr) for a Private Network at the time of creation, and use [reserved IP addresses](/ipam/how-to/reserve-ip/#how-to-reserve-a-private-ip-address) with IPAM when attaching both standard and custom resources. +When you move your gateway to IPAM mode, any existing custom DHCP objects will become defunct. Going forward, we expect users who were previously using a custom DHCP object to move to the standard set-up of IPAM and Private Networks' inbuilt DHCP for private IP assignment. Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-network/#how-to-configure-cidr) for a Private Network at the time of creation, and use [reserved IP addresses](/ipam/how-to/reserve-ip/#how-to-reserve-a-private-ip-address) with IPAM when attaching both standard and custom resources. ### Removal of the address field @@ -141,11 +154,15 @@ TODO CHECK DATES ### How do I know if I have to take action? - Consider whether you mange your Public Gateway uniquely via the Scaleway console, or via calls to the API/devtools in code and scripts: + - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is removed from v2 such as DHCP object or entries, **you must take action before 2 June 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](TODO) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). + - **Console-only**: You do not need to take any action, except ensuring that your gateway is in IPAM mode. -- Check in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) whether your Public Gateway is in IPAM mode or legacy mode. +- Check in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) whether your Public Gateway is in IPAM mode or legacy mode: + - **Legacy mode**: you must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). + - **IPAM mode**: you do not have any action to take, except updating any code and scripts that you have (see above). ### How do I move my legacy Public Gateway to IPAM mode? From cc0151efce9137cfb9c50bad6ab7003e8bf498ff Mon Sep 17 00:00:00 2001 From: Rowena Date: Thu, 20 Feb 2025 11:00:17 +0100 Subject: [PATCH 12/22] fix(pgw): correct dates --- .../reference-content/understanding-v2.mdx | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index 5e4f31af52..0c776a97fd 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -14,7 +14,7 @@ categories: --- TODO CHECK CONSOLE MENTIONS -TODO CHECK DATE - NOT JUNE +TODO CHECK DATES Scaleway's VPC offering is evolving, and with this comes changes for the Public Gateway product. @@ -30,15 +30,15 @@ All Scaleway Public Gateways until now have been created and managed with the ve |---|---|---| | Supports [legacy-mode PGWs](/public-gateways/concepts/#ipam) | Yes ✅ | No ❌| | Supports [IPAM-mode PGWs](/public-gateways/concepts/#ipam) | Yes ✅ | Yes ✅| -| Supports custom DHCP via PGW | Yes ✅ | No ❌| +| Supports custom DHCP via PGW (API only) | Yes ✅ | No ❌| | Supports SSH bastion allowed IPs, and future new features | No ❌| Yes ✅ | | Deprecated? | Yes ✅ | No ❌| -| Removal date | 2 June 2025 | --- | -| Compatible with PGW management via Scaleway console? | Only until 2 June 2025 | Yes ✅ | +| Removal date | 1 Oct 2025 | --- | +| Compatible with PGW management via Scaleway console? | Only until 1 Oct 2025 | Yes ✅ | -After a deprecation period ending on 2 June 2025, the Public Gateways API v1 and associated developer tools will be removed. +After a deprecation period ending on 1 Oct 2025, the Public Gateways API v1 and associated developer tools will be removed. -**What you need to do before 2 June 2025:** +**What you need to do before 1 Oct 2025:** - Ensure that your Public Gateway is in [IPAM mode](#ipam-mode-becomes-default). Only IPAM-mode gateways are compatible with v2. @@ -131,14 +131,14 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also TODO CHECK DATES -- **21 February 2025 - V2 release**: The Public Gateway v2 API is be released, co-existing with v1. -- **21 February 2025 - V1 deprecation**: The Public Gateway v1 API is deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. +- **7 March 2025 - V2 release**: The Public Gateway v2 API is be released, co-existing with v1. +- **7 March 2025 - V1 deprecation**: The Public Gateway v1 API is deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. You will be able to list and manage all gateways with the **Scaleway console**, which will adapt to use v1 or v2 of the API as necessary depending on whether or not the gateway is in IPAM mode. -- **21 February 2025 - 2 June 2025: Migration period**: You have a six month migration period to complete the following actions +- **7 March 2025 2025 - 1 Oct 2025: Migration period**: You have a six month migration period to complete the following actions - Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM mode gateways are compatible with v2. - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). @@ -147,7 +147,7 @@ TODO CHECK DATES If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. -- **2 June 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. +- **1 Oct 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. ## FAQ @@ -155,7 +155,7 @@ TODO CHECK DATES - Consider whether you mange your Public Gateway uniquely via the Scaleway console, or via calls to the API/devtools in code and scripts: - - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is removed from v2 such as DHCP object or entries, **you must take action before 2 June 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](TODO) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). + - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is removed from v2 such as DHCP object or entries, **you must take action before 1 Oct 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](TODO) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). - **Console-only**: You do not need to take any action, except ensuring that your gateway is in IPAM mode. @@ -179,11 +179,11 @@ We will detach your Public Gateway from all attached Private Networks, and reatt If you only manage your gateway via the Scaleway console, you do not need to take any action once your gateway is in IPAM mode. -If you have any code or scripts that call v1 of the Scaleway Public Gateways API, you must update these to point towards [v2](TODO) before 2 June 2025. +If you have any code or scripts that call v1 of the Scaleway Public Gateways API, you must update these to point towards [v2](TODO) before 1 Oct 2025. ### What if I want to keep using my custom gateway DHCP configuration from v1 of the API? -After version 1 of the Public Gateways API is removed on 2 June 2025, these functionalities will no longer be available. +After version 1 of the Public Gateways API is removed on 1 Oct 2025, these functionalities will no longer be available. Going forward, we expect users who were previously using custom DHCP with a Public Gateway to move to the standard set-up of IPAM and Private Networks' inbuilt DHCP for private IP assignment. Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-network/#how-to-configure-cidr) for a Private Network at the time of creation, and use [reserved IP addresses](/ipam/how-to/reserve-ip/#how-to-reserve-a-private-ip-address) with IPAM when attaching both standard and custom resources. @@ -193,11 +193,11 @@ If you use Terraform to manage your infrastructure as code, ensure that you are ### Can't I just wait for Scaleway to force the move to IPAM mode? -After the 2 June 2025 we will carry out a forced action which will move all existing legacy Public Gateways to IPAM mode, and we will remove v1 of the Public Gateways API. +After the 1 Oct 2025 we will carry out a forced action which will move all existing legacy Public Gateways to IPAM mode, and we will remove v1 of the Public Gateways API. We highly recommend that you move to IPAM mode **before** this date, so that you can plan a smooth and synchronized transition at a time that suits you. -If you still have code or scripts pointing to v1 of the API after the 2 June 2025, these will cease to function. +If you still have code or scripts pointing to v1 of the API after the 1 Oct 2025, these will cease to function. ## Further help and support From 268374b1349c3e8bebe59c2fadfb060f4a79a531 Mon Sep 17 00:00:00 2001 From: Rowena Date: Wed, 5 Mar 2025 15:37:24 +0100 Subject: [PATCH 13/22] fix(pgw): fix deprecation doc --- .../reference-content/understanding-v2.mdx | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index 0c776a97fd..43629318d9 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -15,6 +15,7 @@ categories: TODO CHECK CONSOLE MENTIONS TODO CHECK DATES +TODO ADD TERRAFORM SNIPPETS Scaleway's VPC offering is evolving, and with this comes changes for the Public Gateway product. @@ -30,7 +31,6 @@ All Scaleway Public Gateways until now have been created and managed with the ve |---|---|---| | Supports [legacy-mode PGWs](/public-gateways/concepts/#ipam) | Yes ✅ | No ❌| | Supports [IPAM-mode PGWs](/public-gateways/concepts/#ipam) | Yes ✅ | Yes ✅| -| Supports custom DHCP via PGW (API only) | Yes ✅ | No ❌| | Supports SSH bastion allowed IPs, and future new features | No ❌| Yes ✅ | | Deprecated? | Yes ✅ | No ❌| | Removal date | 1 Oct 2025 | --- | @@ -91,15 +91,11 @@ If you still have a legacy gateway, you must transition it to IPAM mode so that ### Removal of the DHCP object -For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). - -The [DHCP object](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-list-dhcp-configurations) has allowed users to define a DHCP configuration, which specified how the gateway should assign IP addresses to devices on attached Private Networks (parameters including the subnet of the DHCP server, entry validity period and more). - -When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you can pass a DHCP object, or the ID of an existing DHCP object. +The DHCP object has remained present in v1 of the API, despite the [migration of DHCP to Private Networks](/vpc/reference-content/vpc-migration/), which replaced DHCP on Public Gateways. -**The DHCP object does not exist in v2 of the API**. After v1 is removed, it will no longer be possible to create or attach DHCP objects to Gateway Networks. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM, will become default, and replace any need for DHCP configuration via the Public Gateway. +**The DHCP object does not exist in v2 of the API**. Instead, IPAM configuration, where auto-configuration of `GatewayNetwork` is managed by IPAM and DHCP is managed by Private Networks, replaces any need for DHCP configuration via the Public Gateway. -When you move your gateway to IPAM mode, any existing custom DHCP objects will become defunct. Going forward, we expect users who were previously using a custom DHCP object to move to the standard set-up of IPAM and Private Networks' inbuilt DHCP for private IP assignment. Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-network/#how-to-configure-cidr) for a Private Network at the time of creation, and use [reserved IP addresses](/ipam/how-to/reserve-ip/#how-to-reserve-a-private-ip-address) with IPAM when attaching both standard and custom resources. +Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-network/#how-to-configure-cidr) for a Private Network at the time of creation, and use [reserved IP addresses](/ipam/how-to/reserve-ip/#how-to-reserve-a-private-ip-address) with IPAM when attaching both standard and custom resources. ### Removal of the address field From e33c585a35efe2ed9e50adbd19b4d5c05e310769 Mon Sep 17 00:00:00 2001 From: Rowena Date: Wed, 26 Mar 2025 14:50:15 +0100 Subject: [PATCH 14/22] fix(pgw): add tf refs to guide --- .../reference-content/understanding-v2.mdx | 56 +++++++++++++------ 1 file changed, 38 insertions(+), 18 deletions(-) diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index 43629318d9..daa574eb38 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -15,7 +15,6 @@ categories: TODO CHECK CONSOLE MENTIONS TODO CHECK DATES -TODO ADD TERRAFORM SNIPPETS Scaleway's VPC offering is evolving, and with this comes changes for the Public Gateway product. @@ -42,10 +41,17 @@ After a deprecation period ending on 1 Oct 2025, the Public Gateways API v1 and - Ensure that your Public Gateway is in [IPAM mode](#ipam-mode-becomes-default). Only IPAM-mode gateways are compatible with v2. -- Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode, by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). +- Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode. You can do this in several ways: + - Use the **Move to IPAM mode** button in the console + - Use the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode). + - Use the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead, and do not refer to [removed functionalities](#introducing-public-gateways-api-v2). + +If you manage your Public Gateway via Terraform, see our [dedicated guide](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) + + If your Public Gateway is already in IPAM mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. ## Background: DHCP and IPAM @@ -54,7 +60,7 @@ When Scaleway originally introduced Public Gateways, they provided DHCP function Scaleway also introduced [IPAM](/network/ipam/concepts/#ipam) to act as a single source of truth for the IP addressing of all Scaleway resources. DHCP uses IPAM to ensure consistent and reliable addressing across all Private Networks. -When you [create a Private Network](/network/vpc/how-to/create-private-network/), you can either automatically generate a default IPv4 CIDR block, or define a custom block. A default IPv6 block is automatically created. When you attach resources to the Private Network, they automatically receive an IPv4 address (and, if compatible, an IPv6 address) from this block. Alternatively, you can [reserve a specific IP address](/network/ipam/how-to/reserve-ip/) from the block, and [specify this address](/network/ipam/how-to/reserve-ip/#how-to-attach-a-resource-to-a-private-network-using-a-reserved-ip-address) when attaching the resource. When you reserve a private IP with IPAM, you have the option to attach a MAC address to it. This allows you to use the IP with a custom resource e.g. virtual machines hosted on a Proxmox cluster on an Elastic Metal server. +When you [create a Private Network](/network/vpc/how-to/create-private-network/), you can either automatically generate a default IPv4 CIDR block, or define a custom block. A default IPv6 block is automatically created. When you attach resources to the Private Network, they automatically receive an IPv4 address (and, if compatible, an IPv6 address) from this block. Alternatively, you can [reserve a specific IP address](/network/ipam/how-to/reserve-ip/) from the block, and [specify this address](/network/ipam/how-to/reserve-ip/#how-to-attach-a-resource-to-a-private-network-using-a-reserved-ip-address) when attaching the resource. Whether you choose a custom or default CIDR block, automatic address assignment or use a reserved address, **the resource's private IP address does not risk changing** unless you detach the resource from the Private Network. To ensure that you can keep the same address for a resource even after detaching it, use the [reserve IP](/network/ipam/how-to/reserve-ip/) functionality. @@ -87,7 +93,7 @@ Legacy Public Gateways use a [workaround](/network/vpc/reference-content/vpc-mig Legacy mode will be deprecated going forward, and will not be compatible with v2 of the Public Gateway API. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode. -If you still have a legacy gateway, you must transition it to IPAM mode so that it is compatible with v2 of the API. Do this by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. +If you still have a legacy gateway, you must [transition it to IPAM mode](#how-do-i-move-my-legacy-public-gateway-to-ipam-mode) so that it is compatible with v2 of the API. This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. ### Removal of the DHCP object @@ -105,7 +111,7 @@ When attaching a Public Gateway to a Private Network (creating a [Gateway Networ **The `address` field does not exist in v2 of the API**. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for a Public Gateway on a Private Network, if you wish. On the Scaleway console, you can select a [reserved IP](/ipam/how-to/reserve-ip/) to use when attaching a Public Gateway to a Private Network. Otherwise, use the default behaviour where IPAM auto-assigns an IP address from the Private Network's CIDR block to the Public Gateway at the moment of attachment. -When you use the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO) to move a legacy Public Gateway to IPAM mode, it will keep its current IP address on all attached Private Networks. +When you [use a dedicated method](#how-do-i-move-my-legacy-public-gateway-to-ipam-mode) to move a legacy Public Gateway to IPAM mode, it will keep its current IP address on all attached Private Networks. ### Removal of DHCP entries @@ -115,7 +121,7 @@ For some time now, this functionality has been available via the API and develop **DHCP entries do not exist in v2 of the API**. Instead, you can rely on the default IPAM/DHCP functionality as described [above](#background-dhcp-and-ipam). The default behavior will auto-assign IP addresses to resources on the Private Network from the network's CIDR block, or you can use the IP reservation functionality to specify the IP address(es) to assign to each resource. -For custom resources, such as VMs hosted on Elastic Metal servers, you can use the IPAM API's [Attach IP to custom resource](https://www.scaleway.com/en/developers/api/ipam/#path-ips-attach-ip-to-custom-resource) method to assign IP addresses on Private Networks. This lets you associate a [reserved IP](https://www.scaleway.com/en/developers/api/ipam/#path-ips-reserve-a-new-ip) address with a resource name and MAC address. +For custom resources, such as VMs hosted on Elastic Metal servers, we now provide [dedicated functionality](https://www.scaleway.com/en/docs/vpc/how-to/attach-resources-to-pn/) for attaching these to Private Networks. When choosing the **Custom Resource** type, you can specify a MAC address and hostname at the moment of attachment. We will automatically migrate any existing DHCP entries to IPAM for you, at the moment you put a legacy Public Gateway into IPAM mode. TODO STUFF ABOUT LATER ON DETACH/REATTACH @@ -137,11 +143,11 @@ TODO CHECK DATES - **7 March 2025 2025 - 1 Oct 2025: Migration period**: You have a six month migration period to complete the following actions - Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM mode gateways are compatible with v2. - - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). - - Ensure that [DHCP is activated](TODO) on all Private Networks attached to your IPAM-mode Public Gateways. - - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. This includes removing any use of the DHCP entries, DHCP objects or address fields as mentioned [above](link). + - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). + - Ensure that [DHCP is activated](/vpc/how-to/activate-dhcp/) on all Private Networks attached to your IPAM-mode Public Gateways. + - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. This includes removing any use of the DHCP entries, DHCP objects or address fields as mentioned above. - If your Public Gateway is already in IPAM-mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. + If your Public Gateway is already in IPAM mode, and you only manage it via the console, you will not be affected by these changes and you do not need to take any action. - **1 Oct 2025 - V1 removal**: The Public Gateway v1 API will be removed. Any code or scripts still pointing to v1 will cease to function. We will automatically put any existing legacy Public Gateways into IPAM mode. @@ -151,31 +157,33 @@ TODO CHECK DATES - Consider whether you mange your Public Gateway uniquely via the Scaleway console, or via calls to the API/devtools in code and scripts: - - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is removed from v2 such as DHCP object or entries, **you must take action before 1 Oct 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](TODO) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). + - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is removed from v2 such as DHCP object or entries, **you must take action before 1 Oct 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). - **Console-only**: You do not need to take any action, except ensuring that your gateway is in IPAM mode. - Check in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) whether your Public Gateway is in IPAM mode or legacy mode: - - **Legacy mode**: you must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, or the [dedicated API call](TODO). + - **Legacy mode**: you must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). - **IPAM mode**: you do not have any action to take, except updating any code and scripts that you have (see above). ### How do I move my legacy Public Gateway to IPAM mode? -Use the **Move to IPAM mode** button next to your gateway in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways), or the [dedicated API call](TODO). +You can do this in several ways: -If you use Terraform to manage your infrastructure as code, modify your templates to reattach your Public Gateways in IPAM mode, and use IPAM functionality to replace any DHCP configurations. Refer to our [Terraform snippets](TODO) for help with this. + - Use the **Move to IPAM mode** button in the console + - Use the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode). + - Use the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) ### What happens when I move my legacy Public Gateway to IPAM mode? -We will detach your Public Gateway from all attached Private Networks, and reattach it in IPAM mode. You can expect downtime of about 10-20 seconds. We will ensure that the IP used for the new attachment is the same as the old one. +We will detach your Public Gateway from all attached Private Networks, and reattach it in IPAM mode. You can expect downtime of about 10-20 seconds. We will ensure that the IP address used for the new attachment is the same as the old one. ### My Public Gateway is already in IPAM mode, do I need to take any action? If you only manage your gateway via the Scaleway console, you do not need to take any action once your gateway is in IPAM mode. -If you have any code or scripts that call v1 of the Scaleway Public Gateways API, you must update these to point towards [v2](TODO) before 1 Oct 2025. +If you have any code or scripts that call v1 of the Scaleway Public Gateways API, you must update these to point towards [v2](https://www.scaleway.com/en/developers/api/public-gateway/) before 1 Oct 2025. ### What if I want to keep using my custom gateway DHCP configuration from v1 of the API? @@ -185,11 +193,22 @@ Going forward, we expect users who were previously using custom DHCP with a Publ ### I use Terraform to manage my Public Gateway, what should I do? -If you use Terraform to manage your infrastructure as code, ensure that you are not using any functionality associated with v1 of the API (DHCP objects, DHCP entries or the `address` field). If necessary, modify your templates to reattach your Public Gateways in IPAM mode, and use IPAM functionality to replace any DHCP configurations. Refer to our [Terraform snippets](TODO) for help with this. +If you use Terraform to manage your infrastructure as code, ensure that you are not using any functionality associated with v1 of the API (DHCP objects, DHCP entries or the `address` field). If necessary, modify your templates to reattach your Public Gateways in IPAM mode with the `move_to_ipam` flag, and use IPAM functionality to replace any DHCP configurations. + +``` +resource "scaleway_vpc_public_gateway" "main" { + name = "foobar" + type = "VPC-GW-S" + ip_id = scaleway_vpc_public_gateway_ip.main.id + move_to_ipam = true +} +``` + +Refer to our [Terraform migration guide](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) for full details and help moving legacy gateways to IPAM mode. ### Can't I just wait for Scaleway to force the move to IPAM mode? -After the 1 Oct 2025 we will carry out a forced action which will move all existing legacy Public Gateways to IPAM mode, and we will remove v1 of the Public Gateways API. +After 1 Oct 2025 we will carry out a forced action which will move all existing legacy Public Gateways to IPAM mode, and we will remove v1 of the Public Gateways API. We highly recommend that you move to IPAM mode **before** this date, so that you can plan a smooth and synchronized transition at a time that suits you. @@ -205,3 +224,4 @@ The following documentation resources may be useful to you: - [Public Gateway Main Documentation](https://www.scaleway.com/en/docs/network/public-gateways/) - [IPAM API Documentation](https://www.scaleway.com/en/developers/api/ipam/) - [IPAM Main Documentation](https://www.scaleway.com/en/docs/network/ipam/) +- [Moving a Public Gateway from Legacy mode to IPAM mode with Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) From b4640662eabc309b6d9d67cf8c81b8b6e562b1ab Mon Sep 17 00:00:00 2001 From: Rowena Jones <36301604+RoRoJ@users.noreply.github.com> Date: Wed, 26 Mar 2025 17:04:25 +0100 Subject: [PATCH 15/22] Update pages/public-gateways/reference-content/understanding-v2.mdx --- pages/public-gateways/reference-content/understanding-v2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index daa574eb38..4fe2e0e323 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -91,7 +91,7 @@ All Public Gateways created via the Scaleway console since 17 October 2023 are n Legacy Public Gateways use a [workaround](/network/vpc/reference-content/vpc-migration/#public-gateways-and-vpc) to ensure IPAM compatibility. IPAM-mode Public Gateways are fully integrated with Scaleway's [IPAM](/network/ipam/concepts/#ipam), which manages the coherent assignment of IP addresses to the gateway itself, and resources on attached Private Networks. -Legacy mode will be deprecated going forward, and will not be compatible with v2 of the Public Gateway API. It will no longer be possible to create legacy-mode Public Gateways, all gateways will necessarily be in IPAM mode. +Legacy mode will be deprecated going forward, and will not be compatible with v2 of the Public Gateway API. It will no longer be possible to create legacy-mode Public Gateways, all new gateways will necessarily be in IPAM mode. If you still have a legacy gateway, you must [transition it to IPAM mode](#how-do-i-move-my-legacy-public-gateway-to-ipam-mode) so that it is compatible with v2 of the API. This will update the auto-calculated `is_legacy` field and put your gateway in IPAM mode. From b8d989c3d5cc1c01634d9b1c60b171a01003167b Mon Sep 17 00:00:00 2001 From: Rowena Date: Mon, 31 Mar 2025 14:23:20 +0200 Subject: [PATCH 16/22] fix(pgw): fix dates --- .../reference-content/understanding-v2.mdx | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index 4fe2e0e323..0c2f14bdcd 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -13,9 +13,6 @@ categories: - network --- -TODO CHECK CONSOLE MENTIONS -TODO CHECK DATES - Scaleway's VPC offering is evolving, and with this comes changes for the Public Gateway product. This document explains what to expect and how to prepare for the upcoming changes. @@ -123,7 +120,7 @@ For some time now, this functionality has been available via the API and develop For custom resources, such as VMs hosted on Elastic Metal servers, we now provide [dedicated functionality](https://www.scaleway.com/en/docs/vpc/how-to/attach-resources-to-pn/) for attaching these to Private Networks. When choosing the **Custom Resource** type, you can specify a MAC address and hostname at the moment of attachment. -We will automatically migrate any existing DHCP entries to IPAM for you, at the moment you put a legacy Public Gateway into IPAM mode. TODO STUFF ABOUT LATER ON DETACH/REATTACH +We will automatically migrate any existing DHCP entries to IPAM for you, at the moment you put a legacy Public Gateway into IPAM mode. ### SSH bastion allowed IPs @@ -131,16 +128,14 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also ## Timeline and action to take -TODO CHECK DATES - -- **7 March 2025 - V2 release**: The Public Gateway v2 API is be released, co-existing with v1. -- **7 March 2025 - V1 deprecation**: The Public Gateway v1 API is deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. +- **March 2025 - V2 release**: The Public Gateway v2 API is released, co-existing with v1. +- **8 April 2025 - V1 deprecation**: The Public Gateway v1 API is deprecated. Deprecation means that the API will still function, but it is slated for removal and we do not recommended that you keep using it. You will be able to list and manage all gateways with the **Scaleway console**, which will adapt to use v1 or v2 of the API as necessary depending on whether or not the gateway is in IPAM mode. -- **7 March 2025 2025 - 1 Oct 2025: Migration period**: You have a six month migration period to complete the following actions +- **8 March 2025 - 1 Oct 2025: Migration period**: You have a six month migration period to complete the following actions - Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM mode gateways are compatible with v2. - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). From 4cccec28e8ffda2b19f690b66bebbae4e877c2ed Mon Sep 17 00:00:00 2001 From: Rowena Date: Mon, 31 Mar 2025 16:23:54 +0200 Subject: [PATCH 17/22] fix(pgw): correct links --- .../reference-content/understanding-v2.mdx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index 0c2f14bdcd..3ba075377f 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -19,7 +19,7 @@ This document explains what to expect and how to prepare for the upcoming change ## Summary (TL;DR) -All Scaleway Public Gateways until now have been created and managed with the version 1 of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), either explicitly via the API itself, or implicitly behind the scenes of the Scaleway console or other developer tools. +All Scaleway Public Gateways until now have been created and managed with the version 1 of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/v1/), either explicitly via the API itself, or implicitly behind the scenes of the Scaleway console or other developer tools. **We are now deprecating v1 of the API and transitioning to v2.** @@ -40,7 +40,7 @@ After a deprecation period ending on 1 Oct 2025, the Public Gateways API v1 and - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM mode. You can do this in several ways: - Use the **Move to IPAM mode** button in the console - - Use the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode). + - Use the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode). - Use the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead, and do not refer to [removed functionalities](#introducing-public-gateways-api-v2). @@ -63,7 +63,7 @@ Whether you choose a custom or default CIDR block, automatic address assignment ## Introducing Public Gateways API v2 -Since the assignment and management of IP addresses on Private Networks is now managed by IPAM and the Private Networks themselves, we must complete the removal of the DHCP functionality from Public Gateways. This means releasing a new version (v2) of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), which has until now retained a number of legacy DHCP functions. From this new version, you can expect: +Since the assignment and management of IP addresses on Private Networks is now managed by IPAM and the Private Networks themselves, we must complete the removal of the DHCP functionality from Public Gateways. This means releasing a new version (v2) of the [Public Gateways API](https://www.scaleway.com/en/developers/api/public-gateway/), which has until now retained a number of legacy DHCP functions. From this new version, you can observe: - IPAM mode becomes default - Removal of the DHCP object @@ -104,7 +104,7 @@ Remember that you can define a [custom CIDR block](/vpc/how-to/create-private-ne For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). -When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you could use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. +When attaching a Public Gateway to a Private Network (creating a [Gateway Network](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateway-networks-attach-a-public-gateway-to-a-private-network)) via the API, you could use the `address` field to define a single static IP address to assign to the Public Gateway on that Private Network. **The `address` field does not exist in v2 of the API**. Instead, you can pass an `ipam_ip_id` to specify a reserved IP address to use for a Public Gateway on a Private Network, if you wish. On the Scaleway console, you can select a [reserved IP](/ipam/how-to/reserve-ip/) to use when attaching a Public Gateway to a Private Network. Otherwise, use the default behaviour where IPAM auto-assigns an IP address from the Private Network's CIDR block to the Public Gateway at the moment of attachment. @@ -114,7 +114,7 @@ When you [use a dedicated method](#how-do-i-move-my-legacy-public-gateway-to-ipa For some time now, this functionality has been available via the API and developer tools only (not the Scaleway console). -[DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/#path-dhcp-entries-list-dhcp-entries) could be created, belonging to a specified `GatewayNetwork` (Public Gateway / Private Network attachment), holding dynamic DHCP leases or static, user-created DHCP reservations. They have effectively allowed the Public Gateway to assign certain IP addresses to certain resources on the Private Network. +[DHCP entries](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-dhcp-entries-list-dhcp-entries) could be created, belonging to a specified `GatewayNetwork` (Public Gateway / Private Network attachment), holding dynamic DHCP leases or static, user-created DHCP reservations. They have effectively allowed the Public Gateway to assign certain IP addresses to certain resources on the Private Network. **DHCP entries do not exist in v2 of the API**. Instead, you can rely on the default IPAM/DHCP functionality as described [above](#background-dhcp-and-ipam). The default behavior will auto-assign IP addresses to resources on the Private Network from the network's CIDR block, or you can use the IP reservation functionality to specify the IP address(es) to assign to each resource. @@ -138,7 +138,7 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also - **8 March 2025 - 1 Oct 2025: Migration period**: You have a six month migration period to complete the following actions - Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM mode gateways are compatible with v2. - - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). + - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). - Ensure that [DHCP is activated](/vpc/how-to/activate-dhcp/) on all Private Networks attached to your IPAM-mode Public Gateways. - Update any code or scripts you have that call version 1 of the Public Gateways API, so that they call version 2 instead. This includes removing any use of the DHCP entries, DHCP objects or address fields as mentioned above. @@ -158,7 +158,7 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also - Check in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) whether your Public Gateway is in IPAM mode or legacy mode: - - **Legacy mode**: you must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). + - **Legacy mode**: you must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). - **IPAM mode**: you do not have any action to take, except updating any code and scripts that you have (see above). @@ -167,7 +167,7 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also You can do this in several ways: - Use the **Move to IPAM mode** button in the console - - Use the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/#path-gateways-put-a-public-gateway-in-ipam-mode). + - Use the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode). - Use the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) ### What happens when I move my legacy Public Gateway to IPAM mode? From bb5d65c40b6ef106c7acd321893373610ee93d4a Mon Sep 17 00:00:00 2001 From: Rowena Date: Mon, 31 Mar 2025 16:28:06 +0200 Subject: [PATCH 18/22] fix(concepts): update --- pages/public-gateways/concepts.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pages/public-gateways/concepts.mdx b/pages/public-gateways/concepts.mdx index de94fa9275..cb7b669802 100644 --- a/pages/public-gateways/concepts.mdx +++ b/pages/public-gateways/concepts.mdx @@ -80,6 +80,8 @@ Private Networks attached to legacy Public Gateways must stay in the gateway's a When creating a Kubernetes Kapsule cluster with [full isolation](/kubernetes/reference-content/secure-cluster-with-private-network/#can-i-use-a-public-gateway-with-my-private-network-to-exit-all-outgoing-traffic-from-the-nodes) you are required to attach a Public Gateway to the cluster's Private Network, and this **cannot** be a legacy Public Gateway - it must be an IPAM-mode gateway. +See also our dedicated documentation on [moving Public Gateways to IPAM-mode](/public-gateways/reference-content/understanding-v2/) to ensure compatibility with our new API v2. + ## Legacy gateway See [IPAM](#ipam). From dc336f7ff70daabd62eb2160ba1485be2cd2a9d0 Mon Sep 17 00:00:00 2001 From: Rowena Date: Mon, 31 Mar 2025 16:45:57 +0200 Subject: [PATCH 19/22] fix(pgw): add faq --- pages/public-gateways/faq.mdx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pages/public-gateways/faq.mdx b/pages/public-gateways/faq.mdx index abeea7d42d..5e10c50f0e 100644 --- a/pages/public-gateways/faq.mdx +++ b/pages/public-gateways/faq.mdx @@ -29,13 +29,15 @@ Moreover, the Public Gateway supports [static NAT](/public-gateways/how-to/confi On 12 July 2023, DHCP functionality moved from Public Gateways to Private Networks. See our [dedicated migration documentation](/vpc/reference-content/vpc-migration/) for full details. -Pre-existing static leases created via the Public Gateway were fully migrated and still work for your attached resources on a Private Network. Manual static lease configuration is still available via the API and other developer tools, but is no longer available via the Scaleway console. We recommend that you use [Scaleway IPAM](/ipam/) to reserve private IP addresses on specific Private Networks, which you can then use when attaching resources. +Pre-existing static leases created via the Public Gateway were fully migrated and still work for your attached resources on a Private Network. Manual static lease configuration is still available via the API v1 and other developer tools, but this functionality is now deprecated, and does not exist in v2 of the API. + +Read our [dedicated documentation](/public-gateways/reference-content/understanding-v2/) to learn how to put your gateway into IPAM-mode and replicate static DHCP reservation functionality with Scaleway IPAM. ## Why is my Public Gateway labelled as Legacy? -**Legacy** Public Gateways use a [workaround](/vpc/reference-content/vpc-migration/#public-gateways-and-vpc) to ensure compatiblity with Scaleway's IPAM (**I** **P** **A**ddress **M**anagement) tool. IPAM acts as a single source of truth for the IP addresses of Scaleway resources +**Legacy** Public Gateways use a [workaround](/vpc/reference-content/vpc-migration/#public-gateways-and-vpc) to ensure compatibility with Scaleway's IPAM (**I** **P** **A**ddress **M**anagement) tool. IPAM acts as a single source of truth for the IP addresses of Scaleway resources -Your gateway is probably a legacy gateway if you created it prior to 17 October 2023. These gateways will continue to function, but are not natively integrated with IPAM, and you cannot take advantage of features such as IP management via Scaleway [IPAM](/ipam/), or fully-isolated Kubernetes Kapsules. You should create a new gateway if you want to benefit from such features. +Your gateway is a legacy gateway if you created it prior to 17 October 2023 and you never recreated it in IPAM mode. Legacy gateways are now deprecated, as they are incompatible with v2 of the Public Gateways API. Such gateways must be [moved to IPAM mode](/public-gateways/reference-content/understanding-v2/) before October 2025 to ensure ongoing functionality. ## Do I need a Public Gateway for each Availability Zone (AZ)? From 85ad32843fdce6db66de0fa77dc1404f3fb8ea15 Mon Sep 17 00:00:00 2001 From: Rowena Jones <36301604+RoRoJ@users.noreply.github.com> Date: Mon, 31 Mar 2025 17:17:28 +0200 Subject: [PATCH 20/22] Update pages/public-gateways/reference-content/understanding-v2.mdx --- pages/public-gateways/reference-content/understanding-v2.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index 3ba075377f..c6ff5d3fe3 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -135,7 +135,7 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also You will be able to list and manage all gateways with the **Scaleway console**, which will adapt to use v1 or v2 of the API as necessary depending on whether or not the gateway is in IPAM mode. -- **8 March 2025 - 1 Oct 2025: Migration period**: You have a six month migration period to complete the following actions +- **8 April 2025 - 1 Oct 2025: Migration period**: You have a six month migration period to complete the following actions - Ensure that your Public Gateway is in [IPAM mode](/network/public-gateways/concepts/#ipam). Only IPAM mode gateways are compatible with v2. - Put any non-IPAM mode ([legacy](/network/public-gateways/concepts/#ipam)) Public Gateways in IPAM-mode, by using the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). From 99a432a0d83b2907872d478fdd1621eec57a26e7 Mon Sep 17 00:00:00 2001 From: Rowena Jones <36301604+RoRoJ@users.noreply.github.com> Date: Mon, 31 Mar 2025 17:25:53 +0200 Subject: [PATCH 21/22] Apply suggestions from code review Co-authored-by: ldecarvalho-doc <82805470+ldecarvalho-doc@users.noreply.github.com> --- pages/public-gateways/faq.mdx | 2 +- pages/public-gateways/reference-content/index.mdx | 4 ++-- .../public-gateways/reference-content/understanding-v2.mdx | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pages/public-gateways/faq.mdx b/pages/public-gateways/faq.mdx index 5e10c50f0e..dce990c378 100644 --- a/pages/public-gateways/faq.mdx +++ b/pages/public-gateways/faq.mdx @@ -33,7 +33,7 @@ Pre-existing static leases created via the Public Gateway were fully migrated an Read our [dedicated documentation](/public-gateways/reference-content/understanding-v2/) to learn how to put your gateway into IPAM-mode and replicate static DHCP reservation functionality with Scaleway IPAM. -## Why is my Public Gateway labelled as Legacy? +## Why is my Public Gateway labeled as Legacy? **Legacy** Public Gateways use a [workaround](/vpc/reference-content/vpc-migration/#public-gateways-and-vpc) to ensure compatibility with Scaleway's IPAM (**I** **P** **A**ddress **M**anagement) tool. IPAM acts as a single source of truth for the IP addresses of Scaleway resources diff --git a/pages/public-gateways/reference-content/index.mdx b/pages/public-gateways/reference-content/index.mdx index 056146c1fd..fc10d136e3 100644 --- a/pages/public-gateways/reference-content/index.mdx +++ b/pages/public-gateways/reference-content/index.mdx @@ -1,8 +1,8 @@ --- meta: title: Public Gateways - Additional Content - description: Explore detailed Scaleway configurations, best practices and troubleshooting for Scaleway Public Gateways. Optimize configuration of your gateway with our comprehensive reference guides. + description: Explore detailed Scaleway configurations, best practices and troubleshooting for Scaleway Public Gateways. Optimize the configuration of your gateway with our comprehensive reference guides. content: h1: Public Gateways - Additional Content - paragraph: Explore detailed Scaleway configurations, best practices and troubleshooting for Scaleway Public Gateways. Optimize configuration of your gateway with our comprehensive reference guides. + paragraph: Explore detailed Scaleway configurations, best practices and troubleshooting for Scaleway Public Gateways. Optimize the configuration of your gateway with our comprehensive reference guides. --- diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index c6ff5d3fe3..bfe10af646 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -150,7 +150,7 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also ### How do I know if I have to take action? -- Consider whether you mange your Public Gateway uniquely via the Scaleway console, or via calls to the API/devtools in code and scripts: +- Consider whether you manage your Public Gateway uniquely via the Scaleway console, or via calls to the API/devtools in code and scripts: - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is removed from v2 such as DHCP object or entries, **you must take action before 1 Oct 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). @@ -158,9 +158,9 @@ Allowed IPs is a new functionality of the Public Gateways API v2, that will also - Check in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) whether your Public Gateway is in IPAM mode or legacy mode: - - **Legacy mode**: you must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). + - **Legacy mode**: You must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). - - **IPAM mode**: you do not have any action to take, except updating any code and scripts that you have (see above). + - **IPAM mode**: You do not have any action to take, except updating any code and scripts that you have (see above). ### How do I move my legacy Public Gateway to IPAM mode? From cfdc4b81e952f12915b5f234626601ea22d84dc7 Mon Sep 17 00:00:00 2001 From: Rowena Date: Tue, 1 Apr 2025 10:43:28 +0200 Subject: [PATCH 22/22] fix(pgw): review comments --- pages/public-gateways/faq.mdx | 18 ++++++++++++++++++ .../reference-content/understanding-v2.mdx | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/pages/public-gateways/faq.mdx b/pages/public-gateways/faq.mdx index dce990c378..e24cbf30e9 100644 --- a/pages/public-gateways/faq.mdx +++ b/pages/public-gateways/faq.mdx @@ -39,6 +39,24 @@ Read our [dedicated documentation](/public-gateways/reference-content/understand Your gateway is a legacy gateway if you created it prior to 17 October 2023 and you never recreated it in IPAM mode. Legacy gateways are now deprecated, as they are incompatible with v2 of the Public Gateways API. Such gateways must be [moved to IPAM mode](/public-gateways/reference-content/understanding-v2/) before October 2025 to ensure ongoing functionality. +## I received a message about v1 of the Public Gateways API being deprecated, do I need to take action? + +The Public Gateways API v1 is now deprecated, and will be removed on 1 October 2025. Only IPAM-mode gateways will be compatible with the new version of the API (v2). Whether or not you need to take action depends on the following two points: + +- Consider whether you manage your Public Gateway uniquely via the Scaleway console, or via calls to the API/devtools in code and scripts: + + - **Code and scripts**: If you have any code or scripts that call v1 of the API, or use devtool functionality that is [removed from v2](/public-gateways/reference-content/understanding-v2/) such as DHCP object or entries, **you must take action before 1 Oct 2025**. Update your code and scripts so they point to v2 of the API. [Follow the examples provided for tools such as Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md) to rewrite your devtool templates so they do not refer to removed functionalities. Do this in synchronization with moving your gateway to IPAM mode (if necessary). + + - **Console-only**: You do not need to take any action, except ensuring that your gateway is in IPAM mode. + +- Check in the [Scaleway console](https://console.scaleway.com/public-gateway/public-gateways) whether your Public Gateway is in IPAM mode or legacy mode: + + - **Legacy mode**: You must move the gateway to IPAM mode. Only IPAM mode gateways are compatible with v2. Use the **Move to IPAM mode** button in the console, the [dedicated API call](https://www.scaleway.com/en/developers/api/public-gateway/v1/#path-gateways-put-a-public-gateway-in-ipam-mode), or the `move_to_ipam` flag in [Terraform](https://github.com/scaleway/terraform-provider-scaleway/blob/master/docs/guides/migration_guide_vpcgw_v2.md). + + - **IPAM mode**: You do not have any action to take, except updating any code and scripts that you have (see above). + +See our [dedicated documentation](/public-gateways/reference-content/understanding-v2/) for full details. + ## Do I need a Public Gateway for each Availability Zone (AZ)? VPC and Private Networks are both [regional](/public-gateways/concepts/#region-and-availability-zone), meaning they span all AZs across a given region. Even though Public Gateways are zoned and not regional, one Public Gateway attached to a regional Private Network is functionally enough, and will cover the whole region. That is to say a Public Gateway created in PAR-1 can serve Instances in PAR-2 and PAR-3, as long as they are all attached to the same PAR-region Private Network. diff --git a/pages/public-gateways/reference-content/understanding-v2.mdx b/pages/public-gateways/reference-content/understanding-v2.mdx index bfe10af646..4824106bab 100644 --- a/pages/public-gateways/reference-content/understanding-v2.mdx +++ b/pages/public-gateways/reference-content/understanding-v2.mdx @@ -71,7 +71,7 @@ Since the assignment and management of IP addresses on Private Networks is now m - Removal of DHCP entries - New SSH bastion feature: Allowed IPs -Read on to find out more. +Full details of each change are explained below. ### IPAM mode becomes default