diff --git a/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-resou.mdx b/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-nats.mdx similarity index 75% rename from changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-resou.mdx rename to changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-nats.mdx index 4d18377368..8b07ee452c 100644 --- a/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-resou.mdx +++ b/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-nats.mdx @@ -6,7 +6,7 @@ author: url: 'https://slack.scaleway.com' date: 2024-04-25 category: serverless -product: messaging-and-queuing +product: nats --- @@ -17,5 +17,5 @@ Scaleway Messaging and Queuing is evolving. We have increased the limitations on This update empowers you to handle larger workloads and enables more robust communication. -For detailed information on the limitations and capabilities of our Messaging and Queuing protocols, please refer to the [Messaging and Queuing documentation](/messaging/reference-content/limitations/). +For detailed information on the limitations and capabilities of our Messaging and Queuing protocols, please refer to the [documentation](https://www.scaleway.com/en/docs/organizations-and-projects/additional-content/organization-quotas/). diff --git a/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-queues.mdx b/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-queues.mdx new file mode 100644 index 0000000000..5e1e7024a3 --- /dev/null +++ b/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-queues.mdx @@ -0,0 +1,21 @@ +--- +title: Resource quotas have been increased +status: changed +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-04-25 +category: serverless +product: queues +--- + + +Scaleway Messaging and Queuing is evolving. We have increased the limitations on our resource quotas, meaning that each Scaleway Project can now scale up to: +- 50 SQS queues +- 50 SNS topics +- 50 NATS streams + +This update empowers you to handle larger workloads and enables more robust communication. + +For detailed information on the limitations and capabilities of our Messaging and Queuing protocols, please refer to the [documentation](https://www.scaleway.com/en/docs/organizations-and-projects/additional-content/organization-quotas/). + diff --git a/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-topics.mdx b/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-topics.mdx new file mode 100644 index 0000000000..bc18584646 --- /dev/null +++ b/changelog/april2024/2024-04-25-messaging-and-queuing-changed-increased-messaging-topics.mdx @@ -0,0 +1,21 @@ +--- +title: Resource quotas have been increased +status: changed +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-04-25 +category: serverless +product: topics-and-events +--- + + +Scaleway Messaging and Queuing is evolving. We have increased the limitations on our resource quotas, meaning that each Scaleway Project can now scale up to: +- 50 SQS queues +- 50 SNS topics +- 50 NATS streams + +This update empowers you to handle larger workloads and enables more robust communication. + +For detailed information on the limitations and capabilities of our Messaging and Queuing protocols, please refer to the [documentation](https://www.scaleway.com/en/docs/organizations-and-projects/additional-content/organization-quotas/). + diff --git a/changelog/april2025/2025-04-01-messaging-and-queuing-added-undelivered-message-queue-f.mdx b/changelog/april2025/2025-04-01-messaging-and-queuing-added-undelivered-message-queue-f.mdx index cfbf68b78c..06e7c8d0ca 100644 --- a/changelog/april2025/2025-04-01-messaging-and-queuing-added-undelivered-message-queue-f.mdx +++ b/changelog/april2025/2025-04-01-messaging-and-queuing-added-undelivered-message-queue-f.mdx @@ -3,8 +3,8 @@ title: Undelivered message queue feature is available status: added date: 2025-04-01 category: serverless -product: messaging-and-queuing +product: queues --- -When creating a new queue with Scaleway Queues, you can now configure a dead-letter queue to receive its on-hold or undelivered messages. Read more in the [documentation](/messaging/concepts/#dead-letter-queue) +When creating a new queue with Scaleway Queues, you can now configure a dead-letter queue to receive its on-hold or undelivered messages. Read more in the [documentation](/queues/concepts/#dead-letter-queue) diff --git a/changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sqs-and-sns-namespace.mdx b/changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sns-namespace.mdx similarity index 91% rename from changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sqs-and-sns-namespace.mdx rename to changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sns-namespace.mdx index 4ed05e6db9..71e0e170da 100644 --- a/changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sqs-and-sns-namespace.mdx +++ b/changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sns-namespace.mdx @@ -6,7 +6,7 @@ author: url: 'https://slack.scaleway.com' date: 2023-08-31 category: serverless -product: messaging-and-queuing +product: topics-and-events --- To pave the way for the new Messaging and Queuing API, it is no longer possible to create more than one SQS/SNS namespace per Project. diff --git a/changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sqs-namespace.mdx b/changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sqs-namespace.mdx new file mode 100644 index 0000000000..44f721d4e1 --- /dev/null +++ b/changelog/august2023/2023-08-31-messaging-and-queueing-deprecated-sqs-namespace.mdx @@ -0,0 +1,13 @@ +--- +title: SQS and SNS namespace creation +status: deprecated +author: + fullname: 'Join the #messaging-queuing-beta channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2023-08-31 +category: serverless +product: queues +--- + +To pave the way for the new Messaging and Queuing API, it is no longer possible to create more than one SQS/SNS namespace per Project. + diff --git a/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-to-be-mig.mdx b/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-nats.mdx similarity index 95% rename from changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-to-be-mig.mdx rename to changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-nats.mdx index 18f70b84ac..e86ad7eb5a 100644 --- a/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-to-be-mig.mdx +++ b/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-nats.mdx @@ -6,7 +6,7 @@ author: url: 'https://slack.scaleway.com' date: 2023-12-04 category: serverless -product: messaging-and-queuing +product: nats --- Effective December 1st 2023, the Messaging and Queuing v1alpha1 API has been deprecated and its resources and endpoints are no longer available. The v1beta1 APIs, available for Messaging and Queuing [SQS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sqs-api/), [SNS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sns-api/) and [NATS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/nats-api/), must now be used going forward. diff --git a/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-queues.mdx b/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-queues.mdx new file mode 100644 index 0000000000..cae9c4b4ce --- /dev/null +++ b/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-queues.mdx @@ -0,0 +1,13 @@ +--- +title: API v1alpha1 deprecated in favor of v1beta1 +status: deprecated +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2023-12-04 +category: serverless +product: queues +--- + +Effective December 1st 2023, the Messaging and Queuing v1alpha1 API has been deprecated and its resources and endpoints are no longer available. The v1beta1 APIs, available for Messaging and Queuing [SQS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sqs-api/), [SNS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sns-api/) and [NATS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/nats-api/), must now be used going forward. + diff --git a/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-topics.mdx b/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-topics.mdx new file mode 100644 index 0000000000..33aba22349 --- /dev/null +++ b/changelog/december2023/2023-12-04-messaging-and-queuing-deprecated-api-v1alpha1-topics.mdx @@ -0,0 +1,13 @@ +--- +title: API v1alpha1 deprecated in favor of v1beta1 +status: deprecated +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2023-12-04 +category: serverless +product: topics-and-events +--- + +Effective December 1st 2023, the Messaging and Queuing v1alpha1 API has been deprecated and its resources and endpoints are no longer available. The v1beta1 APIs, available for Messaging and Queuing [SQS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sqs-api/), [SNS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sns-api/) and [NATS](https://www.scaleway.com/en/developers/api/messaging-and-queuing/nats-api/), must now be used going forward. + diff --git a/changelog/december2023/2023-12-19-messaging-and-queuing-added-sqs-supports-json-transport.mdx b/changelog/december2023/2023-12-19-messaging-and-queuing-added-sqs-supports-json-transport.mdx index 7be6727a04..d9dfc5f621 100644 --- a/changelog/december2023/2023-12-19-messaging-and-queuing-added-sqs-supports-json-transport.mdx +++ b/changelog/december2023/2023-12-19-messaging-and-queuing-added-sqs-supports-json-transport.mdx @@ -6,7 +6,7 @@ author: url: 'https://slack.scaleway.com' date: 2023-12-19 category: serverless -product: messaging-and-queuing +product: queues --- Messaging and Queuing SQS now includes support for JSON transport protocol 1.0, which serves as the default transport for the latest SQS SDK. Feel free to upgrade your SDK to the most recent version. diff --git a/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-queuing-is-.mdx b/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-nats.mdx similarity index 64% rename from changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-queuing-is-.mdx rename to changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-nats.mdx index 9ff2ba4b64..eb20681990 100644 --- a/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-queuing-is-.mdx +++ b/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-nats.mdx @@ -6,12 +6,10 @@ author: url: 'https://slack.scaleway.com' date: 2024-12-05 category: serverless -product: messaging-and-queuing +product: nats --- We have redefined our Messaging and Queuing offering into three distinct products: -- NATS (NATS) -- Queues (formerly SQS) -- Topics & Events (formerly SNS) - -Learn more about each product in our [documentation](/messaging/). +- [NATS](/nats/) (NATS) +- [Queues](/queues/) (formerly SQS) +- [Topics & Events](/topics-and-events/) (formerly SNS) diff --git a/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-queues.mdx b/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-queues.mdx new file mode 100644 index 0000000000..1fbffe8240 --- /dev/null +++ b/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-queues.mdx @@ -0,0 +1,15 @@ +--- +title: Messaging and Queuing split into three products! +status: changed +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-12-05 +category: serverless +product: queues +--- + +We have redefined our Messaging and Queuing offering into three distinct products: +- [NATS](/nats/) (NATS) +- [Queues](/queues/) (formerly SQS) +- [Topics & Events](/topics-and-events/) (formerly SNS) diff --git a/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-topics.mdx b/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-topics.mdx new file mode 100644 index 0000000000..8bc4fa9767 --- /dev/null +++ b/changelog/december2024/2024-12-05-messaging-and-queuing-changed-messaging-and-topics.mdx @@ -0,0 +1,15 @@ +--- +title: Messaging and Queuing split into three products! +status: changed +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-12-05 +category: serverless +product: topics-and-events +--- + +We have redefined our Messaging and Queuing offering into three distinct products: +- [NATS](/nats/) (NATS) +- [Queues](/queues/) (formerly SQS) +- [Topics & Events](/topics-and-events/) (formerly SNS) diff --git a/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-is-av.mdx b/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-is-av.mdx deleted file mode 100644 index cef915cbf3..0000000000 --- a/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-is-av.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: Messaging and Queuing is now available in the AMS region! -status: added -author: - fullname: 'Join the #messaging-queuing channel on Slack.' - url: 'https://slack.scaleway.com' -date: 2024-02-22 -category: serverless -product: messaging-and-queuing ---- - -You can now manage your Messaging and Queuing resources in the AMS region. All three protocols (SQS, NATS & SNS) are available in the region. For more information, refer to our [Messaging and Queuing documentation](/messaging/). - diff --git a/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-nats.mdx b/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-nats.mdx new file mode 100644 index 0000000000..b91c3873f0 --- /dev/null +++ b/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-nats.mdx @@ -0,0 +1,14 @@ +--- +title: Messaging and Queuing is now available in the AMS region! +status: added +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-02-22 +category: serverless +product: nats +--- + +You can now manage your Messaging and Queuing resources, including NATS, in the AMS region. For more information, refer to our [documentation](/nats/). + + diff --git a/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-queues.mdx b/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-queues.mdx new file mode 100644 index 0000000000..2f7bdb4855 --- /dev/null +++ b/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-queues.mdx @@ -0,0 +1,12 @@ +--- +title: Messaging and Queuing is now available in the AMS region! +status: added +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-02-22 +category: serverless +product: queues +--- + +You can now manage your Messaging and Queuing resources, including SQS, in the AMS region. For more information, refer to our [documentation](/queues/). diff --git a/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-topic.mdx b/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-topic.mdx new file mode 100644 index 0000000000..133b4721ff --- /dev/null +++ b/changelog/february2024/2024-02-22-messaging-and-queuing-added-messaging-and-queuing-topic.mdx @@ -0,0 +1,13 @@ +--- +title: Messaging and Queuing is now available in the AMS region! +status: added +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-02-22 +category: serverless +product: topics-and-events +--- + +You can now manage your Messaging and Queuing resources, including SNS, in the AMS region. For more information, refer to our [documentation](/topics-and-events/). + diff --git a/changelog/february2024/2024-02-22-messaging-and-queuing-added-sns-subscriptions-creation-.mdx b/changelog/february2024/2024-02-22-messaging-and-queuing-added-sns-subscriptions-creation-.mdx index c002a44912..93fc750bb5 100644 --- a/changelog/february2024/2024-02-22-messaging-and-queuing-added-sns-subscriptions-creation-.mdx +++ b/changelog/february2024/2024-02-22-messaging-and-queuing-added-sns-subscriptions-creation-.mdx @@ -6,9 +6,9 @@ author: url: 'https://slack.scaleway.com' date: 2024-02-22 category: serverless -product: messaging-and-queuing +product: topics-and-events --- You can now manage your SNS subscriptions [directly from the Scaleway console](https://console.scaleway.com/messaging/protocols/). You can subscribe to HTTP/S endpoints and Serverless Compute resources (Functions & Containers). -You can refer to our documentation to find out [how to create and manage SNS subscriptions](/messaging/how-to/create-manage-subscriptions/). +You can refer to our documentation to find out [how to create and manage SNS subscriptions](/topics-and-events/how-to/create-manage-subscriptions/). diff --git a/changelog/january2024/2024-01-05-messaging-and-queuing-added-sns-topic-creation-availabl.mdx b/changelog/january2024/2024-01-05-messaging-and-queuing-added-sns-topic-creation-availabl.mdx index ced4284684..b8a9347b10 100644 --- a/changelog/january2024/2024-01-05-messaging-and-queuing-added-sns-topic-creation-availabl.mdx +++ b/changelog/january2024/2024-01-05-messaging-and-queuing-added-sns-topic-creation-availabl.mdx @@ -6,9 +6,9 @@ author: url: 'https://slack.scaleway.com' date: 2024-01-05 category: serverless -product: messaging-and-queuing +product: topics-and-events --- You can now create and manage your SNS Topics directly in the console. -For more information, you can refer to our [How to create topics documentation](https://www.scaleway.com/en/docs/messaging/how-to/create-manage-topics/). +For more information, you can refer to our [How to create topics documentation](https://www.scaleway.com/en/docs/topics-and-events/how-to/create-manage-topics/). diff --git a/changelog/june2024/2024-06-25-messaging-and-queuing-changed-messaging-and-queuing-sns.mdx b/changelog/june2024/2024-06-25-messaging-and-queuing-changed-messaging-and-queuing-sns.mdx index 3409232b64..71a9ec01bf 100644 --- a/changelog/june2024/2024-06-25-messaging-and-queuing-changed-messaging-and-queuing-sns.mdx +++ b/changelog/june2024/2024-06-25-messaging-and-queuing-changed-messaging-and-queuing-sns.mdx @@ -6,9 +6,9 @@ author: url: 'https://slack.scaleway.com' date: 2024-06-25 category: serverless -product: messaging-and-queuing +product: topics-and-events --- -[Scaleway Messaging and Queuing SNS](https://www.scaleway.com/en/docs/messaging/quickstart/#quickstart-for-topics-and-events) is a fully managed pub/sub solution for sending notifications and messages between cloud products. It is natively integrated with our Serverless ecosystem. +[Scaleway Messaging and Queuing SNS](https://www.scaleway.com/en/docs/topics-and-events/quickstart/) is a fully managed pub/sub solution for sending notifications and messages between cloud products. It is natively integrated with our Serverless ecosystem. It is now in General Availability, ready for your production use cases. diff --git a/changelog/may2023/2023-05-12-messaging-and-queueing-added-sqs-queue-creation-available.mdx b/changelog/may2023/2023-05-12-messaging-and-queueing-added-sqs-queue-creation-available.mdx index 66f8888e5b..4a46731609 100644 --- a/changelog/may2023/2023-05-12-messaging-and-queueing-added-sqs-queue-creation-available.mdx +++ b/changelog/may2023/2023-05-12-messaging-and-queueing-added-sqs-queue-creation-available.mdx @@ -6,7 +6,7 @@ author: url: 'https://slack.scaleway.com' date: 2023-05-12 category: serverless -product: messaging-and-queuing +product: queues --- Creating queues is now directly available from your SQS namespace in the [Scaleway console](https://console.scaleway.com/). diff --git a/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-queuing-is-.mdx b/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-nats.mdx similarity index 77% rename from changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-queuing-is-.mdx rename to changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-nats.mdx index 84924b37f3..e34dc120ac 100644 --- a/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-queuing-is-.mdx +++ b/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-nats.mdx @@ -6,7 +6,7 @@ author: url: 'https://slack.scaleway.com' date: 2023-10-24 category: serverless -product: messaging-and-queuing +product: nats --- Messaging and Queuing is Scaleway's message broker solution that allows you to send messages and trigger events between your cloud resources. @@ -17,5 +17,5 @@ The Messaging and Queuing features are available via the Scaleway console, the C Your existing resources will need to be migrated, as communicated to all beta users. -Find out about Messaging and Queuing in our [dedicated documentation](/messaging/quickstart/). If you have any questions, reach out to the team on the #messaging-queuing community Slack channel. +If you have any questions, reach out to the team on the #messaging-queuing community Slack channel. diff --git a/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-queues.mdx b/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-queues.mdx new file mode 100644 index 0000000000..5c191434fc --- /dev/null +++ b/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-queues.mdx @@ -0,0 +1,21 @@ +--- +title: Messaging and Queuing is now in General Availability +status: changed +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2023-10-24 +category: serverless +product: queues +--- + +Messaging and Queuing is Scaleway's message broker solution that allows you to send messages and trigger events between your cloud resources. + +The service supports 3 protocols: NATS, SQS and SNS (the latter is still in Public Beta). Messaging and Queuing is serverless-based, so you can run it without worrying about provisioning and you only pay for what you use. + +The Messaging and Queuing features are available via the Scaleway console, the CLI and Terraform. + +Your existing resources will need to be migrated, as communicated to all beta users. + +If you have any questions, reach out to the team on the #messaging-queuing community Slack channel. + diff --git a/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-topics.mdx b/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-topics.mdx new file mode 100644 index 0000000000..7fe0a6781e --- /dev/null +++ b/changelog/october2023/2023-10-24-messaging-and-queuing-changed-messaging-and-topics.mdx @@ -0,0 +1,21 @@ +--- +title: Messaging and Queuing is now in General Availability +status: changed +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2023-10-24 +category: serverless +product: topics-and-events +--- + +Messaging and Queuing is Scaleway's message broker solution that allows you to send messages and trigger events between your cloud resources. + +The service supports 3 protocols: NATS, SQS and SNS (the latter is still in Public Beta). Messaging and Queuing is serverless-based, so you can run it without worrying about provisioning and you only pay for what you use. + +The Messaging and Queuing features are available via the Scaleway console, the CLI and Terraform. + +Your existing resources will need to be migrated, as communicated to all beta users. + +If you have any questions, reach out to the team on the #messaging-queuing community Slack channel. + diff --git a/changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-availab.mdx b/changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-queues.mdx similarity index 82% rename from changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-availab.mdx rename to changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-queues.mdx index 563182ac3c..b3e2f5a74d 100644 --- a/changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-availab.mdx +++ b/changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-queues.mdx @@ -6,10 +6,10 @@ author: url: 'https://slack.scaleway.com' date: 2024-10-08 category: serverless -product: messaging-and-queuing +product: queues --- You can now subscribe directly to queues from your topics, from the [Scaleway console](https://console.scaleway.com), and via the [API](https://www.scaleway.com/en/developers/api/) for standard and FIFO topics. -For more information, refer to the [Subscriptions documentation](https://www.scaleway.com/en/docs/messaging/how-to/create-manage-subscriptions/). +For more information, refer to the [Subscriptions documentation](https://www.scaleway.com/en/docs/topics-and-events/how-to/create-manage-subscriptions/). diff --git a/changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-topics.mdx b/changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-topics.mdx new file mode 100644 index 0000000000..55f03b0c9d --- /dev/null +++ b/changelog/october2024/2024-10-08-messaging-and-queuing-added-queues-subscription-topics.mdx @@ -0,0 +1,15 @@ +--- +title: Queue subscriptions available for Messaging and Queuing topics +status: added +author: + fullname: 'Join the #messaging-queuing channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2024-10-08 +category: serverless +product: topics-and-events +--- + +You can now subscribe directly to queues from your topics, from the [Scaleway console](https://console.scaleway.com), and via the [API](https://www.scaleway.com/en/developers/api/) for standard and FIFO topics. + +For more information, refer to the [Subscriptions documentation](https://www.scaleway.com/en/docs/topics-and-events/how-to/create-manage-subscriptions/). + diff --git a/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-metrics.mdx b/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-nats.mdx similarity index 64% rename from changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-metrics.mdx rename to changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-nats.mdx index 10664d49de..9354755bb2 100644 --- a/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-metrics.mdx +++ b/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-nats.mdx @@ -6,8 +6,8 @@ author: url: 'https://slack.scaleway.com' date: 2023-09-21 category: serverless -product: messaging-and-queuing +product: nats --- - Cockpit integration is available for SQS, NATS & SNS. Refer to our [product documentation](/messaging/how-to/monitor-mnq-cockpit/) to find out how to monitor your Messaging and queuing metrics. + Cockpit integration is available for SQS, NATS & SNS. Refer to the documentation to find out how to monitor your Messaging and queuing metrics. diff --git a/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-queues.mdx b/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-queues.mdx new file mode 100644 index 0000000000..b6959567de --- /dev/null +++ b/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-queues.mdx @@ -0,0 +1,13 @@ +--- +title: Messaging and Queuing metrics available in Cockpit +status: added +author: + fullname: 'Join the #messaging-queuing-beta channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2023-09-21 +category: serverless +product: queues +--- + + Cockpit integration is available for SQS, NATS & SNS. Refer to the documentation to find out how to monitor your Messaging and queuing metrics. + diff --git a/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-topics.mdx b/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-topics.mdx new file mode 100644 index 0000000000..adb759f503 --- /dev/null +++ b/changelog/september2023/2023-09-21-messaging-and-queuing-added-messaging-and-queuing-topics.mdx @@ -0,0 +1,13 @@ +--- +title: Messaging and Queuing metrics available in Cockpit +status: added +author: + fullname: 'Join the #messaging-queuing-beta channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2023-09-21 +category: serverless +product: topics-and-events +--- + + Cockpit integration is available for SQS, NATS & SNS. Refer to the documentation to find out how to monitor your Messaging and queuing metrics. + diff --git a/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta.mdx b/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-nats.mdx similarity index 94% rename from changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta.mdx rename to changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-nats.mdx index c83b4991ed..e5d4701b20 100644 --- a/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta.mdx +++ b/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-nats.mdx @@ -6,7 +6,7 @@ author: url: 'https://slack.scaleway.com/' date: 2023-01-10 category: serverless -product: messaging-and-queuing +product: nats --- Scaleway’s Messaging & Queuing is a fully managed message broker solution for sending messages and events between microservices. Fully managed, the service supports many protocols (SNS, SQS, NATS) and simplifies the development of microservice-based applications. \ No newline at end of file diff --git a/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-queues.mdx b/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-queues.mdx new file mode 100644 index 0000000000..2a5f8418f7 --- /dev/null +++ b/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-queues.mdx @@ -0,0 +1,12 @@ +--- +title: Scaleway Messaging & Queuing is now in Public Beta! +status: added +author: + fullname: 'Join the #messaging-queuing-beta channel on Slack.' + url: 'https://slack.scaleway.com/' +date: 2023-01-10 +category: serverless +product: queues +--- + +Scaleway’s Messaging & Queuing is a fully managed message broker solution for sending messages and events between microservices. Fully managed, the service supports many protocols (SNS, SQS, NATS) and simplifies the development of microservice-based applications. \ No newline at end of file diff --git a/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-topics.mdx b/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-topics.mdx new file mode 100644 index 0000000000..f8110746c7 --- /dev/null +++ b/changelog/serverless/january2023/2023-01-10-changed-messaging-public-beta-topics.mdx @@ -0,0 +1,12 @@ +--- +title: Scaleway Messaging & Queuing is now in Public Beta! +status: added +author: + fullname: 'Join the #messaging-queuing-beta channel on Slack.' + url: 'https://slack.scaleway.com/' +date: 2023-01-10 +category: serverless +product: topics-and-events +--- + +Scaleway’s Messaging & Queuing is a fully managed message broker solution for sending messages and events between microservices. Fully managed, the service supports many protocols (SNS, SQS, NATS) and simplifies the development of microservice-based applications. \ No newline at end of file diff --git a/changelog/serverless/september2022/2022-09-07-mnq-added-sns-sqs.mdx b/changelog/serverless/september2022/2022-09-07-mnq-added-sns-sqs.mdx deleted file mode 100644 index 5a8200ecd0..0000000000 --- a/changelog/serverless/september2022/2022-09-07-mnq-added-sns-sqs.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: SNS and SQS available in private beta -status: added -author: - fullname: 'Join the #messaging-queuing-beta channel on Slack.' - url: 'https://slack.scaleway.com' -date: 2022-09-08 -category: serverless -product: messaging-and-queuing ---- - -SNS and SQS are now available for Messaging in [private beta](https://www.scaleway.com/en/betas/). You can create an SNS/SQS namespace, generate credentials and use them to connect to the system. Find out more on the SNS/SQS [documentation overview](/messaging/reference-content/). \ No newline at end of file diff --git a/changelog/serverless/september2022/2022-09-07-mnq-added-sns.mdx b/changelog/serverless/september2022/2022-09-07-mnq-added-sns.mdx new file mode 100644 index 0000000000..f6c7332f15 --- /dev/null +++ b/changelog/serverless/september2022/2022-09-07-mnq-added-sns.mdx @@ -0,0 +1,12 @@ +--- +title: SNS available in private beta +status: added +author: + fullname: 'Join the #messaging-queuing-beta channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2022-09-08 +category: serverless +product: topics-and-events +--- + +SNS is now available for Messaging in [private beta](https://www.scaleway.com/en/betas/). You can create a namespace, generate credentials and use them to connect to the system. Find out more on the [documentation overview](/topics-and-events/). \ No newline at end of file diff --git a/changelog/serverless/september2022/2022-09-07-mnq-added-sqs.mdx b/changelog/serverless/september2022/2022-09-07-mnq-added-sqs.mdx new file mode 100644 index 0000000000..61aa239541 --- /dev/null +++ b/changelog/serverless/september2022/2022-09-07-mnq-added-sqs.mdx @@ -0,0 +1,12 @@ +--- +title: SQS available in private beta +status: added +author: + fullname: 'Join the #messaging-queuing-beta channel on Slack.' + url: 'https://slack.scaleway.com' +date: 2022-09-08 +category: serverless +product: topics-and-events +--- + +SNS is now available for Messaging in [private beta](https://www.scaleway.com/en/betas/). You can create a namespace, generate credentials and use them to connect to the system. Find out more on the SQS [documentation overview](/queues/). \ No newline at end of file diff --git a/menu/changelogs.json b/menu/changelogs.json index cd11ae9d8a..bb096acdb8 100644 --- a/menu/changelogs.json +++ b/menu/changelogs.json @@ -118,8 +118,16 @@ "label": "Containers" }, { - "category": "messaging-and-queuing", - "label": "Messaging and Queuing" + "category": "nats", + "label": "NATS" + }, + { + "category": "queues", + "label": "Queues" + }, + { + "category": "topics-and-events", + "label": "Topics and Events" }, { "category": "sql-databases", diff --git a/menu/filters.json b/menu/filters.json index fb8e7ca89d..23922a5de6 100644 --- a/menu/filters.json +++ b/menu/filters.json @@ -101,8 +101,16 @@ "label": "SQL databases" }, { - "category": "messaging", - "label": "Messaging and Queuing" + "category": "nats", + "label": "NATS" + }, + { + "category": "queues", + "label": "Queues" + }, + { + "category": "Topics and Events", + "label": "topics-and-events" } ], "category": "serverless", diff --git a/menu/navigation.json b/menu/navigation.json index 5440dec029..099dbf70c2 100644 --- a/menu/navigation.json +++ b/menu/navigation.json @@ -4229,7 +4229,7 @@ "items": [ { "label": "Overview", - "slug": "../messaging" + "slug": "../nats" }, { "label": "Concepts", @@ -4246,36 +4246,24 @@ { "items": [ { - "label": "Get started with NATS, Queues, or Topics and Events", - "slug": "get-started" + "label": "Create a NATS account", + "slug": "create-account" }, { - "label": "Create credentials", + "label": "Create NATS credentials", "slug": "create-credentials" }, { - "label": "Manage credentials", + "label": "Manage NATS credentials", "slug": "manage-credentials" }, { - "label": "Create and manage queues", - "slug": "create-manage-queues" - }, - { - "label": "Create and manage topics", - "slug": "create-manage-topics" - }, - { - "label": "Create and manage subscriptions", - "slug": "create-manage-subscriptions" - }, - { - "label": "Monitor NATS, Queues, and Topics and Events with Cockpit", - "slug": "monitor-mnq-cockpit" + "label": "Monitor NATS with Cockpit", + "slug": "monitor-nats-cockpit" }, { - "label": "Delete a NATS, Queues, or Topics and Events service", - "slug": "deactivate-delete-messaging" + "label": "Delete a NATS account", + "slug": "delete-account" } ], "label": "How to", @@ -4287,30 +4275,6 @@ "label": "NATS API Reference", "slug": "https://www.scaleway.com/en/developers/api/messaging-and-queuing/nats-api/" }, - { - "label": "Queues API Reference", - "slug": "https://www.scaleway.com/en/developers/api/messaging-and-queuing/sqs-api/" - }, - { - "label": "Topics and Events API Reference", - "slug": "https://www.scaleway.com/en/developers/api/messaging-and-queuing/sns-api/" - }, - { - "label": "Connecting Queues or Topics and Events to the AWS-CLI", - "slug": "connect-aws-cli" - }, - { - "label": "Using Queues or Topics and Events with the AWS-CLI", - "slug": "sqs-sns-aws-cli" - }, - { - "label": "Using Go, Python or Node.js with Topics and Events", - "slug": "python-node-sns" - }, - { - "label": "Using Go, Python or Node.js with Queues", - "slug": "python-node-sqs" - }, { "label": "Using the NATS CLI", "slug": "nats-cli" @@ -4321,26 +4285,10 @@ }, { "items": [ - { - "label": "Queues overview", - "slug": "sqs-overview" - }, - { - "label": "Topics and Events overview", - "slug": "sns-overview" - }, { "label": "NATS overview", "slug": "nats-overview" }, - { - "label": "Topics and Events - supported actions", - "slug": "sns-support" - }, - { - "label": "Queues - supported actions", - "slug": "sqs-support" - }, { "label": "Limitations", "slug": "limitations" @@ -4350,14 +4298,14 @@ "slug": "reference-content" } ], - "label": "NATS, Queues, Topics and Events", - "slug": "messaging" + "label": "NATS", + "slug": "nats" }, { "items": [ { "label": "Overview", - "slug": "../serverless-sql-databases" + "slug": "../queues" }, { "label": "Concepts", @@ -4371,6 +4319,178 @@ "label": "FAQ", "slug": "faq" }, + { + "items": [ + { + "label": "Create credentials", + "slug": "create-credentials" + }, + { + "label": "Manage credentials", + "slug": "manage-credentials" + }, + { + "label": "Create and manage queues", + "slug": "create-manage-queues" + }, + { + "label": "Monitor Queues with Cockpit", + "slug": "monitor-queues-cockpit" + } + ], + "label": "How to", + "slug": "how-to" + }, + { + "items": [ + { + "label": "Queues API Reference", + "slug": "https://www.scaleway.com/en/developers/api/messaging-and-queuing/sqs-api/" + }, + { + "label": "Connecting Queues to the AWS-CLI", + "slug": "connect-aws-cli" + }, + { + "label": "Using Queues with the AWS-CLI", + "slug": "queues-aws-cli" + }, + { + "label": "Using Go, Python or Node.js with Queues", + "slug": "python-node-queues" + } + ], + "label": "API/CLI", + "slug": "api-cli" + }, + { + "items": [ + { + "label": "Queues overview", + "slug": "queues-overview" + }, + { + "label": "Queues - supported actions", + "slug": "queues-support" + }, + { + "label": "Limitations", + "slug": "limitations" + } + ], + "label": "Additional Content", + "slug": "reference-content" + } + ], + "label": "Queues", + "slug": "queues" + }, + { + "items": [ + { + "label": "Overview", + "slug": "../topics-and-events" + }, + { + "label": "Concepts", + "slug": "concepts" + }, + { + "label": "Quickstart", + "slug": "quickstart" + }, + { + "label": "FAQ", + "slug": "faq" + }, + { + "items": [ + { + "label": "Create credentials", + "slug": "create-credentials" + }, + { + "label": "Manage credentials", + "slug": "manage-credentials" + }, + { + "label": "Create and manage topics", + "slug": "create-manage-topics" + }, + { + "label": "Create and manage subscriptions", + "slug": "create-manage-subscriptions" + }, + { + "label": "Monitor Topics and Events with Cockpit", + "slug": "monitor-topics-cockpit" + } + ], + "label": "How to", + "slug": "how-to" + }, + { + "items": [ + { + "label": "Topics and Events API Reference", + "slug": "https://www.scaleway.com/en/developers/api/messaging-and-queuing/sns-api/" + }, + { + "label": "Connecting Topics and Events to the AWS-CLI", + "slug": "connect-aws-cli" + }, + { + "label": "Using Topics and Events with the AWS-CLI", + "slug": "topics-events-aws-cli" + }, + { + "label": "Using Go, Python or Node.js with Topics and Events", + "slug": "python-node-topics-events" + } + ], + "label": "API/CLI", + "slug": "api-cli" + }, + { + "items": [ + { + "label": "Topics and Events overview", + "slug": "topics-and-events-overview" + }, + { + "label": "Topics and Events - supported actions", + "slug": "topics-and-events-support" + }, + { + "label": "Limitations", + "slug": "limitations" + } + ], + "label": "Additional Content", + "slug": "reference-content" + } + ], + "label": "Topics and Events", + "slug": "topics-and-events" + }, + { + "items": [ + { + "label": "Overview", + "slug": "../serverless-sql-databases" + }, + { + "label": "Concepts", + "slug": "concepts" + }, + { + "label": "Quickstart", + "slug": "quickstart" + }, + { + "label": "FAQ", + "slug": "faq" + }, { "items": [ { diff --git a/pages/faq/index.mdx b/pages/faq/index.mdx index eff2398f3c..3b5e2dc8e1 100644 --- a/pages/faq/index.mdx +++ b/pages/faq/index.mdx @@ -180,9 +180,9 @@ content: /> + + + + - HTTP subscriptions must be [confirmed](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription) after creation | -| HTTPS | The URL of a service or web server that can receive notifications (HTTPS POST requests) from Topics and Events, e.g. `https://example.fr` | - HTTPS subscriptions must be [confirmed](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription) after creation | -| Serverless Functions and Containers | A Scaleway Serverless [Function](/serverless-functions/quickstart/) or [Container](/serverless-containers/quickstart/)
| - It must have a [public](/serverless-functions/concepts/#privacy-policy) privacy policy
- It must be in a [namespace](/serverless-functions/concepts/#namespace) from the same [Project](/organizations-and-projects/concepts/#project) and [region](#region) as the topic | -| Queues | A Scaleway [queue](#queue)
| - It must be in the same [Project](/organizations-and-projects/concepts/#project) and [region](#region) as the topic | - -## Topic - -A topic is a communication channel used to send messages and notifications to subscribed endpoints or clients. Publishers send messages to topics, and those messages are received by subscribers. Subscribers can include Serverless Functions, Scaleway queues and HTTP/HTTPS endpoints. As such, topics decouple the publishing and the receiving of messages, allowing for flexibility and scalabilty in building loosely-coupled systems. - -## Topic types - -When creating topics with Scaleway Topics and Events, two topic types are available. [Standard](#standard) topics provide at-least-once delivery, while [FIFO](#fifo) topics offer first-in-first-out delivery, and (unlike Standard topics) guarantee that messages are delivered in order and without duplication. [Content-based deduplication](#content-based-deduplication) is only available for FIFO topic types. Find out more about creating topics with our [dedicated documentation](/messaging/how-to/create-manage-topics/). - -## Topic-based - -Topic-based messaging systems are a subset of the [publish/subscribe](#publishsubscribe) model, and contrast with [content-based](#content-based) systems. In a topic-based system, messages are published to "topics" or named logical channels. See [topic](#topic) for more information. - -## Topic volume - -Topic volume is one of the factors affecting the billing of Scaleway Topics and Events. Topic volume is calculated as the total sum of the sizes of all messages sent from a topic to its subscriptions. - -## Topics and Events - -Scaleway Topics and Events is a product for creating managed messaging topics based on the [SNS](#sns) protocol. Previously, it was part of the Messaging and Queuing product. - -## Visibility timeout - -Visibility timeout is a setting that can be configured for a Scaleway queue. It represents the length of time (in seconds) during which, after a message is received, the queue hides it, so it cannot be received again by the same or other consumers. This is useful as the queue itself does not automatically delete messages once they are received, and so prevents consumers from receiving the same message many times before they have finished processing it. Read more in our dedicated documentation on [creating queues](/messaging/how-to/create-manage-queues/). diff --git a/pages/messaging/faq.mdx b/pages/messaging/faq.mdx deleted file mode 100644 index 9d0fe5fad9..0000000000 --- a/pages/messaging/faq.mdx +++ /dev/null @@ -1,46 +0,0 @@ ---- -meta: - title: NATS, Queues, and Topics and Events FAQ - description: Discover Scaleway NATS, Queues, and Topics and Events, and get answers to common questions about the different protocols available, compatibility with various services, and billing. -content: - h1: Messaging and Queuing FAQ -dates: - validation: 2024-12-04 -category: serverless -productIcon: NatsProductIcon ---- - -## What is NATS, Queues, and Topics and Events? - -These are three distinct managed message broker tools offered by Scaleway, based on the NATS, SQS and SNS protocols respectively. Previously, these products were grouped together as 'Messaging and Queuing', but have now become three separate products in their own right. - -## What are NATS, SNS, and SQS? - -NATS, SNS, and SQS are all messaging protocols used by the Scaleway NATS, Queues, and Topics and Events products. You can find out more about these protocols, and other essential concepts, on our dedicated [concepts page](/messaging/concepts/). - -## Is the Scaleway Queues gateway compatible with my application, framework or tool? - -We currently implement the API endpoints listed [here](/messaging/reference-content/sqs-support/), which makes Scaleway Queues compatible with the AWS SDK as well as many other tools and frameworks including KEDA and Symfony. Note that you need to specify both regions and URL to ensure compatibility. - -## Does Scaleway Topics and Events support all SNS features? - -The following subscriber types are supported: -- HTTP/S clients -- Serverless Functions and Containers -- Scaleway Queues queues - -For more details on supported and unsupported Topics and Events features, see our [dedicated page](/messaging/reference-content/sns-support/). - -## Can I configure Scaleway NATS via Terraform/OpenTofu? - -Yes, check out our [tutorial](https://registry.terraform.io/providers/scaleway/scaleway/latest/docs/guides/mnq_with_nats_terraform_provider) on how to configure Scaleway NATS with the Terraform/OpenTofu [NATS Jetstream provider](https://registry.terraform.io/providers/nats-io/jetstream/latest/docs). - -## How are NATS, Queues, and Topics and Events billed? - -Billing is based on: - -- For NATS: [Stream volume](/messaging/concepts/#stream-volume) (the total sum of each message's size going through the stream) and [stream persistence](/messaging/concepts/#stream-persistence) (the total amount of data stored * duration) -- For Queues: [Queue volume](/messaging/concepts/#queue-volume) (the total sum of each message's size going through the queue) -- For Topics and Events : [Topic Volume](/messaging/concepts/#queue-volume)(the total sum of each message's size going out from the topic to the subscriptions) - -For full pricing details, see our [dedicated pricing page](https://www.scaleway.com/en/pricing/). \ No newline at end of file diff --git a/pages/messaging/how-to/assets/scaleway-nats-create-account.webp b/pages/messaging/how-to/assets/scaleway-nats-create-account.webp deleted file mode 100644 index 12653712c9..0000000000 Binary files a/pages/messaging/how-to/assets/scaleway-nats-create-account.webp and /dev/null differ diff --git a/pages/messaging/how-to/assets/scaleway-nats-creds.webp b/pages/messaging/how-to/assets/scaleway-nats-creds.webp deleted file mode 100644 index eea32747f4..0000000000 Binary files a/pages/messaging/how-to/assets/scaleway-nats-creds.webp and /dev/null differ diff --git a/pages/messaging/how-to/assets/scaleway-nats-overview.webp b/pages/messaging/how-to/assets/scaleway-nats-overview.webp deleted file mode 100644 index c2240019b0..0000000000 Binary files a/pages/messaging/how-to/assets/scaleway-nats-overview.webp and /dev/null differ diff --git a/pages/messaging/how-to/assets/scaleway-queues-create-queue.webp b/pages/messaging/how-to/assets/scaleway-queues-create-queue.webp deleted file mode 100644 index e53fbcfa94..0000000000 Binary files a/pages/messaging/how-to/assets/scaleway-queues-create-queue.webp and /dev/null differ diff --git a/pages/messaging/how-to/assets/scaleway-queues-gen-creds.webp b/pages/messaging/how-to/assets/scaleway-queues-gen-creds.webp deleted file mode 100644 index dc53bbb7de..0000000000 Binary files a/pages/messaging/how-to/assets/scaleway-queues-gen-creds.webp and /dev/null differ diff --git a/pages/messaging/how-to/assets/scaleway-queues-queue-settings.webp b/pages/messaging/how-to/assets/scaleway-queues-queue-settings.webp deleted file mode 100644 index 15810df350..0000000000 Binary files a/pages/messaging/how-to/assets/scaleway-queues-queue-settings.webp and /dev/null differ diff --git a/pages/messaging/how-to/assets/scaleway-queues-update-creds.webp b/pages/messaging/how-to/assets/scaleway-queues-update-creds.webp deleted file mode 100644 index 6f32ca5499..0000000000 Binary files a/pages/messaging/how-to/assets/scaleway-queues-update-creds.webp and /dev/null differ diff --git a/pages/messaging/how-to/create-credentials.mdx b/pages/messaging/how-to/create-credentials.mdx deleted file mode 100644 index 16ee57b0c8..0000000000 --- a/pages/messaging/how-to/create-credentials.mdx +++ /dev/null @@ -1,116 +0,0 @@ ---- -meta: - title: How to create credentials for NATS, Queues, or Topics and Events - description: Learn how to create credentials for Scaleway NATS, Queues, or Topics and Events (Messaging and Queuing). Securely manage access and ensure seamless integration with this step-by-step guide. -content: - h1: How to create credentials for NATS, Queues, or Topics and Events - paragraph: Learn how to create credentials for Scaleway NATS, Queues, or Topics and Events (Messaging and Queuing). Securely manage access and ensure seamless integration with this step-by-step guide. -tags: credentials messaging queuing key token -categories: - - serverless -dates: - validation: 2024-10-18 - posted: 2022-08-11 ---- - -This page shows how to create [credentials](/messaging/concepts/#credentials) for Scaleway **NATS**, **Queues** and **Topics and Events** (previously grouped together as the **Messaging and Queuing** product). Credentials give their bearer (e.g. services and platforms) access to your service. - -You can create multiple sets of credentials for each of your NATS accounts, and for your Queues and Topics and Events services. - - - -- A Scaleway account logged into the [console](https://console.scaleway.com) -- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization - -## How to create credentials for a NATS account - -Credentials for NATS accounts are not granular: they necessarily give full read and write access. The bearer of these credentials can publish and receive messages, as well as manage topics and streams, for this account. - -1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. - -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) of the NATS account for which you want to create credentials. The list of your NATS accounts in the pre-selected region displays. - -3. Click the NATS account you want to generate credentials for. The account's **Overview** page displays. - - - -4. In the **Credentials** panel, click **Generate credentials**. A pop-up displays. - -5. Enter a name for these credentials, and click **Generate credentials**. - - The credentials are created and a button displays prompting you to download them in a `.creds` file. - - - - - The generated credentials are displayed only once. Make sure to download and safely store them before closing the window. - - -7. Click **Download** and save the file, before closing the window. - - You are returned to your NATs account's overview page. The name of your newly-generated credentials and their access level is displayed in the **Credentials** panel. - -## How to create credentials for Queues - -Credentials for Queues are granular: you can define the level of access that they should give. Credentials give the specified level of access to all queues that you create in the region they are scoped to. - -1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. A list of your queues displays. - -2. Click the **Credentials** tab. - -3. Click **Generate credentials**. A pop-up displays: - - - -4. Choose a region that these credentials should be scoped to. - -5. Enter a name for these credentials. - -6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. - -7. Click **Generate credentials**. - - The credentials are created. The access key and secret key are displayed, and you are invited to copy them. - - - This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. - - -8. Copy and save the credentials, before closing the window. - - You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. - -## How to create credentials for Topics and Events - -Credentials for Topics and Events are granular: you can define the level of access that they should give. Credentials give the specified level of access to all topics that you create in the region they are scoped to. - -1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. The **Topics and Events** dashboard displays. - -2. Click the **Credentials** tab. - -3. Click **Generate credentials**. A pop-up displays: - - - -4. Choose a region that these credentials should be scoped to. - -5. Enter a name for these credentials. - -6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. - -7. Click **Generate credentials**. - - The credentials are created. The access key and secret key are displayed, and you are invited to copy them. - - - This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. - - -8. Copy and save the credentials, before closing the window. - - You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. - - - - - diff --git a/pages/messaging/how-to/deactivate-delete-messaging.mdx b/pages/messaging/how-to/deactivate-delete-messaging.mdx deleted file mode 100644 index f8ef3f4fbe..0000000000 --- a/pages/messaging/how-to/deactivate-delete-messaging.mdx +++ /dev/null @@ -1,45 +0,0 @@ ---- -meta: - title: How to delete a NATS, Queues, or Topics and Events service - description: Delete Scaleway NATS, Queues, or Topics and Events effectively. Safely remove resources with this straightforward guide. -content: - h1: How to delete a NATS, Queues, or Topics and Events service - paragraph: Delete Scaleway NATS, Queues, or Topics and Events services effectively. Safely remove resources with this straightforward guide. -dates: - validation: 2024-10-17 - posted: 2023-10-03 -tags: delete messaging queuing queueing messaging-and-queuing service disable deactivate nats-account stop -categories: - - serverless ---- - -This page shows how to delete a Scaleway **NATS**, account. - -Note that it is no longer necessary to deactivate services for **Queues** or **Topics and Events**: simply delete the queues, topics, subscriptions or other associated resources for the product directly. - - - -- A Scaleway account logged into the [console](https://console.scaleway.com) -- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- At least one [NATS account](/messaging/how-to/get-started/), [queue](/messaging/how-to/create-manage-queues/), or [topic](/messaging/how-to/create-manage-topics/) - -## How to delete a NATS account - -1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. - -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) containing the NATS account you want to delete. - -3. Click the NATS account you want to delete. - -4. In the bottom panel, click the **Delete NATS account** button. - - A pop-up displays, reminding you that the action is irreversible, and any associated queued messages and credentials will be deleted. - -5. Type `DELETE` and click **Delete NATS account** to confirm. - - -Repeat the process above for each NATS account you want to delete. Remember to use the region drop-down as appropriate to access the different NATS accounts you hold in different regions. - - - - diff --git a/pages/messaging/how-to/index.mdx b/pages/messaging/how-to/index.mdx deleted file mode 100644 index e54fd91319..0000000000 --- a/pages/messaging/how-to/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -meta: - title: NATS, Queues, and Topics and Events - How Tos - description: NATS, Queues, and Topics and Events How Tos -content: - h1: NATS, Queues, and Topics and Events - How Tos - paragraph: NATS, Queues, and Topics and Events How Tos ---- diff --git a/pages/messaging/how-to/manage-credentials.mdx b/pages/messaging/how-to/manage-credentials.mdx deleted file mode 100644 index 4ea9a79652..0000000000 --- a/pages/messaging/how-to/manage-credentials.mdx +++ /dev/null @@ -1,76 +0,0 @@ ---- -meta: - title: How to manage credentials for NATS, Queues, or Topics and Events - description: Master managing credentials for Scaleway NATS, Queues, or Topics and Events (Messaging and Queuing)! Follow this guide to securely update, rotate, and control access to your messaging services. -content: - h1: How to manage credentials for NATS, Queues, or Topics and Events - paragraph: Master managing credentials for Scaleway NATS, Queues, or Topics and Events (Messaging and Queuing)! Follow this guide to securely update, rotate, and control access to your messaging services. -dates: - validation: 2024-10-17 - posted: 2022-08-11 -tags: manage credentials messaging queuing permissions update revoke -categories: - - serverless ---- - -Credentials give their bearer (e.g. services and platforms) access to your service. - -This page shows how to manage [credentials](/messaging/concepts/#credentials) for Scaleway **NATS**, **Queues** and **Topics and Events** (previously grouped together as the **Messaging and Queuing** product). - -Credentials for **Queues** and **Topics and Events** can be updated to change their permissions, or revoked. **NATS** credentials can only be revoked, not updated. Once credentials are revoked, any user trying to use the credentials to connect to the service will be denied. - - - -- A Scaleway account logged into the [console](https://console.scaleway.com) -- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- Valid [credentials](/messaging/how-to/create-credentials/) - -## How to update Queues or Topics and Events credentials - -1. Click **Queues** or **Topics and Events** in the **Serverless** section of the Scaleway console side menu, depending on which type of credentials you want to update. - -2. Click the **Credentials** tab. - -3. Use the drop-down menu to select the [region](/messaging/concepts/#region) containing the credentials you want to update. - -4. Click the button next to the credentials you want to update, and select **Update credentials**. A pop-up displays, such as the one below for Queues: - - - -5. Make the required updates to your credentials. You can modify the name, and the permissions. - -6. Click **Update credentials**. - - The credentials are updated and you are returned to the product's **Credentials** listing. - -## How to revoke Queues or Topics and Events credentials - -1. Click **Queues** or **Topics and Events** in the **Serverless** section of the Scaleway console side menu, depending on which type of credentials you want to revoke. - -2. Click the **Credentials** tab. - -3. Use the drop-down menu to select the [region](/messaging/concepts/#region) containing the credentials you want to revoke. - -4. Click the button next to the credentials you want to revoke and select **Revoke**. - - A pop-up displays, warning you that this action is irreversible and the key will no longer be able to access your service. - -5. Click **Revoke credentials**. - - The credentials are revoked and you are returned to the product's **Credentials** listing. - -## How to revoke NATS credentials - -1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. - -2. Select the NATS account you want to revoke credentials for. - -3. In the **Credentials** panel, click the button next to the credentials you want to revoke. - - A pop-up displays, warning you that this action is irreversible and the key will no longer be able to access your service. - -5. Click **Revoke credentials**. - - The credentials are revoked and you are returned to the NATS account's **Overview** page. - - diff --git a/pages/messaging/how-to/monitor-mnq-cockpit.mdx b/pages/messaging/how-to/monitor-mnq-cockpit.mdx deleted file mode 100644 index c957711a74..0000000000 --- a/pages/messaging/how-to/monitor-mnq-cockpit.mdx +++ /dev/null @@ -1,49 +0,0 @@ ---- -meta: - title: How to monitor NATS, Queues, and Topics and Events with Scaleway Cockpit - description: Monitor your NATS, Queues, and Topics and Events services with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. -content: - h1: How to monitor NATS, Queues, and Topics and Events with Scaleway Cockpit - paragraph: Monitor your NATS, Queues, and Topics and Events services with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. -tags: messaging queuing queueing cockpit metrics observability -categories: - - serverless -dates: - validation: 2024-10-17 - posted: 2023-09-07 ---- - -You can view metrics for your NATS, Queues, and Topics and Events services via [Scaleway Cockpit](/cockpit/quickstart/). This allows you to monitor your queues/streams and messages at a glance. There are two steps to complete to view your metrics for the first time with Cockpit: - -1. Generate your Grafana credentials -2. Access the product's metrics dashboard - -These steps are described below. - - - -- A Scaleway account logged into the [console](https://console.scaleway.com) -- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- At least one [NATS account](/messaging/how-to/get-started/), [queue](/messaging/how-to/create-manage-queues/), or [topic](/messaging/how-to/create-manage-topics/) - -## How to activate your Cockpit - -Scaleway Cockpit is activated by default if you have created [Scaleway resources integrated with Cockpit](/cockpit/reference-content/cockpit-limitations/#product-integration-into-cockpit). - -## How to generate Grafana credentials - -To view your metrics with Cockpit, you will use a Grafana dashboard which is accessible from the Scaleway console. First, you must create a user and their associated credentials (a username and password) for Grafana. This can be done directly from the Scaleway console, [by following this procedure](/cockpit/how-to/retrieve-grafana-credentials/). - -## How to access your NATS, Queues, or Topics and Events dashboard and view your metrics - -1. Click **NATS**, **Queues** or **Topics and Events** in the **Serverless** section of the Scaleway console side menu. - -2. Click the **protocol** you want to view metrics for, and navigate to the **Metrics** tab. - -3. Click **Open Grafana metrics dashboard**. - -4. Enter your Grafana username and password to log in. - - You are directed to the dashboard for the product in question, where you can view all your metrics. - - diff --git a/pages/messaging/index.mdx b/pages/messaging/index.mdx deleted file mode 100644 index 89f6a6c8a3..0000000000 --- a/pages/messaging/index.mdx +++ /dev/null @@ -1,83 +0,0 @@ ---- -meta: - title: NATS, Queues, and Topics and Events Documentation - description: Explore Scaleway NATS, Queues, and Topics and Events. Simplify your microservice workflows with scalable, reliable, and cost-effective message handling solutions. ---- - - - -## Getting Started - - - - - - - - - -## Tutorials - - - - - - - - - - -## Changelog - - \ No newline at end of file diff --git a/pages/messaging/quickstart.mdx b/pages/messaging/quickstart.mdx deleted file mode 100644 index 441abf33e0..0000000000 --- a/pages/messaging/quickstart.mdx +++ /dev/null @@ -1,298 +0,0 @@ ---- -meta: - title: NATS, Queues, and Topics and Events - Quickstart - description: Get started with Scaleway's serverless NATS, Queues, and Topics and Events services. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. -content: - h1: NATS, Queues, and Topics and Events - Quickstart - paragraph: Get started with Scaleway's serverless NATS, Queues, and Topics and Events services. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. -dates: - validation: 2024-10-18 - posted: 2022-08-29 -tags: messaging queuing queueing quickstart messaging-and-queuing nats sqs sls message-broker queues topics messages streams -categories: - - serverless ---- - -Scaleway NATS, Queues, and Topics and Events are [message broker](/messaging/concepts/#messaging-and-queuing) tools that allows you to transfer messages between different microservices and platforms. This enables them to "talk" to each other effectively even if they are not otherwise compatible. These brokers enable and simplify microservices application development and allows you to build highly scalable, reliable, distributed applications. - -NATS, Queues, and Topics and Events were previously grouped together as the Messaging and Queuing product, and have now become three separate products in their own right. Read on to learn how to get started with your product of choice - - - -- A Scaleway account logged into the [console](https://console.scaleway.com) -- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization - -## Quickstart for NATS - -### How to create a NATS account - -To start using a NATS message broker, you must first create a NATS account. This sets a scope for your NATS credentials, messages, queues and stream. - -1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. - -2. Click **Create a NATS account**. The creation wizard displays. - - - -3. Complete the following steps in the wizard: - - - Choose a **region**, which is the geographical location in which your NATS account will be created. - - Enter a **name** for your NATS account, or use the auto-generated name suggested for you. - - Optional: Use the *Estimated cost** calculator to simulate how messages sent and stored with NATS streams will be billed. Note that simply creating a NATS account does not in itself incur any billing. For more information about NATS billing, see the [FAQ](/messaging/faq/#how-are-nats-queues-and-topics-and-events-billed). - - Click **Create NATS account** to finish. - - You are directed to the listing of your NATS accounts, where your newly-created NATS account now appears. - -### How to create NATS credentials - -Credentials for NATS accounts are not granular: they necessarily give full read and write access. The bearer of these credentials can publish and receive messages, as well as manage topics and streams, for this account. - -1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. - -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) of the NATS account for which you want to create credentials. The list of your NATS accounts in the pre-selected region displays. - -3. Click the NATS account you want to generate credentials for. The account's **Overview** page displays. - - - -4. In the **Credentials** panel, click **Generate credentials**. A pop-up displays. - -6. Enter a name for these credentials, and click **Generate credentials**. - - The credentials are created and a button displays prompting you to download them in a `.creds` file. - - - - - The generated credentials are displayed only once. Make sure to download and safely store them before closing the window. - - -7. Click **Download** and save the file, before closing the window. - - You are returned to your NATs account's overview page. The name of your newly-generated credentials and their access level is displayed in the **Credentials** panel. - -### How to create and manage queues, messages and streams - -All further actions related to publishing, processing and managing messages, subjects, queues and streams can be done via a supported CLI or SDK. See our documentation on [NATS CLI and SDKs](/messaging/reference-content/nats-overview/#further-actions-nats-cli-and-nats-sdk) for more information. You can also check out our tutorial on [creating a serverless architecture for handling large messages](/tutorials/large-messages/) with Scaleway Messaging and Queuing NATS. - -### How to delete a NATS account - -1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. - -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) containing the NATS account you want to delete. - -3. Click the NATS account you want to delete. - -4. In the bottom panel, click the **Delete NATS account** button. - - A pop-up displays, reminding you that the action is irreversible, and any associated queued messages and credentials will be deleted. - -5. Type `DELETE` and click **Delete NATS account** to confirm. - - -## Quickstart for Queues - -### How to create credentials for Queues - -Credentials for Queues are granular: you can define the level of access that they should give. Credentials give the specified level of access to all queues that you create in the region they are scoped to. - -1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. A list of your queues displays. - -2. Click the **Credentials** tab. - -3. Click **Generate credentials**. A pop-up displays: - - - -4. Choose a region that these credentials should be scoped to. - -5. Enter a name for these credentials. - -6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. - -7. Click **Generate credentials**. - - The credentials are created. The access key and secret key are displayed, and you are invited to copy them. - - - This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. - - -8. Copy and save the credentials, before closing the window. - - You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. - -### How to create queues - -1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. - -2. Click **Create queue**. The queue creation wizard displays. - - - -3. Select the [region](/messaging/concepts/#region) in which you want to create the queue. - -4. Enter a **name** for your queue. The name must be no more than 80 characters, and consist only of alphanumeric characters, hyphens, and underscores. Alternatively, you can go with the auto-generated name suggested for you. - -5. Choose your **Queue type**, from one of the following: - - **Standard**: Standard Queues ensure at-least-once delivery. The exact order of messages in the queue is not preserved. - - **FIFO**: FIFO Queues (**F**irst **In** **F**irst **O**ut) preserves the exact ordering of messages. - -6. Configure your queue's **parameters**. The following parameters can be defined: - - **Visibility timeout**: The length of time (in seconds) during which, after a message is received, it is hidden and cannot be received again by the same or other consumers. This is useful as the queue itself does not automatically delete messages once they are received, and so prevents consumers from receiving the same message many times before they have finished processing it. Therefore, the value set here should be informed by the expected length of time it will take consumers to process messages. The default value is 30 seconds. The value must be between 1 second and 43 200 seconds (12 hours). - - **Message retention period**: The length of time (in seconds) that messages are kept in the queue before being deleted. Setting a longer message retention period allows for a longer interval between a message being sent and it being received. The default value is 60 seconds. The value must be between 60 seconds and 1 209 600 seconds (14 days). - - **Maximum message size**: The maximum size (in kilobytes) of a message that can be sent to the queue. Messages greater than the defined size will be rejected. The default value is 256 KB. The value must be between 1 KB and 256 KB. - - **Content Based Deduplication**: This setting is only available for FIFO queues. Enable content-based deduplication if the message body is guaranteed to be unique for each message. A unique hash value is generated from the body of each message, which is used as its deduplication ID. This avoids the need to set a deduplication ID when sending messages. - - **Dead-letter queue**: Designate another queue to receive undelivered messages from this queue. If you select this option, you are prompted to select an existing queue as dead-letter queue. This queue must be of the same type, in the same Project and in the same region as the queue you are creating. You must also enter a value for the **maximum receive count** (how many times a message can be received from the source queue before being moved to the dead-letter queue). - -7. Click **Create queue** to finish. - -You are returned to the **Queues** tab, where your newly-created queue now displays. The queue's URL is also displayed here, for use in your API/CLI operations. - -### How to send and receive messages - -All further actions related to sending messages to queues can be done via a supported CLI or SDK. See our documentation on the [SQS CLI and SDKs](/messaging/reference-content/sqs-overview#further-actions) for more information. You can also check out [our tutorial](/tutorials/create-serverless-scraping/) on creating a serverless scraping architecture with Scaleway Queues. - -### How to delete a queue - -When you no longer want a queue, you can delete it. This action is irreversible and deletes the queue along with any queued messages. - -1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. - -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) of the queue you want to configure. - -3. Either: - - Click the queue you wish to delete. The queue's **Settings** page displays. Click the **Delete queue** button in the bottom right corner. - - Click the icon next to the queue you wish to delete, then select **Delete** from the menu that displays. - - A pop-up asks you to confirm that you understand this action will delete the queue and all your queued messages. - -4. Type **DELETE** and click **Delete queue**. - -## Quickstart for Topics and Events - -### How to create Topics and Events credentials - -Credentials for Topics and Events are granular: you can define the level of access that they should give. Credentials give the specified level of access to all topics that you create in the region they are scoped to. - -1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. The **Topics and Events** dashboard displays. - -2. Click the **Credentials** tab. - -3. Click **Generate credentials**. A pop-up displays: - - - -4. Choose a region that these credentials should be scoped to. - -5. Enter a name for these credentials. - -6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. - -7. Click **Generate credentials**. - - The credentials are created. The access key and secret key are displayed, and you are invited to copy them. - - - This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. - - -8. Copy and save the credentials, before closing the window. - - You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. - -### How to create topics - -1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. - -2. Click **Create topic**. The topic creation wizard displays. - - - -3. Choose a region in which to create your topic. - -4. Enter a **name** for your topic. The name must contain no more than 80 characters, and consist only of alphanumeric characters, hyphens, and underscores. Alternatively, you can go with the auto-generated name suggested for you. - -5. Choose a **topic type**. The following topic types are available: - - **Standard**: Ensures at-least-once message delivery, where the order of messages is not preserved. Supports Serverless Functions, Serverless Containers and HTTP/S subscriptions. - - **FIFO**: Provides first-in-first-out delivery, where the order of messages is preserved without duplication. Supports Scaleway Queues subscriptions. [Content-based deduplication](/messaging/concepts/#content-based-deduplication) is only available for FIFO topics. - -6. Click **Create topic** to finish. - -You are returned to the **Topics** tab, where your newly-created topic now displays. The topic's URL is also displayed here, for use in your API/CLI operations. - -### How to create a subscription - -1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. - -2. Use the dropdown menu to select the [region](/messaging/concepts/#region) of the topic you want to create a subscription for. - -3. Click the name of the topic you want to create a subscription for. - -4. Click **Create Subscription**. The subscription creation wizard displays. - - -5. Verify the parameters of the topic that you are creating a subscription for (name and type). - -6. Choose a protocol, based on the type of endpoint or client you want to subscribe. Click the tab below for further details and full instructions on each protocol: - - - -
- Select **HTTP** to create a subscription for a service or web server that can receive `HTTP POST` requests from Topics and Events, via standard HTTP protocol. - - Note that for security reasons, we recommend using the HTTPS protocol, rather than HTTP. - - You are prompted to enter the URL of the HTTP endpoint to subscribe, e.g. `example.com`. Note that the scheme (`http://`) is not required. - - After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). - -
- -
- Select **HTTPS** to create a subscription for a service or web server that can receive `HTTP POST` requests from Topics and Events, via secure HTTP protocol. - - You are prompted to enter the URL of the HTTP endpoint to subscribe, e.g. `example.com`. Note that the scheme (`https://`) is not required. - - After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). -
- -
- Choose **Serverless Functions and Containers** to create a subscription for a Scaleway Serverless Function or Container that you have created. - - You are prompted to select the **namespace** containing the Function or Container that you want to subscribe. Only namespaces in the same [Project](/organizations-and-projects/concepts/#project) and [region](/messaging/concepts/#region) as the topic can be selected. - - You are prompted to select the Serverless Function or Container to subscribe. Only Functions and Containers with a public [privacy policy](/serverless-functions/concepts/#privacy-policy) can subscribe to a topic. -
- -
- - Choose **Queues** to create a subscription for a Scaleway queue that you have created. - - You are prompted to select the **queue** to subscribe. Only queues in the same [Project](/organizations-and-projects/concepts/#project) and [region](/messaging/concepts/#region) as the topic can be selected. -
-
- -7. Click **Create subscription** to finish. - - The subscription is created. If you created an HTTP or HTTPS subscription, you will now need to [confirm it](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). - -### How to publish messages - -All further actions related to publishing messages to topics can be done via a supported CLI or SDK. See our documentation on the [SNS CLI and SDKs](/messaging/reference-content/sns-overview#further-actions)for more information. - -### How to delete a topic - -When you no longer want a topic, you can delete it. This action is irreversible and deletes the topic along with all its associated subscriptions. - -1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. - -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) containing the topic you want to delete. - -3. Either: - - Click the topic you wish to delete, and navigate to its **Settings** page. Click the **Delete topic** button in the bottom right corner, or - - Click the icon next to the topic you wish to delete, then select **Delete** from the menu that displays. - - A pop-up asks you to confirm that you understand this action will delete the topic and all of its associated subscriptions. - -4. Type **DELETE** and click **Delete topic**. diff --git a/pages/messaging/reference-content/index.mdx b/pages/messaging/reference-content/index.mdx deleted file mode 100644 index b74fe93663..0000000000 --- a/pages/messaging/reference-content/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -meta: - title: NATS, Queues, and Topics and Events - Additional content - description: NATS, Queues, and Topics and Events additional content -content: - h1: NATS, Queues, and Topics and Events - Additional content - paragraph: NATS, Queues, and Topics and Events additional content ---- diff --git a/pages/messaging/reference-content/limitations.mdx b/pages/messaging/reference-content/limitations.mdx deleted file mode 100644 index ed7ab269ea..0000000000 --- a/pages/messaging/reference-content/limitations.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -meta: - title: NATS, Queues, and Topics and Events Limitations - description: Learn about the current limitations of Scaleway NATS, Queues, and Topics and Events -content: - h1: Limitations - paragraph: Learn about the current limitations of Scaleway NATS, Queues, and Topics and Events -tags: messaging limitations space size storage payload max-streams max-consumers max-subscribers max-topics max-queues visibility-timeout -dates: - validation: 2024-10-18 - posted: 2023-01-04 -validation_frequency: 8 -categories: - - serverless ---- - -## Usage limits - -For the usage limits that apply when using Scaleway NATS, Queues, and Topics and Events, see the dedicated sections on our [Organization quotas](/organizations-and-projects/additional-content/organization-quotas/) page. Limits (quotas) apply to, for example, the maximum number of queues, streams, topics and consumers/subscribers, as well as to message retention duration and storage. - -## VPC - -NATS, Queues, and Topics and Events are not currently compatible with [Scaleway VPC](/vpc/quickstart/). diff --git a/pages/messaging/reference-content/sqs-overview.mdx b/pages/messaging/reference-content/sqs-overview.mdx deleted file mode 100644 index ea66b88507..0000000000 --- a/pages/messaging/reference-content/sqs-overview.mdx +++ /dev/null @@ -1,57 +0,0 @@ ---- -meta: - title: Scaleway Queues Overview - description: Learn about the Scaleway Queues messaging system -content: - h1: Scaleway Queues Overview - paragraph: Learn about the Scaleway Queues messaging system -tags: messaging sqs aws queuing publish-subscribe message-queue -categories: - - serverless -dates: - validation: 2024-10-18 - posted: 2023-01-04 ---- - -## What is Scaleway Queues? - -Scaleway Queues is a managed message queuing service that enables decoupling of components within distributed applications. It allows applications to send, queue, store and receive messages between each other asynchronously. Scaleway Queues leverages the SQS protocol. - -## What is SQS? - -SQS is a managed messaging service developed by AWS and leveraged by Scaleway Queues. - -SQS (Simple Queue Service) became generally available in 2006. It is a highly scalable [queuing](/messaging/concepts#queuing) service that facilitates the decoupling of software systems. Scaleway Queues provides a gateway that enables you to connect your existing applications without having to significantly modify your code baseline. - - - Some SQS features are not yet supported. Refer to our [dedicated documentation page](/messaging/reference-content/sqs-support/) for more information. - - -## Scaleway Queues credentials - -You must [create credentials](/messaging/how-to/create-credentials/) to give your applications permission to connect to the Scaleway Queues service. - -Credentials are scoped to your Scaleway Queues service at [Project](/organizations-and-projects/concepts/#project)-level. You can choose to give each set of credentials the required level of permissions: - - - **Read**: receive messages from queues and topics. - - **Write**: send messages to queues and publish in topics. - - **Manage**: create or edit resources (such as queues and topics). - -## Queues - -You can [create queues](/messaging/how-to/create-manage-queues/) via the Scaleway console. You can choose to create either a Standard or FIFO queue, and tweak parameters such as visibility timeout, message retention period, maximum message size and content based deduplication. - -## Further actions - -All further actions such as sending messages can be done using the AWS CLI or AWS SDKs. Check out our documentation to help you get started with the [AWS CLI](/messaging/api-cli/connect-aws-cli/) or [AWS SDKs](/messaging/api-cli/python-node-sqs/). - -## Queue resources - -The following resources may be helpful: - - - [How to create a serverless scraping architecture, with Scaleway Queues, Serverless Functions and Managed Database](/tutorials/create-serverless-scraping/) - - [Official SQS Documentation](https://docs.aws.amazon.com/sqs/index.html) - - Further information on supported API features: - - [SQS](/messaging/reference-content/sqs-support/) - - [Official AWS CLI Documentation](https://aws.amazon.com/cli/) - - [Official AWS SDK Documentation](https://aws.amazon.com/developer/tools/) \ No newline at end of file diff --git a/pages/nats/api-cli/index.mdx b/pages/nats/api-cli/index.mdx new file mode 100644 index 0000000000..cf24e2b0b3 --- /dev/null +++ b/pages/nats/api-cli/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: NATS - API/CLI Documentation + description: NATS API/CLI Documentation +content: + h1: NATS - API/CLI Documentation + paragraph: NATS API/CLI Documentation +--- diff --git a/pages/messaging/api-cli/nats-cli.mdx b/pages/nats/api-cli/nats-cli.mdx similarity index 88% rename from pages/messaging/api-cli/nats-cli.mdx rename to pages/nats/api-cli/nats-cli.mdx index e3f00adb9d..d2cf15cf85 100644 --- a/pages/messaging/api-cli/nats-cli.mdx +++ b/pages/nats/api-cli/nats-cli.mdx @@ -7,7 +7,8 @@ content: paragraph: This page explains how to use the NATS CLI with Scaleway NATS tags: messaging nats cli categories: - - messaging + - serverless + - nats dates: validation: 2024-10-18 posted: 2023-01-20 @@ -27,22 +28,22 @@ This page shows you how to get started with some basic actions via the NATS CLI. - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- A Scaleway [NATS account](/messaging/how-to/get-started/#how-to-create-a-nats-account) -- NATS [credentials](/messaging/how-to/create-credentials/) downloaded to your machine +- A Scaleway [NATS account](/nats/how-to/create-account) +- NATS [credentials](/nats/how-to/create-credentials/) downloaded to your machine ## Installing the NATS CLI -Follow instructions from the [official NATS documentation](https://docs.nats.io/using-nats/nats-tools/nats_cli#installing-nats). The installation process may differ depending on your OS. +Follow instructions from the [official NATS documentation](https://docs.nats.io/using-nats/nats-tools/nats_cli#installing-nats). The installation process may differ depending on your operating system. ## Define a context -To simplify your interactions with NATS hosted on Scaleway, we recommend that you use [contexts](https://docs.nats.io/using-nats/nats-tools/nats_cli#nats-contexts). A context is a named configuration that stores the settings (such as credentials, URLs and certificates) required to connect to NATS. By creating a context, you won't need to specify your server and credentials with each new request. +To simplify your interactions with NATS hosted on Scaleway, we recommend that you use [contexts](https://docs.nats.io/using-nats/nats-tools/nats_cli#nats-contexts). A context is a named configuration that stores the settings (such as credentials, URLs and certificates) required to connect to NATS. By creating a context, you will not need to specify your server and credentials with each new request. ### Create a context The example below creates a context named `scaleway`. - Replace `{Scaleway NATS URL}` with the URL of your NATS account (find this in the console on your NATS account **Overview** tab). -- Replace `{path to your creds file}` with the path to the location where you [downloaded your `.creds` file](/messaging/how-to/create-credentials/#how-to-create-credentials-for-a-nats-account). +- Replace `{path to your creds file}` with the path to the location where you [downloaded your `.creds` file](/nats/how-to/create-credentials/). ```bash nats context save scaleway --server={Scaleway NATS URL} --creds={path to your creds file} @@ -58,12 +59,12 @@ nats context select scaleway ## Create a stream -To create a [stream](/messaging/concepts/#stream), use the command `nats stream add` and follow the CLI guidelines. +To create a [stream](/nats/concepts/#stream), use the command `nats stream add` and follow the CLI guidelines. Bear in mind that: - Scaleway NATS does not support in-memory streams: choose `File` as storage backend. - - Some [system limits](/messaging/reference-content/limitations/) may apply by default. + - Some [system limits](/nats/reference-content/limitations/) may apply by default. - If you choose a `Retention Policy` other than `Work Queue` you will be billed for the messages stored and retained. - Choosing three replicas has an impact on: - The stream storage limit (as data is replicated 3 times) diff --git a/pages/nats/assets/scaleway-nats-create-account.webp b/pages/nats/assets/scaleway-nats-create-account.webp new file mode 100644 index 0000000000..2e671a0e5e Binary files /dev/null and b/pages/nats/assets/scaleway-nats-create-account.webp differ diff --git a/pages/nats/assets/scaleway-nats-creds.webp b/pages/nats/assets/scaleway-nats-creds.webp new file mode 100644 index 0000000000..c3b8d9a689 Binary files /dev/null and b/pages/nats/assets/scaleway-nats-creds.webp differ diff --git a/pages/nats/assets/scaleway-nats-overview.webp b/pages/nats/assets/scaleway-nats-overview.webp new file mode 100644 index 0000000000..60be2e9401 Binary files /dev/null and b/pages/nats/assets/scaleway-nats-overview.webp differ diff --git a/pages/nats/concepts.mdx b/pages/nats/concepts.mdx new file mode 100644 index 0000000000..c25955faa8 --- /dev/null +++ b/pages/nats/concepts.mdx @@ -0,0 +1,71 @@ +--- +meta: + title: NATS - Concepts + description: Understand the core concepts of Scaleway NATS. Explore fundamental principles for efficient message handling and service optimization. +content: + h1: NATS - Concepts + paragraph: Understand the core concepts of Scaleway NATS. Explore fundamental principles for efficient message handling and service optimization. +categories: + - serverless + - nats +tags: messaging queuing concepts nats +dates: + validation: 2025-04-01 + posted: 2025-04-01 +--- + +## Credentials + +Credentials give services and platforms access to Scaleway NATS, enabling them to connect to the host system. NATS credentials give full read-write-manage access to your NATS message broker. See the documentation on [how to create credentials](/nats/how-to/create-credentials/) for full details. + +## Message broker + +A message broker is a piece of software that allows applications, systems and services to communicate with each other and send/receive data. It facilitates the exchange of information by receiving messages from a producer, and transmitting them to a consumer. Scaleway NATS is a message broker tool based on the NATS messaging system. + +## Message volume + +Message volume is one of the factors affecting the billing of Scaleway NATS. Message volume is calculated as the number of messages sent to/received by NATS, multiplied by the message size. Or, the sum of the size of all messages passing through NATS. + +## Message persistence + +Message persistence is one of the factors affecting the billing of Scaleway NATS. Message persistence is calculated as the total amount stored in NATS, multiplied by the duration it is stored for. + +## Messaging and Queuing + +Previously, Scaleway Messaging and Queuing was a single product that grouped together three different messaging protocols. It has now been split into three distinct products: [NATS](#scaleway-nats), [Queues](/queues/), and [Topics and Events](/topics-and-events/). + +## NATS account + +A Scaleway NATS account sets a scope for any NATS credentials, messages, queues and streams held within it. You can create one or multiple NATS accounts with Scaleway NATS. + +## NATS messaging system + +The **N**eural **A**utonomic **T**ransport **S**ystem, or [NATS](https://nats.io/), is a distributed messaging system, designed to be lightweight and high-performance. Fully open-source, it is part of the Cloud Native Computing Foundation (CNCF) and has more than 40 client language implementations. + +It implements both of the following: +- A [publish/subscribe](#publish-subscribe) model, designed for real-time messaging and notifications and event-driven architectures. This is ideal for communication between microservices. +- A [streaming service](#stream) via JetStream, providing persistence so that messages can be re-accessed after sending. The streaming add-on is ideal when applications require message replay or historical data access, such as event sourcing and audit logs. + +## Publish/Subscribe + +This is the primary messaging model for NATS, sometimes abbreviated to "pub/sub". The key feature of publish/subscribe is that the publisher does not send messages to defined recipients. Instead, subscribers define the types of message they are interested in, and only receive messages matching their criteria. The publisher sends the message without knowing exactly who will receive it. + +The publish/subscribe model relies on a [message broker](#message-broker) to relay messages between publishers and subscribers. With NATS, subscribers can select which messages to receive based on **subject**. + +## Region + +NATS is available in multiple regions. A region designates the geographical area where the service is hosted. Refer to the [product availability table](/account/reference-content/products-availability/) to check which regions are available for NATS. + +When [creating a NATS account](/nats/how-to/create-account), you need to do this on a region-by-region basis. The region drop-down in the console allows you to switch between available regions. + +## Scaleway NATS + +Scaleway NATS is a managed messaging service that leverages the open-source [NATS messaging system](#nats-messaging-system) to enable seamless communication between distributed applications and microservices. Scaleway handles set-up, patching, and performance optimization, as well as scaling to adjust to dynamic workloads, and backups of your data. + +Check our our [NATS quickstart](/nats/quickstart/) to get started with Scaleway NATS, or our [tutorial](/tutorials/large-messages/) on creating a serverless architecture to process large messages with NATS, to get an idea of how to go further. + +## Stream + +NATS includes the JetStream feature, an add-on to its pub/sub model which implements message streams with persistent messaging capabilities. Distinct from traditional message brokers where messages are deleted once received/consumed, streams retain records ("persistence") of their events. A streaming broker is therefore often likened to a distributed append-only logs file, where every new message is added at the end of the persistent log. Consumers can be thought of as “cursors” in the stream, consuming the stream’s messages according to their filters. + +With NATS, you would typically implement a queue as a stream with a single consumer to read from. \ No newline at end of file diff --git a/pages/nats/faq.mdx b/pages/nats/faq.mdx new file mode 100644 index 0000000000..f1bc0cf8ea --- /dev/null +++ b/pages/nats/faq.mdx @@ -0,0 +1,31 @@ +--- +meta: + title: NATS FAQ + description: Discover Scaleway NATS, and get answers to all your most commonly asked questions, including information on compatibility with various services, and billing. +content: + h1: NATS FAQ +dates: + validation: 2025-04-01 +category: serverless +productIcon: NatsProductIcon +--- + +## What is Scaleway NATS? + +Scaleway NATS is a managed messaging service that leverages the open-source [NATS messaging system](/nats/concepts/#nats-messaging-system) to enable seamless communication between distributed applications and microservices. It allows you to implement your messaging streams without the hassle of managing the infrastructure, scaling or updates. + +## Can I configure Scaleway NATS via Terraform/OpenTofu? + +Yes, check out our [tutorial](https://registry.terraform.io/providers/scaleway/scaleway/latest/docs/guides/mnq_with_nats_terraform_provider) on how to configure Scaleway NATS with the Terraform/OpenTofu [NATS Jetstream provider](https://registry.terraform.io/providers/nats-io/jetstream/latest/docs). + +## What is the NATS messaging system? + +The **N**eural **A**utonomic **T**ransport **S**ystem, or [NATS](https://nats.io/), is a distributed messaging system, designed to be lightweight and high-performance. It implements both of the following: +- A [publish/subscribe](#publish-subscribe) model, designed for real-time messaging and notifications and event-driven architectures. This is ideal for communication between microservices. +- A [streaming service](#stream) via JetStream, providing persistence so that messages can be re-accessed after sending. The streaming add-on is ideal when applications require message replay or historical data access, such as event sourcing and audit logs. + +## How is Scaleway NATS billed? + +Billing is based on [message volume](/nats/concepts/#message-volume) (the total sum of each message's size going through NATS) and [message persistence](/nats/concepts/#message-persistence) (the total amount of data stored * duration). + +For full pricing details, see our [dedicated pricing page](https://www.scaleway.com/en/pricing/). \ No newline at end of file diff --git a/pages/nats/how-to/assets/scaleway-nats-create-account.webp b/pages/nats/how-to/assets/scaleway-nats-create-account.webp new file mode 100644 index 0000000000..2e671a0e5e Binary files /dev/null and b/pages/nats/how-to/assets/scaleway-nats-create-account.webp differ diff --git a/pages/nats/how-to/assets/scaleway-nats-creds.webp b/pages/nats/how-to/assets/scaleway-nats-creds.webp new file mode 100644 index 0000000000..c3b8d9a689 Binary files /dev/null and b/pages/nats/how-to/assets/scaleway-nats-creds.webp differ diff --git a/pages/nats/how-to/assets/scaleway-nats-overview.webp b/pages/nats/how-to/assets/scaleway-nats-overview.webp new file mode 100644 index 0000000000..60be2e9401 Binary files /dev/null and b/pages/nats/how-to/assets/scaleway-nats-overview.webp differ diff --git a/pages/messaging/how-to/get-started.mdx b/pages/nats/how-to/create-account.mdx similarity index 52% rename from pages/messaging/how-to/get-started.mdx rename to pages/nats/how-to/create-account.mdx index 639996edfa..9232cadf90 100644 --- a/pages/messaging/how-to/get-started.mdx +++ b/pages/nats/how-to/create-account.mdx @@ -1,24 +1,21 @@ --- meta: - title: How to get started with NATS, Queues, or Topics and Events - description: Kickstart your journey with Scaleway NATS, Queues, or Topics and Events. Learn how to set up, manage, and optimize your NATS, Queues, and Topics and Events services effortlessly. + title: How to create a NATS account + description: Kickstart your journey with Scaleway NATS. Learn how to set up, manage, and optimize your NATS services effortlessly. content: - h1: How to get started with NATS, Queues, or Topics and Events - paragraph: Kickstart your journey with Scaleway NATS, Queues, or Topics and Events. Learn how to set up, manage, and optimize your NATS, Queues, and Topics and Events effortlessly. -tags: messaging queuing enable disable nats sqs sns nats-account account create + h1: How to create a NATS account + paragraph: Kickstart your journey with Scaleway NATS. Learn how to set up, manage, and optimize your NATS services effortlessly. +tags: messaging queuing enable disable nats account categories: - - serverless + - serverless + - nats dates: - validation: 2024-10-17 - posted: 2023-10-03 + validation: 2025-04-01 + posted: 2025-04-01 --- -This page shows how to get started with Scaleway **NATS**, **Queues** or **Topics and Events** (previously grouped together as the **Messaging and Queuing** product). - -The process differs depending on the [messaging protocol](/messaging/concepts/#messaging-protocol) you want to use: +To start using a NATS message broker, you must first create a NATS account. This sets a scope for your NATS credentials, messages, queues and stream. -- For NATS, you need to **create a NATS account**. -- For **Queues** and **Topics and Events**, you no longer need to activate the protocol, but can proceed directly to [creating queues](/messaging/how-to/create-manage-queues) and/or [topics](/messaging/how-to/create-manage-topics). @@ -27,8 +24,6 @@ The process differs depending on the [messaging protocol](/messaging/concepts/#m ## How to create a NATS account -To start using a NATS message broker, you must first create a NATS account. This sets a scope for your NATS credentials, messages, queues and stream. - 1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. 2. Click **Create a NATS account**. The creation wizard displays. @@ -39,16 +34,11 @@ To start using a NATS message broker, you must first create a NATS account. This - Choose a **region**, which is the geographical location in which your NATS account will be created. - Enter a **name** for your NATS account, or use the auto-generated name suggested for you. - - Optional: Use the *Estimated cost** calculator to simulate how messages sent and stored with NATS streams will be billed. Note that simply creating a NATS account does not in itself incur any billing. For more information about NATS billing, see the [FAQ](/messaging/faq/#how-are-nats-queues-and-topics-and-events-billed). + - Optional: Use the *Estimated cost** calculator to simulate how messages sent and stored with NATS streams will be billed. Note that simply creating a NATS account does not in itself incur any billing. For more information about NATS billing, see the [FAQ](/nats/faq/#how-is-nats-billed). - Click **Create NATS account** to finish. You are directed to the listing of your NATS accounts, where your newly-created NATS account now appears. You can create more NATS accounts in your pre-selected region if you wish, by clicking on the `+ Create NATS account` button. To create NATS accounts in other regions, repeat the steps above starting from step 2 and selecting the required region. - - - -## How to activate Queues or Topics and Events - -For **Queues** and **Topics and Events**, you no longer need to activate the individual protocols. Proceed directly to [creating queues](/messaging/how-to/create-manage-queues) or [topics](/messaging/how-to/create-manage-topics) directly. \ No newline at end of file + \ No newline at end of file diff --git a/pages/nats/how-to/create-credentials.mdx b/pages/nats/how-to/create-credentials.mdx new file mode 100644 index 0000000000..991c67ff8e --- /dev/null +++ b/pages/nats/how-to/create-credentials.mdx @@ -0,0 +1,53 @@ +--- +meta: + title: How to create credentials for NATS + description: Learn how to create credentials for Scaleway NATS. Securely manage access, and ensure seamless integration with this step-by-step guide. +content: + h1: How to create credentials for NATS + paragraph: Learn how to create credentials for Scaleway NATS. Securely manage access, and ensure seamless integration with this step-by-step guide. +tags: credentials messaging queuing key token nats +categories: + - serverless + - nats +dates: + validation: 2025-04-01 + posted: 2025-04-01 +--- + +This page shows how to create [credentials](/nats/concepts/#credentials) for Scaleway NATS (previously part of the Messaging and Queuing product). Credentials give their bearer (e.g. services and platforms) access to your service. + +You can create multiple sets of credentials for each of your NATS accounts. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- A [NATS account](/nats/how-to/create-account/) + +## How to create credentials for a NATS account + +Credentials for NATS accounts are not granular: they necessarily give full read and write access. The bearer of these credentials can publish and receive messages, as well as manage topics and streams, for this account. + +1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. + +2. Use the drop-down menu to select the [region](/nats/concepts/#region) of the NATS account for which you want to create credentials. The list of your NATS accounts in the pre-selected region displays. + +3. Click the NATS account you want to generate credentials for. The account's **Overview** page displays. + + + +4. In the **Credentials** panel, click **Generate credentials**. A pop-up displays. + +5. Enter a name for these credentials, and click **Generate credentials**. + + The credentials are created and a button displays prompting you to download them in a `.creds` file. + + + + + The generated credentials are displayed only once. Make sure to download and safely store them before closing the window. + + +6. Click **Download** and save the file, before closing the window. + + You are returned to your NATs account's overview page. The name of your newly-generated credentials and their access level is displayed in the **Credentials** panel. \ No newline at end of file diff --git a/pages/nats/how-to/delete-account.mdx b/pages/nats/how-to/delete-account.mdx new file mode 100644 index 0000000000..56a1881316 --- /dev/null +++ b/pages/nats/how-to/delete-account.mdx @@ -0,0 +1,45 @@ +--- +meta: + title: How to delete a NATS account + description: Delete a Scaleway NATS account effectively. Safely remove resources with this straightforward guide. +content: + h1: How to delete a NATS account + paragraph: Delete a Scaleway NATS account effectively. Safely remove resources with this straightforward guide. +dates: + validation: 2025-04-01 + posted: 2025-04-01 +tags: delete messaging queuing messaging-and-queuing service delete nats-account +categories: + - serverless + - nats +--- + +This page shows how to delete a Scaleway **NATS**, account. + + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- At least one [NATS account](/nats/how-to/create-account/) + +## How to delete a NATS account + +1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. + +2. Use the drop-down menu to select the [region](/nats/concepts/#region) containing the NATS account you want to delete. + +3. Click the NATS account you want to delete. + +4. In the bottom panel, click the **Delete NATS account** button. + + A pop-up displays, reminding you that the action is irreversible, and any associated queued messages and credentials will be deleted. + +5. Type `DELETE` and click **Delete NATS account** to confirm. + + +Repeat the process above for each NATS account you want to delete. Remember to use the region drop-down as appropriate to access the different NATS accounts you hold in different regions. + + + + diff --git a/pages/nats/how-to/index.mdx b/pages/nats/how-to/index.mdx new file mode 100644 index 0000000000..7bff246f34 --- /dev/null +++ b/pages/nats/how-to/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: NATS - How Tos + description: NATS How Tos +content: + h1: NATS- How Tos + paragraph: NATS How Tos +--- diff --git a/pages/nats/how-to/manage-credentials.mdx b/pages/nats/how-to/manage-credentials.mdx new file mode 100644 index 0000000000..9c9bcecffe --- /dev/null +++ b/pages/nats/how-to/manage-credentials.mdx @@ -0,0 +1,43 @@ +--- +meta: + title: How to manage credentials for Scaleway NATS + description: Master managing credentials for Scaleway NATS. Follow this guide to securely update, rotate, and control access to your messaging services. +content: + h1: How to manage credentials for Scaleway NATS + paragraph: Master managing credentials for Scaleway NATS. Follow this guide to securely update, rotate, and control access to your messaging services. +dates: + validation: 2025-04-01 + posted: 2025-04-01 +tags: manage credentials nats permissions update revoke +categories: + - serverless + - nats +--- + +Credentials give their bearer (e.g. services and platforms) access to your service. + +This page shows how to manage [credentials](/nats/concepts/#credentials) for Scaleway NATS (previously part of the Messaging and Queuing product). + +Note that the only management action available for NATS credentials is revocation. Once credentials are revoked, any user trying to use the credentials to connect to the service will be denied. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- Valid [NATS credentials](/nats/how-to/create-credentials/) + +## How to revoke NATS credentials + +1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. + +2. Select the NATS account you want to revoke credentials for. + +3. In the **Credentials** panel, click the button next to the credentials you want to revoke. + + A pop-up displays, warning you that this action is irreversible and the key will no longer be able to access your service. + +4. Click **Revoke credentials**. + + The credentials are revoked and you are returned to the NATS account's **Overview** page. + + diff --git a/pages/nats/how-to/monitor-nats-cockpit.mdx b/pages/nats/how-to/monitor-nats-cockpit.mdx new file mode 100644 index 0000000000..cfe9fe1c81 --- /dev/null +++ b/pages/nats/how-to/monitor-nats-cockpit.mdx @@ -0,0 +1,46 @@ +--- +meta: + title: How to monitor NATS with Scaleway Cockpit + description: Monitor your NATS service with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. +content: + h1: How to monitor NATS with Scaleway Cockpit + paragraph: Monitor your NATS service with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. +tags: messaging queuing nats cockpit metrics observability +categories: + - serverless + - nats +dates: + validation: 2025-04-01 + posted: 2025-04-01 +--- + +You can view metrics for your NATS services via [Scaleway Cockpit](/cockpit/quickstart/). This allows you to monitor your queues/streams and messages at a glance. There are two steps to complete to view your metrics for the first time with Cockpit: + +1. Generate your Grafana credentials +2. Access the product's metrics dashboard + +These steps are described below. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- At least one [NATS account](/nats/how-to/create-account/) + +## How to generate Grafana credentials + +To view your metrics with Cockpit, you will use a Grafana dashboard which is accessible from the Scaleway console. First, you must create a user and their associated credentials (a username and password) for Grafana. This can be done directly from the Scaleway console, [by following this procedure](/cockpit/how-to/retrieve-grafana-credentials/). + +## How to access your NATS dashboard and view your metrics + +1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. + +2. Click the **Metrics** tab. + +3. Click **Open Grafana metrics dashboard**. + +4. Enter your Grafana username and password to log in. + + You are directed to the NATS dashboard, where you can view all your metrics. + + diff --git a/pages/nats/index.mdx b/pages/nats/index.mdx new file mode 100644 index 0000000000..6bee88e879 --- /dev/null +++ b/pages/nats/index.mdx @@ -0,0 +1,73 @@ +--- +meta: + title: NATS Documentation + description: Explore Scaleway NATS. Simplify your microservice workflows with scalable, reliable, and cost-effective message handling solutions. +--- + + + +## Getting Started + + + + + + + + + +## Tutorials + + + + + + + + +## Changelog + + \ No newline at end of file diff --git a/pages/nats/quickstart.mdx b/pages/nats/quickstart.mdx new file mode 100644 index 0000000000..3a239b917e --- /dev/null +++ b/pages/nats/quickstart.mdx @@ -0,0 +1,91 @@ +--- +meta: + title: NATS - Quickstart + description: Get started with Scaleway NATS. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. +content: + h1: NATS - Quickstart + paragraph: Get started with Scaleway NATS. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. +dates: + validation: 2025-04-01 + posted: 2025-04-01 +tags: messaging queuing queueing quickstart messaging-and-queuing nats message-broker queues topics messages streams jetstream +categories: + - serverless + - nats +--- + +Scaleway NATS is a managed message broker tool that allows you to transfer messages between different microservices and platforms. This enables them to "talk" to each other effectively even if they are not otherwise compatible. This enables and simplifies microservices application development and allows you to build highly scalable, reliable, distributed applications. + + +Scaleway NATS was previously part of our Messaging and Queuing product, and has now become a product in its own right. + + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization + +## How to create a NATS account + +To start using a NATS message broker, you must first create a NATS account. This sets a scope for your NATS credentials, messages, queues and stream. + +1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. + +2. Click **Create a NATS account**. The creation wizard displays. + + + +3. Complete the following steps in the wizard: + + - Choose a **region**, which is the geographical location in which your NATS account will be created. + - Enter a **name** for your NATS account, or use the auto-generated name suggested for you. + - Optional: Use the *Estimated cost** calculator to simulate how messages sent and stored with NATS streams will be billed. Note that simply creating a NATS account does not in itself incur any billing. For more information about NATS billing, see the [FAQ](/nats/faq/#how-is-scaleway-nats-billed). + - Click **Create NATS account** to finish. + + You are directed to the listing of your NATS accounts, where your newly-created NATS account now appears. + +## How to create NATS credentials + +Credentials for NATS accounts are not granular: they necessarily give full read and write access. The bearer of these credentials can publish and receive messages, as well as manage topics and streams, for this account. + +1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. + +2. Use the drop-down menu to select the [region](/nats/concepts/#region) of the NATS account for which you want to create credentials. The list of your NATS accounts in the pre-selected region displays. + +3. Click the NATS account you want to generate credentials for. The account's **Overview** page displays. + + + +4. In the **Credentials** panel, click **Generate credentials**. A pop-up displays. + +5. Enter a name for these credentials, and click **Generate credentials**. + + The credentials are created and a button displays prompting you to download them in a `.creds` file. + + + + + The generated credentials are displayed only once. Make sure to download and safely store them before closing the window. + + +6. Click **Download** and save the file, before closing the window. + + You are returned to your NATs account's overview page. The name of your newly-generated credentials and their access level is displayed in the **Credentials** panel. + +## How to create and manage queues, messages and streams + +All further actions related to publishing, processing and managing messages, subjects, queues and streams can be done via a supported CLI or SDK. See our documentation on [NATS CLI and SDKs](/nats/reference-content/nats-overview/#further-actions-nats-cli-and-nats-sdk) for more information. You can also check out our tutorial on [creating a serverless architecture for handling large messages](/tutorials/large-messages/) with Scaleway NATS. + +## How to delete a NATS account + +1. Click **NATS** in the **Serverless** section of the Scaleway console side menu. + +2. Use the drop-down menu to select the [region](/nats/concepts/#region) containing the NATS account you want to delete. + +3. Click the NATS account you want to delete. + +4. In the bottom panel, click the **Delete NATS account** button. + + A pop-up displays, reminding you that the action is irreversible, and any associated queued messages and credentials will be deleted. + +5. Type `DELETE` and click **Delete NATS account** to confirm. \ No newline at end of file diff --git a/pages/nats/reference-content/index.mdx b/pages/nats/reference-content/index.mdx new file mode 100644 index 0000000000..dacce5bb31 --- /dev/null +++ b/pages/nats/reference-content/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: NATS - Additional content + description: NATS additional content +content: + h1: NATS - Additional content + paragraph: NATS additional content +--- diff --git a/pages/nats/reference-content/limitations.mdx b/pages/nats/reference-content/limitations.mdx new file mode 100644 index 0000000000..d7f39fe64f --- /dev/null +++ b/pages/nats/reference-content/limitations.mdx @@ -0,0 +1,23 @@ +--- +meta: + title: NATS Limitations + description: Learn about the current limitations of Scaleway NATS +content: + h1: NATS Limitations + paragraph: Learn about the current limitations of Scaleway NATS +tags: messaging limitations space size storage payload max-streams max-consumers max-subscribers max-topics visibility-timeout +dates: + validation: 2025-04-01 + posted: 2025-04-01 +categories: + - serverless + - nats +--- + +## Usage limits + +For the usage limits that apply when using Scaleway NATS, see the dedicated sections on our [Organization quotas](/organizations-and-projects/additional-content/organization-quotas/) page. Limits (quotas) apply to, for example, the maximum number of queues, streams, topics and consumers/subscribers, as well as to message retention duration and storage. + +## VPC + +NATS is not currently compatible with [Scaleway VPC](/vpc/quickstart/). diff --git a/pages/messaging/reference-content/nats-overview.mdx b/pages/nats/reference-content/nats-overview.mdx similarity index 82% rename from pages/messaging/reference-content/nats-overview.mdx rename to pages/nats/reference-content/nats-overview.mdx index 17747cf0e8..638f8fddda 100644 --- a/pages/messaging/reference-content/nats-overview.mdx +++ b/pages/nats/reference-content/nats-overview.mdx @@ -8,6 +8,7 @@ content: tags: nats overview neural-autonomic-transport-system publish-subscribe jetstream streaming messaging deno categories: - serverless + - nats dates: validation: 2024-10-18 posted: 2023-01-04 @@ -15,7 +16,7 @@ dates: ## What is NATS? -NATS (**N**eural **A**utonomic **T**ransport **S**ystem) is a messaging system that aims to be simple to use, scalable and provide high performance. It implements a [publish/subscribe](/messaging/concepts/#publishsubscribe) model as well as adding a [streaming](/messaging/concepts/#stream) service via [JetStream](https://docs.nats.io/nats-concepts/jetstream). A stream is a persistent, time-ordered list of messages which can be read sequentially by consumers. A consumer can be thought of as a "cursor" in the stream, consuming the stream's messages according to their "subject filter" or "replay policy". With NATS, you would typically implement a [queue](/messaging/concepts/#queuing) as a stream with a single consumer to read from. +NATS (**N**eural **A**utonomic **T**ransport **S**ystem) is a messaging system that aims to be simple to use, scalable and provide high performance. It implements a [publish/subscribe](/nats/concepts/#publishsubscribe) model as well as adding a [streaming](/nats/concepts/#stream) service via [JetStream](https://docs.nats.io/nats-concepts/jetstream). A stream is a persistent, time-ordered list of messages which can be read sequentially by consumers. A consumer can be thought of as a "cursor" in the stream, consuming the stream's messages according to their "subject filter" or "replay policy". With NATS, you would typically implement a queue as a stream with a single consumer to read from. NATS is a [Cloud Native Computing Foundation](https://www.cncf.io/) project supported by a strong community, and can also be integrated in a Kubernetes cluster. @@ -29,7 +30,7 @@ You can easily create a NATS account from the [Scaleway console](https://console ## NATS credentials -When you create your NATS account, you next need to [create credentials](/messaging/how-to/create-credentials/). On the NATS side, these credentials are the equivalent of a 'user'. We use the most secure connection type offered by NATS: [NKeys](https://docs.nats.io/running-a-nats-service/configuration/securing_nats/auth_intro/nkey_auth). NKeys are a public-key signature system based on [Ed25519](https://ed25519.cr.yp.to/). +When you create your NATS account, you next need to [create credentials](/nats/how-to/create-credentials/). On the NATS side, these credentials are the equivalent of a 'user'. We use the most secure connection type offered by NATS: [NKeys](https://docs.nats.io/running-a-nats-service/configuration/securing_nats/auth_intro/nkey_auth). NKeys are a public-key signature system based on [Ed25519](https://ed25519.cr.yp.to/). Your credentials are provided in the form of a downloadable `.creds` file. Each set of credentials gives you full access to your NATS account, but does not enable you to generate new users with specific rights or fine-grained permissions. @@ -41,7 +42,7 @@ Note that the Scaleway NATS server is configured with TLS, and as such will requ ### NATS CLI -The [NATS CLI](https://docs.nats.io/using-nats/nats-tools/nats_cli) is a great tool for administrating or testing your subjects and streams. See our [dedicated documentation](/messaging/api-cli/nats-cli/) for help getting started with the NATS CLI. +The [NATS CLI](https://docs.nats.io/using-nats/nats-tools/nats_cli) is a great tool for administrating or testing your subjects and streams. See our [dedicated documentation](/nats/api-cli/nats-cli/) for help getting started with the NATS CLI. ### NATS SDK diff --git a/pages/organizations-and-projects/additional-content/organization-quotas.mdx b/pages/organizations-and-projects/additional-content/organization-quotas.mdx index 145d6d0fd2..3e105474c8 100644 --- a/pages/organizations-and-projects/additional-content/organization-quotas.mdx +++ b/pages/organizations-and-projects/additional-content/organization-quotas.mdx @@ -336,7 +336,7 @@ For example, if you choose to create a container with 512 MB of memory and a max Scaleway NATS is a message broker tool based on the NATS protocol, that allows you to transfer messages between different microservices and platforms. -The following usage limits are enforced as Organization quotas when using Scaleway [NATS](/messaging/concepts/#nats): +The following usage limits are enforced as Organization quotas when using Scaleway [NATS](/nats/concepts/#nats): **NATS** @@ -354,8 +354,8 @@ Note that in memory stream are not supported, please create your NATS stream usi ## Queues -Scaleway Queues is a product for creating managed messaging queues based on the [SQS](/messaging/concepts/#sqs) protocol. -Limits that apply to regular queues also apply to [dead letter queues](/messaging/concepts/#dead-letter-queue). +Scaleway Queues is a product for creating managed messaging queues based on the [SQS](/queues/concepts/#sqs) protocol. +Limits that apply to regular queues also apply to [dead letter queues](/queues/concepts/#dead-letter-queue). The following usage limits are enforced as Organization quotas when using Scaleway Queues: @@ -371,7 +371,7 @@ The following usage limits are enforced as Organization quotas when using Scalew ## Topics and Events -Topics and Events is a product for creating managed messaging topics based on the [SNS](/messaging/concepts/#sns) protocol. The following usage limits are enforced as Organization quotas when using Scaleway Topics and Events: +Topics and Events is a product for creating managed messaging topics based on the [SNS](/topics-and-events/concepts/#sns) protocol. The following usage limits are enforced as Organization quotas when using Scaleway Topics and Events: | Resource | Criteria | Limits | Scope | |------------------------------------------------|------------|----------|------------------| diff --git a/pages/messaging/api-cli/connect-aws-cli.mdx b/pages/queues/api-cli/connect-aws-cli.mdx similarity index 59% rename from pages/messaging/api-cli/connect-aws-cli.mdx rename to pages/queues/api-cli/connect-aws-cli.mdx index 34f61a55d2..6443985f01 100644 --- a/pages/messaging/api-cli/connect-aws-cli.mdx +++ b/pages/queues/api-cli/connect-aws-cli.mdx @@ -1,35 +1,35 @@ --- meta: - title: Connecting Queues or Topics and Events to the AWS-CLI - description: This page explains how to connect Scaleway Queues and/or Topics and Events to the AWS-CLI + title: Connecting Scaleway Queues to the AWS-CLI + description: This page explains how to connect Scaleway Queues to the AWS-CLI content: - h1: Connecting Queues or Topics and Events to the AWS-CLI - paragraph: This page explains how to connect Scaleway Queues and/or Topics and Events to the AWS-CLI -tags: messaging sns sqs aws-cli cli aws sdk python boto + h1: Connecting Scaleway Queues to the AWS-CLI + paragraph: This page explains how to connect Scaleway Queues to the AWS-CLI +tags: messaging queues sqs aws-cli cli aws sdk python boto categories: - - messaging + - serverless + - queues dates: - validation: 2024-10-18 - posted: 2023-01-04 + validation: 2025-04-02 + posted: 2025-04-02 --- -The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services. With minimal configuration, you can start using the AWS-CLI with Scaleway Queues or Scaleway Topics and Events. This allows you to create, list and manage your queues and topics, send messages and much more, all from your command line. +The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services. With minimal configuration, you can start using the AWS-CLI with Scaleway Queues. This allows you to create, list and manage your queues, send messages and much more, all from your command line. -This guide shows you how to install the AWS-CLI and configure it to connect to Scaleway Queues or Scaleway Topics and Events. +This guide shows you how to install the AWS-CLI and configure it to connect to Scaleway Queues. - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- Valid [credentials](/messaging/how-to/create-credentials/) for Queues and/or Topics and Events - +- Valid [credentials](/queues/how-to/create-credentials/) for Scaleway Queues This page assumes you will use the AWS-CLI v1. ## How to install the AWS-CLI -To interact with Scaleway Queues and Scaleway Topics and Events, both `aws-cli` and `awscli-plugin-endpoint` need to be installed. The `awscli-plugin-endpoint` is a useful plugin to help people more easily access third-party providers such as Scaleway. +To interact with Scaleway Queues, both `aws-cli` and `awscli-plugin-endpoint` need to be installed. The `awscli-plugin-endpoint` is a useful plugin to help people more easily access third-party providers such as Scaleway. Install both `aws-cli` and `awscli-plugin` using `pip`. @@ -40,7 +40,7 @@ pip3 install awscli-plugin-endpoint ## How to configure the AWS-CLI -Now you have installed the AWS-CLI, you need to configure it for use with Scaleway Queues / Topics and Events. +Now you have installed the AWS-CLI, you need to configure it for use with Scaleway Queues. 1. Create a file named `~/.aws/config` by running the following command: ``` @@ -51,21 +51,19 @@ Now you have installed the AWS-CLI, you need to configure it for use with Scalew With the most recent versions of awscli (1.29.0 or 2.13.0), the use of a plugin is not necessary. If you are using one of those versions and wish to skip this step, you can do so. Note that this will also affect your configuration file in the next step. -2. Open the `~/.aws/config` file you just created in a text editor and edit it as follows (the Queues (SQS) or Topics and Events (SNS) endpoint URLs can be found in the console on the **Settings** page for the relevant product) +2. Open the `~/.aws/config` file you just created in a text editor and edit it as follows (the Queues (SQS) endpoint URL can be found in the console on the **Settings** page of the Queues product) ``` [plugins] endpoint = awscli_plugin_endpoint [profile sns] region = fr-par - sns = - endpoint_url = https://sns.mnq.fr-par.scaleway.com [profile sqs] region = fr-par sqs = endpoint_url = https://sqs.mnq.fr-par.scaleway.com ``` - Optionally, you can also configure additional profiles by adding new blocks under `[sqs]` and `[sns]`. For example, you can add a third profile, `[profile aws]`, to connect to the AWS SQS/SNS service if you want: + Optionally, you can also configure additional profiles by adding new blocks under `[sqs]`. For example, you can add a profile for `[sns]` if you are also using Scaleway Topics and Events, or another profile, `[profile aws]`, to connect to the AWS SQS/SNS service if you want: ``` [plugins] @@ -90,9 +88,6 @@ Now you have installed the AWS-CLI, you need to configure it for use with Scalew If you are using aws 1.29.0 or 2.13.0 without the plugin, your configuration file should be as follows: ``` - [profile sns] - region = fr-par - endpoint_url = https://sns.mnq.fr-par.scaleway.com [profile sqs] region = fr-par endpoint_url = https://sqs.mnq.fr-par.scaleway.com @@ -104,13 +99,9 @@ Now you have installed the AWS-CLI, you need to configure it for use with Scalew ``` aws configure ``` -** -4. Open the `~/.aws/credentials` file you just created, and for each product (out of **Queues** and **Topics and Events**) you want to use, add the access key and secret key you saved when you generated your [credentials](/messaging/how-to/create-credentials/): - ``` - [topics_events] - aws_access_key_id= - aws_secret_access_key= +4. Open the `~/.aws/credentials` file you just created, and add the access key and secret key you saved when you generated your [credentials](/queues/how-to/create-credentials/): + ``` [queues] aws_access_key_id= aws_secret_access_key= @@ -118,12 +109,16 @@ Now you have installed the AWS-CLI, you need to configure it for use with Scalew If you have other profiles, you can add a block to indicate their credentials too: ``` + [topics_events] + aws_access_key_id= + aws_secret_access_key= + [aws] aws_access_key_id= aws_secret_access_key= ``` -6. Test that everything is set up correctly with the following command: +5. Test that everything is set up correctly with the following command: ``` aws queues list-queues ``` @@ -131,7 +126,5 @@ Now you have installed the AWS-CLI, you need to configure it for use with Scalew Use the `--profile` option if you want to test it using a different profile. - Check out our dedicated documentation to find more common commands for getting started with the AWS CLI: - - The [Queues guide](/messaging/api-cli/sqs-sns-aws-cli/#getting-started-with-scaleway-queues) walks you through creating and listing queues, sending messages to queues, and more. - - The [Topics and Events guide](/messaging/api-cli/sqs-sns-aws-cli/#getting-started-with-topics-and-events) shows you how to create and list topics and subscriptions, send messages to topics, and more. + Check out our dedicated documentation to find more common commands for getting started with the AWS CLI. The [Queues guide](/queues/api-cli/queues-aws-cli/#getting-started-with-scaleway-queues) walks you through creating and listing queues, sending messages to queues, and more. diff --git a/pages/queues/api-cli/index.mdx b/pages/queues/api-cli/index.mdx new file mode 100644 index 0000000000..f81cd2808b --- /dev/null +++ b/pages/queues/api-cli/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Queues - API/CLI Documentation + description: Queues API/CLI Documentation +content: + h1: Queues - API/CLI Documentation + paragraph: Queues API/CLI Documentation +--- diff --git a/pages/messaging/api-cli/python-node-sqs.mdx b/pages/queues/api-cli/python-node-queues.mdx similarity index 84% rename from pages/messaging/api-cli/python-node-sqs.mdx rename to pages/queues/api-cli/python-node-queues.mdx index 74d78d6b3b..46f8bc934a 100644 --- a/pages/messaging/api-cli/python-node-sqs.mdx +++ b/pages/queues/api-cli/python-node-queues.mdx @@ -7,14 +7,14 @@ content: paragraph: This page explains how to use Go, Python or Node.js with Scaleway Queues and provides code samples tags: messaging boto3 python nodejs sqs go categories: - - messaging + - serverless + - queues dates: validation: 2024-10-18 posted: 2023-01-04 -validation_frequency: 8 --- -AWS provides a number of SDKs (**S**oftware **D**evelopment **K**its) which provide language-specific APIs for AWS services, including [SQS](/messaging/concepts#sqs), which is the protocol Scaleway Queues is based on. +AWS provides a number of SDKs (**S**oftware **D**evelopment **K**its) which provide language-specific APIs for AWS services, including [SQS](/queues/concepts#sqs), which is the protocol Scaleway Queues is based on. - AWS provides a dedicated [SDK for Go](https://aws.amazon.com/sdk-for-go/). - The [AWS SDK for Python](https://aws.amazon.com/sdk-for-python/) is Boto3 @@ -26,7 +26,7 @@ This guide provides code samples to show you how to start using these SDKs with - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- Valid [credentials](/messaging/how-to/create-credentials/) for Scaleway Queues +- Valid [credentials](/queues/how-to/create-credentials/) for Scaleway Queues - Installed the relevant AWS SDK [for Go](https://aws.amazon.com/sdk-for-go/), [Python](https://aws.amazon.com/sdk-for-python/) and/or [JavaScript](https://aws.amazon.com/sdk-for-javascript/) ## Go @@ -58,11 +58,11 @@ func main() { - The `Endpoint` for Scaleway Queues is `https://sqs.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/messaging/how-to/create-credentials/) for Queues. + The `Endpoint` for Scaleway Queues is `https://sqs.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/queues/how-to/create-credentials/) for Queues. -Once you are connected, you can use any functions available with the SDK. However, we recommend that you check they are [supported by Scaleway Queues](/messaging/reference-content/sqs-support/). See the [official documentation](https://pkg.go.dev/github.com/aws/aws-sdk-go/service/sqs) for more details on using the SDK, or read on to see some examples. +Once you are connected, you can use any functions available with the SDK. However, we recommend that you check they are [supported by Scaleway Queues](/queues/reference-content/sqs-support/). See the [official documentation](https://pkg.go.dev/github.com/aws/aws-sdk-go/service/sqs) for more details on using the SDK, or read on to see some examples. ### Create queue (Go) @@ -115,10 +115,10 @@ sqs = boto3.resource('sqs', ``` - The `endpoint_url` for Scaleway Queues is `https://sqs.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/messaging/how-to/create-credentials/) for Queues. + The `endpoint_url` for Scaleway Queues is `https://sqs.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/queues/how-to/create-credentials/) for Queues. -Once connected, you can use any functions available with the SDK - just check that they are [supported by Scaleway Queues](/messaging/reference-content/sqs-support/). See the [official documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) for more details, or read on to see some examples. +Once connected, you can use any functions available with the SDK - just check that they are [supported by Scaleway Queues](/queues/reference-content/sqs-support/). See the [official documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) for more details, or read on to see some examples. ### Create queue (Python) @@ -172,10 +172,10 @@ var sqsClient = new SQSClient({ ``` - The `endpoint_url` for Scaleway Queues is `https://sqs.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/messaging/how-to/create-credentials/) for Scaleway Queues. + The `endpoint_url` for Scaleway Queues is `https://sqs.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/queues/how-to/create-credentials/) for Scaleway Queues. -Once connected, you can use any of the SDK's functions as long as they're [supported by Scaleway Queues](/messaging/reference-content/sqs-support/). Refer to AWS's [official documentation](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html)) for more information, or read on to see some examples. +Once connected, you can use any of the SDK's functions as long as they are [supported by Scaleway Queues](/queues/reference-content/sqs-support/). Refer to AWS's [official documentation](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html) for more information, or read on to see some examples. ### Create queue (NodeJS) diff --git a/pages/queues/api-cli/queues-aws-cli.mdx b/pages/queues/api-cli/queues-aws-cli.mdx new file mode 100644 index 0000000000..1f83ac3480 --- /dev/null +++ b/pages/queues/api-cli/queues-aws-cli.mdx @@ -0,0 +1,69 @@ +--- +meta: + title: Using Scaleway Queues with the AWS-CLI + description: This page explains how to use Scaleway Queues with the AWS CLI +content: + h1: Using Scaleway Queues with the AWS-CLI + paragraph: This page explains how to use Scaleway Queues for creating queues and sending and receiving messages with the AWS CLI +tags: messaging sqs aws-cli cli aws queues messages +categories: + - serverless + - queues +dates: + validation: 2025-04-02 + posted: 2025-04-02 +--- + +The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services. Once you have [connected Scaleway Queues to the AWS-CLI](/queues/api-cli/connect-aws-cli/), you can start creating, listing and managing your queues, sending messages and much more, all from your command line. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- Valid [credentials](/queues/how-to/create-credentials/) for Queues +- [Connected Queues to the AWS-CLI](/queues/api-cli/connect-aws-cli/) +- [jq](https://stedolan.github.io/jq/download/) installed on your machine + +## Getting started with Scaleway Queues + +1. Use the following command to create a queue: + + ```sh + aws sqs create-queue --queue-name MyQueue | tee my-queue.json + ``` + +2. Use the following command to list existing queues: + + ```sh + aws sqs list-queues + ``` + +3. Use the following command to send messages to a queue: + + ```sh + aws sqs send-message --queue-url $(jq -r .QueueUrl my-queue.json) --message-body "Hello world!" + + aws sqs send-message --queue-url $(jq -r .QueueUrl my-queue.json) --message-body "Second Message." + ``` + +4. Use the following command to receive messages: + + ```sh + aws sqs receive-message --queue-url $(jq -r .QueueUrl my-queue.json) | tee message1.json + + aws sqs receive-message --queue-url $(jq -r .QueueUrl my-queue.json) | tee message2.json + ``` + +5. Use the following command to delete messages. This is necessary as once a message has been processed on your consumer side (typically by a worker), it will be re-queued unless it is explicitly deleted. + + ```sh + aws sqs delete-message --queue-url $(jq -r .QueueUrl my-queue.json) --receipt-handle $(jq -r .Messages[0].ReceiptHandle message1.json) + + aws sqs delete-message --queue-url $(jq -r .QueueUrl my-queue.json) --receipt-handle $(jq -r .Messages[0].ReceiptHandle message2.json) + ``` + +6. Use the following command to delete the queue itself: + + ```sh + aws sqs delete-queue --queue-url $(jq -r .QueueUrl my-queue.json) + ``` \ No newline at end of file diff --git a/pages/queues/assets/scaleway-queues-create-queue.webp b/pages/queues/assets/scaleway-queues-create-queue.webp new file mode 100644 index 0000000000..1d5a1b0093 Binary files /dev/null and b/pages/queues/assets/scaleway-queues-create-queue.webp differ diff --git a/pages/queues/assets/scaleway-queues-gen-creds.webp b/pages/queues/assets/scaleway-queues-gen-creds.webp new file mode 100644 index 0000000000..cdc6e0a0aa Binary files /dev/null and b/pages/queues/assets/scaleway-queues-gen-creds.webp differ diff --git a/pages/queues/concepts.mdx b/pages/queues/concepts.mdx new file mode 100644 index 0000000000..914cf52315 --- /dev/null +++ b/pages/queues/concepts.mdx @@ -0,0 +1,85 @@ +--- +meta: + title: Queues - Concepts + description: Understand the core concepts of Scaleway Queues. Explore fundamental principles for efficient message handling and service optimization. +content: + h1: Queues - Concepts + paragraph: Understand the core concepts of Scaleway Queues. Explore fundamental principles for efficient message handling and service optimization. +categories: + - serverless + - queues +tags: messaging queuing concepts queues +dates: + validation: 2025-04-02 + posted: 2025-04-02 +--- + +## Content-based deduplication + +Content-based deduplication is a setting available for [FIFO](#fifo) queues. Enable content-based deduplication if the message body is guaranteed to be unique for each message. A unique hash value is generated from the body of each message, which is used as its deduplication ID. This avoids the need to set a deduplication ID when sending messages. Read more in our dedicated documentation on [creating queues](/queues/how-to/create-manage-queues/). + +## Credentials + +Credentials give services and platforms access to Scaleway Queues, enabling them to connect to the host system. Credentials for Scaleway Queues define whether the bearer is allowed to write, and/or read, and/or manage queues. Refer to our [credentials documentation](/queues/how-to/create-credentials/) for more information. + +## Dead-letter queue + +A **D**ead-**l**etter **q**ueue (DLQ), or **undelivered-message queue**, receives and holds messages that cannot be delivered to their destination queues. A DLQ must be of the same type (FIFO or Standard), in the same Project and in the same region as the queue(s) it serves. Each DLQ also has an associated parameter: [maximum receive count](#maximum-receive-count). A single queue can serve as dead-letter queue to multiple source queues. + +If you designate a queue as a DLQ and its [storage quota](/organizations-and-projects/additional-content/organization-quotas/#queues) is reached, messages will not be re-driven to the DLQ until enough free space is available again. If your DLQ is at its full quota, free up space by receiving and deleting messages from any queue in your Project. + +## FIFO + +FIFO stands for **F**irst **I**n **F**irst **O**ut, and represents a type of queue where the exact order of messages is preserved, and duplicate messages are not tolerated. As well as these specificities, FIFO queues support all the same features as the [Standard](#standard) queue type. Consider using FIFO queues for any use cases where the order of messages is critical, such as e-commerce order management systems, systems where one action should not happen until another has been completed, or first-come-first-served ticketing systems. + +## Message broker + +A message broker is a piece of software that allows applications, systems and services to communicate with each other and send/receive data. It facilitates the exchange of information by receiving messages from a producer, and transmitting them to a consumer. Scaleway Queues is a message broker tool based on the AWS SQS messaging system. + +## Maximum receive count + +The maximum receive count is a setting that can be configured for a [dead-letter queue](#dead-letter-queue). It defines how many times a message can be received by consumers from the source queue before being moved to the dead-letter queue. This value must be between 1 and 1,000. + +## Message retention period + +The message retention period is a setting that can be configured for a queue. It represents the length of time (in seconds) that messages are kept in the queue before being deleted. Setting a longer message retention period allows for a longer interval between a message being sent and it being received. Read more in our dedicated documentation on [creating queues](/queues/how-to/create-manage-queues/). + +## Messaging and Queuing + +Previously, Scaleway Messaging and Queuing was a single product that grouped together three different messaging protocols. It has now been split into three distinct products: [NATS](/nats/), [Queues](#queues), and [Topics and Events](/topics-and-events/). + +## Queue + +Creating a queue with [Scaleway Queues](#scaleway-queues) facilitates asynchronous communication between different microservices, applications, and platforms. You can create a queue, configure its delivery and message parameters, and then start sending messages to it. Messages are stored in the queue until they are processed and delivered, and deleted once consumed. [Read more about creating and configuring queues](/queues/how-to/create-manage-queues/), or check our [tutorial on creating a serverless scraping architecture using a queue](/tutorials/create-serverless-scraping/) to get an idea of what you can do with message queues. + +## Queue types + +When creating queues with Scaleway Queues, two queue types are available. [Standard](#standard) queues provide at-least-once delivery, while [FIFO](#fifo) queues offer first-in-first-out delivery, and (unlike Standard queues) guarantee that messages are delivered in order and without duplication. [Content-based deduplication](#content-based-deduplication) is only available for FIFO queue types. Find out more about creating queues with our [dedicated documentation](/queues/how-to/create-manage-queues/). + +## Queuing + +The message queuing model used by Scaleway Queues. It provides a pattern or framework for sending messages, which contrasts with the publish/subscribe model used by NATS and Topics and Events. Queuing is a form of asynchronous service-to-service communication. Whereas with the publish/subscribe model multiple subscribers can receive each message, with the queuing model, messages have just one destination. Messages are stored in the queue until they are processed and delivered, and they are deleted once consumed. This model is used in serverless and microservices architectures. + +## Queue volume + +Queue volume is one of the factors affecting the billing of Scaleway Queues. Queue volume is calculated as the number of messages in a queue, multiplied by the message size. Or, the sum of the size of all messages in a queue. + +## Region + +Scaleway Queues is available in multiple regions. A region designates the geographical area where the service is hosted. Refer to the [product availability table](/account/reference-content/products-availability/) to check which regions are available. + +## Scaleway Queues + +Scaleway Queues is a product for creating managed messaging queues based on AWS's [SQS](#sqs) protocol. It allows you to implement your messaging queues without the hassle of managing the infrastructure, scaling or updates. + +## SQS + +The Scaleway Queues product is based on the AWS SQS protocol. **S**imple **Q**ueue **S**ervice, or SQS, is a distributed message [queuing](#queuing) service that supports programmatic sending of messages via web service applications. + +## Standard + +Standard-type queues and topics represent the default queue/topic type, and offer an at-least-once message delivery system. Unlike [FIFO](#fifo) queues and topics, standard queues provide only best-effort attempts to deliver messages in order. At-least-once delivery means that it is possible under rare circumstances that the same message may be received more than once. + +## Visibility timeout + +Visibility timeout is a setting that can be configured for a Scaleway queue. It represents the length of time (in seconds) during which, after a message is received, the queue hides it, so it cannot be received again by the same or other consumers. This is useful as the queue itself does not automatically delete messages once they are received, and so prevents consumers from receiving the same message many times before they have finished processing it. Read more in our dedicated documentation on [creating queues](/queues/how-to/create-manage-queues/). diff --git a/pages/queues/faq.mdx b/pages/queues/faq.mdx new file mode 100644 index 0000000000..b14882983d --- /dev/null +++ b/pages/queues/faq.mdx @@ -0,0 +1,31 @@ +--- +meta: + title: Queues FAQ + description: Discover Scaleway Queues, and get answers to common questions about the capabilities of the product, how to manage your queues, billing and more. +content: + h1: Queues FAQ + paragraph: Discover Scaleway Queues, and get answers to common questions about the capabilities of the product, how to manage your queues, billing and more. +dates: + validation: 2025-04-02 + posted: 2025-04-02 +categories: + - serverless + - queues +productIcon: SqsProductIcon +--- + +## What is Scaleway Queues? + +Scaleway Queues is a product for creating managed message queues, using an in-house implementation of AWS SQS protocol. Queues allows you to implement your message queues without the hassle of managing the infrastructure, scaling or updates. Message queues are ideal for facilitating asynchronous job processing and communication between microservices. + +## What is the relationship between Scaleway Queues and AWS SQS? + +**S**imple **Q**ueue **S**ervice, or SQS, is AWS's distributed message [queuing](#queuing) service, that supports programmatic sending of messages via web service applications. Scaleway has developed its own service based on AWS SQS protocol. Scaleway Queues does not have any dependencies on the AWS SQS infrastructure or offering, we use our own stack which is fully self-hosted and developed in-house. + +## Is the Scaleway Queues gateway compatible with my application, framework or tool? + +We currently implement the API endpoints listed [here](/queues/reference-content/queues-support/), which makes Scaleway Queues compatible with the AWS SDK as well as many other tools and frameworks including [KEDA](https://keda.sh/) and [Symfony](https://symfony.com/). Note that you need to specify both Regions and URL to ensure compatibility. + +## How is Scaleway Queues billed? + +Billing is based on [queue volume](/queues/concepts/#queue-volume) - the combined size of the messages travelling through queues. For full pricing details, see our [dedicated pricing page](https://www.scaleway.com/en/pricing/). \ No newline at end of file diff --git a/pages/queues/how-to/assets/scaleway-queues-create-queue.webp b/pages/queues/how-to/assets/scaleway-queues-create-queue.webp new file mode 100644 index 0000000000..1d5a1b0093 Binary files /dev/null and b/pages/queues/how-to/assets/scaleway-queues-create-queue.webp differ diff --git a/pages/queues/how-to/assets/scaleway-queues-gen-creds.webp b/pages/queues/how-to/assets/scaleway-queues-gen-creds.webp new file mode 100644 index 0000000000..cdc6e0a0aa Binary files /dev/null and b/pages/queues/how-to/assets/scaleway-queues-gen-creds.webp differ diff --git a/pages/queues/how-to/assets/scaleway-queues-queue-settings.webp b/pages/queues/how-to/assets/scaleway-queues-queue-settings.webp new file mode 100644 index 0000000000..16bd1754cf Binary files /dev/null and b/pages/queues/how-to/assets/scaleway-queues-queue-settings.webp differ diff --git a/pages/queues/how-to/assets/scaleway-queues-update-creds.webp b/pages/queues/how-to/assets/scaleway-queues-update-creds.webp new file mode 100644 index 0000000000..31f163670d Binary files /dev/null and b/pages/queues/how-to/assets/scaleway-queues-update-creds.webp differ diff --git a/pages/queues/how-to/create-credentials.mdx b/pages/queues/how-to/create-credentials.mdx new file mode 100644 index 0000000000..0a50b3c01a --- /dev/null +++ b/pages/queues/how-to/create-credentials.mdx @@ -0,0 +1,50 @@ +--- +meta: + title: How to create credentials for Scaleway Queues + description: Learn how to create credentials for Scaleway Queues. Securely manage access and ensure seamless integration with this step-by-step guide. +content: + h1: How to create credentials for Scaleway Queues + paragraph: Learn how to create credentials for Scaleway Queues. Securely manage access and ensure seamless integration with this step-by-step guide. +tags: credentials queues messaging queuing key token +categories: + - serverless + - queues +dates: + validation: 2025-04-02 + posted: 2025-04-02 +--- + +This page shows how to create [credentials](/queues/concepts/#credentials) for Scaleway Queues. Credentials give their bearer (e.g. services and platforms) access to your messaging queue service. + +You can create multiple sets of credentials for Scaleway Queues. Credentials for Queues are granular: you can define the level of access that they should give. Credentials give the specified level of access to all queues that you create in the [region](/queues/concepts/#region) they are scoped to. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization + +1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. A list of your queues displays. + +2. Click the **Credentials** tab. + +3. Click **Generate credentials**. A pop-up displays: + + + +4. Choose a region that these credentials should be scoped to. + +5. Enter a name for these credentials. + +6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. + +7. Click **Generate credentials**. + + The credentials are created. The access key and secret key are displayed, and you are invited to copy them. + + + This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. + + +8. Copy and save the credentials, before closing the window. + + You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. \ No newline at end of file diff --git a/pages/messaging/how-to/create-manage-queues.mdx b/pages/queues/how-to/create-manage-queues.mdx similarity index 75% rename from pages/messaging/how-to/create-manage-queues.mdx rename to pages/queues/how-to/create-manage-queues.mdx index b0c93eeb45..c4135e7589 100644 --- a/pages/messaging/how-to/create-manage-queues.mdx +++ b/pages/queues/how-to/create-manage-queues.mdx @@ -1,19 +1,20 @@ --- meta: title: How to create and manage queues - description: Learn to create and manage Scaleway Queues. This guide helps you efficiently handle messaging queues for seamless operations. + description: Learn to create and manage queues with Scaleway Queues. This guide helps you efficiently handle messaging queues for seamless operations. content: h1: How to create and manage queues - paragraph: Learn to create and manage Scaleway Queues. This guide helps you efficiently handle messaging queues for seamless operations. + paragraph: Learn to create and manage queues with Scaleway Queues. This guide helps you efficiently handle messaging queues for seamless operations. tags: messaging queuing queues sqs categories: - - serverless + - serverless + - queues dates: - validation: 2024-10-17 + validation: 2025-04-02 posted: 2022-08-11 --- -This page shows how to create and manage your Scaleway [Queues](/messaging/concepts/#queue) (formerly part of the **Messaging and Queuing** product). +This page shows how to create and manage your queues with [Scaleway Queues](/queues/concepts/#queue) (formerly part of the **Messaging and Queuing** product). @@ -24,11 +25,11 @@ This page shows how to create and manage your Scaleway [Queues](/messaging/conce 1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. -2. Click **Create queue**. The Queue creation wizard displays. +2. Click **Create queue**. The queue creation wizard displays. -3. Select the [region](/messaging/concepts/#region) in which you want to create the queue. +3. Select the [region](/queues/concepts/#region) in which you want to create the queue. 4. Enter a **name** for your queue. The name must be no more than 80 characters, and consist only of alphanumeric characters, hyphens, and underscores. Alternatively, you can go with the auto-generated name suggested for you. @@ -41,7 +42,7 @@ This page shows how to create and manage your Scaleway [Queues](/messaging/conce - **Message retention period**: The length of time (in seconds) that messages are kept in the queue before being deleted. Setting a longer message retention period allows for a longer interval between a message being sent and it being received. The default value is 60 seconds. The value must be between 60 seconds and 1 290 600 seconds (14 days). - **Maximum message size**: The maximum size (in kilobytes) of a message that can be sent to the queue. Messages greater than the defined size will be rejected. The default value is 256 KB. The value must be between 1 KB and 256 KB. - **Content Based Deduplication**: This setting is only available for FIFO queues. Enable content-based deduplication if the message body is guaranteed to be unique for each message. A unique hash value is generated from the body of each message, which is used as its deduplication ID. This avoids the need to set a deduplication ID when sending messages. - - **Dead-letter queue**: Designate another queue to [receive undelivered messages](/messaging/concepts/#dead-letter-queue) from this queue. If you select this option, you are prompted to select an existing queue as dead-letter queue. This queue must be of the same type, in the same Project and in the same region as the queue you are creating. You must also enter a value for the **maximum receive count**: how many times a message can be received by consumers from the source queue before being moved to the dead-letter queue. + - **Dead-letter queue**: Designate another queue to [receive undelivered messages](/queues/concepts/#dead-letter-queue) from this queue. If you select this option, you are prompted to select an existing queue as dead-letter queue. This queue must be of the same type, in the same Project and in the same region as the queue you are creating. You must also enter a value for the **maximum receive count**: how many times a message can be received by consumers from the source queue before being moved to the dead-letter queue. 7. Click **Create queue** to finish. @@ -50,7 +51,7 @@ You are returned to the **Queues** tab, where your newly-created queue now displ Go further by clicking on the queue's name to access its **Settings** page and see additional information such as its ARN (Amazon Resource Name) and configuration parameters. -Remember that you need to [create credentials](/messaging/how-to/create-credentials/) in order to access your queues from an API or CLI. Sending messages to queues requires that credentials have the `can_publish` permission, while receiving messages from queues requires the `can_receive` permission. You can create separate credentials if you need to isolate these two roles in your application. +Remember that you need to [create credentials](/queues/how-to/create-credentials/) in order to access your queues from an API or CLI. Sending messages to queues requires that credentials have the `can_publish` permission, while receiving messages from queues requires the `can_receive` permission. You can create separate credentials if you need to isolate these two roles in your application. ## How to modify a queue's configuration @@ -59,7 +60,7 @@ You can modify the visibility timeout, message retention period and maximum mess 1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) of the queue you want to modify. +2. Use the drop-down menu to select the [region](/queues/concepts/#region) of the queue you want to modify. 3. Click the queue you wish to modify. The queue's **Settings** page displays: @@ -75,7 +76,7 @@ You can use the **Purge** feature to delete all messages from a queue. 1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) of the queue you want to configure. +2. Use the drop-down menu to select the [region](/queues/concepts/#region) of the queue you want to configure. 3. Either: - Click the queue you wish to purge. The queue's **Settings** page displays. Click the **Purge** button in the top right corner. @@ -91,7 +92,7 @@ When you no longer want a queue, you can delete it. This action is irreversible 1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) of the queue you want to configure. +2. Use the drop-down menu to select the [region](/queues/concepts/#region) of the queue you want to configure. 3. Either: - Click the queue you wish to delete. The queue's **Settings** page displays. Click the **Delete queue** button in the bottom right corner. diff --git a/pages/queues/how-to/index.mdx b/pages/queues/how-to/index.mdx new file mode 100644 index 0000000000..3a24970e46 --- /dev/null +++ b/pages/queues/how-to/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Queues - How Tos + description: Queues How Tos +content: + h1: Queues - How Tos + paragraph: Queues How Tos +--- diff --git a/pages/queues/how-to/manage-credentials.mdx b/pages/queues/how-to/manage-credentials.mdx new file mode 100644 index 0000000000..88ce527725 --- /dev/null +++ b/pages/queues/how-to/manage-credentials.mdx @@ -0,0 +1,59 @@ +--- +meta: + title: How to manage credentials for Scaleway Queues + description: Master managing credentials for Scaleway Queues. Follow this guide to securely update, rotate, and control access to your messaging services. +content: + h1: How to manage credentials for Scaleway Queues + paragraph: Master managing credentials for Scaleway Queues. Follow this guide to securely update, rotate, and control access to your messaging services. +dates: + validation: 2025-04-03 + posted: 2025-04-03 +tags: manage credentials messaging queuing permissions update revoke +categories: + - serverless + - queues +--- + +Credentials give their bearer (e.g. services and platforms) access to your Queues service. + +This page shows how to manage [credentials](/queues/concepts/#credentials) for Scaleway Queues. Credentials can be updated to change their permissions, or revoked entirely. Once credentials are revoked, any user trying to use the credentials to connect to the service will be denied. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- Valid [credentials](/queues/how-to/create-credentials/) + +## How to update Queues credentials + +1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. + +2. Click the **Credentials** tab. + +3. Use the drop-down menu to select the [region](/queues/concepts/#region) containing the credentials you want to update. + +4. Click the button next to the credentials you want to update, and select **Update credentials**. A pop-up displays, such as the one below for Queues: + + + +5. Make the required updates to your credentials. You can modify the name, and the permissions. + +6. Click **Update credentials**. + + The credentials are updated and you are returned to the product's **Credentials** listing. + +## How to revoke Queues credentials + +1. Click **Queues**in the **Serverless** section of the Scaleway console side menu. + +2. Click the **Credentials** tab. + +3. Use the drop-down menu to select the [region](/queues/concepts/#region) containing the credentials you want to revoke. + +4. Click the button next to the credentials you want to revoke and select **Revoke**. + + A pop-up displays, warning you that this action is irreversible and the key will no longer be able to access your service. + +5. Click **Revoke credentials**. + + The credentials are revoked and you are returned to the product's **Credentials** listing. \ No newline at end of file diff --git a/pages/queues/how-to/monitor-queues-cockpit.mdx b/pages/queues/how-to/monitor-queues-cockpit.mdx new file mode 100644 index 0000000000..624fae6b6e --- /dev/null +++ b/pages/queues/how-to/monitor-queues-cockpit.mdx @@ -0,0 +1,43 @@ +--- +meta: + title: How to monitor Queues with Scaleway Cockpit + description: Monitor your Queues services with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. +content: + h1: How to monitor Queues with Scaleway Cockpit + paragraph: Monitor your Queues services with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. +tags: messaging queuing queues cockpit metrics observability +categories: + - serverless + - queues +dates: + validation: 2025-04-03 + posted: 2025-04-03 +--- + +You can view metrics for your Queues services via [Scaleway Cockpit](/cockpit/quickstart/). This allows you to monitor your queues and messages at a glance. There are two steps to complete to view your metrics for the first time with Cockpit: + +1. Generate your Grafana credentials +2. Access the product's metrics dashboard + +These steps are described below. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization + +## How to generate Grafana credentials + +To view your metrics with Cockpit, you will use a Grafana dashboard which is accessible from the Scaleway console. First, you must create a user and their associated credentials (a username and password) for Grafana. This can be done directly from the Scaleway console, [by following this procedure](/cockpit/how-to/retrieve-grafana-credentials/). + +## How to access your Queues dashboard and view your metrics + +1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. + +2. Click the **Metrics** tab. + +3. Click **Open Grafana metrics dashboard**. + +4. Enter your Grafana username and password to log in. + + You are directed to the Queues dashboard, where you can view all your metrics. \ No newline at end of file diff --git a/pages/queues/index.mdx b/pages/queues/index.mdx new file mode 100644 index 0000000000..e33c4d05ff --- /dev/null +++ b/pages/queues/index.mdx @@ -0,0 +1,73 @@ +--- +meta: + title: Queues Documentation + description: Explore Scaleway Queues. Simplify your microservice workflows with scalable, reliable, and cost-effective message handling solutions. +--- + + + +## Getting Started + + + + + + + + + +## Tutorials + + + + + + + + +## Changelog + + \ No newline at end of file diff --git a/pages/queues/quickstart.mdx b/pages/queues/quickstart.mdx new file mode 100644 index 0000000000..498bd53fa0 --- /dev/null +++ b/pages/queues/quickstart.mdx @@ -0,0 +1,98 @@ +--- +meta: + title: Queues - Quickstart + description: Get started with Scaleway Queues. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. +content: + h1: Queues - Quickstart + paragraph: Get started with Scaleway Queues. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. +dates: + validation: 2025-04-01 + posted: 2025-04-01 +tags: messaging queuing queueing quickstart messaging-and-queuing sqs message-broker queues +categories: + - serverless + - queues +--- + +Scaleway Queues is a managed message broker service that allows you to transfer messages between different microservices and platforms via queues. This enables decoupled applications to "talk" to each other effectively even if they are not otherwise compatible. Scaleway Queues enables and simplifies microservices application development and allows you to build highly scalable, reliable, distributed applications. + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization + +## How to create credentials for Queues + +Credentials for Queues are granular: you can define the level of access that they should give. Credentials give the specified level of access to all queues that you create in the region they are scoped to. + +1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. A list of your queues displays. + +2. Click the **Credentials** tab. + +3. Click **Generate credentials**. A pop-up displays: + + + +4. Choose a region that these credentials should be scoped to. + +5. Enter a name for these credentials. + +6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. + +7. Click **Generate credentials**. + + The credentials are created. The access key and secret key are displayed, and you are invited to copy them. + + + This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. + + +8. Copy and save the credentials, before closing the window. + + You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. + +## How to create queues + +1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. + +2. Click **Create queue**. The queue creation wizard displays. + + + +3. Select the [region](/queues/concepts/#region) in which you want to create the queue. + +4. Enter a **name** for your queue. The name must be no more than 80 characters, and consist only of alphanumeric characters, hyphens, and underscores. Alternatively, you can go with the auto-generated name suggested for you. + +5. Choose your **Queue type**, from one of the following: + - **Standard**: Standard Queues ensure at-least-once delivery. The exact order of messages in the queue is not preserved. + - **FIFO**: FIFO Queues (**F**irst **In** **F**irst **O**ut) preserves the exact ordering of messages. + +6. Configure your queue's **parameters**. The following parameters can be defined: + - **Visibility timeout**: The length of time (in seconds) during which, after a message is received, it is hidden and cannot be received again by the same or other consumers. This is useful as the queue itself does not automatically delete messages once they are received, and so prevents consumers from receiving the same message many times before they have finished processing it. Therefore, the value set here should be informed by the expected length of time it will take consumers to process messages. The default value is 30 seconds. The value must be between 1 second and 43 200 seconds (12 hours). + - **Message retention period**: The length of time (in seconds) that messages are kept in the queue before being deleted. Setting a longer message retention period allows for a longer interval between a message being sent and it being received. The default value is 60 seconds. The value must be between 60 seconds and 1 209 600 seconds (14 days). + - **Maximum message size**: The maximum size (in kilobytes) of a message that can be sent to the queue. Messages greater than the defined size will be rejected. The default value is 256 KB. The value must be between 1 KB and 256 KB. + - **Content Based Deduplication**: This setting is only available for FIFO queues. Enable content-based deduplication if the message body is guaranteed to be unique for each message. A unique hash value is generated from the body of each message, which is used as its deduplication ID. This avoids the need to set a deduplication ID when sending messages. + - **Dead-letter queue**: Designate another queue to receive undelivered messages from this queue. If you select this option, you are prompted to select an existing queue as dead-letter queue. This queue must be of the same type, in the same Project and in the same region as the queue you are creating. You must also enter a value for the **maximum receive count** (how many times a message can be received from the source queue before being moved to the dead-letter queue). + +7. Click **Create queue** to finish. + +You are returned to the **Queues** tab, where your newly-created queue now displays. The queue's URL is also displayed here, for use in your API/CLI operations. + +## How to send and receive messages + +All further actions related to sending messages to queues can be done via a supported CLI or SDK. See our documentation on the [SQS CLI and SDKs](/queues/reference-content/queues-overview#further-actions) for more information. You can also check out [our tutorial](/tutorials/create-serverless-scraping/) on creating a serverless scraping architecture with Scaleway Queues. + +## How to delete a queue + +When you no longer want a queue, you can delete it. This action is irreversible and deletes the queue along with any queued messages. + +1. Click **Queues** in the **Serverless** section of the Scaleway console side menu. + +2. Use the drop-down menu to select the [region](/queues/concepts/#region) of the queue you want to configure. + +3. Either: + - Click the queue you wish to delete. The queue's **Settings** page displays. Click the **Delete queue** button in the bottom right corner. + - Click the icon next to the queue you wish to delete, then select **Delete** from the menu that displays. + + A pop-up asks you to confirm that you understand this action will delete the queue and all your queued messages. + +4. Type **DELETE** and click **Delete queue**. \ No newline at end of file diff --git a/pages/queues/reference-content/index.mdx b/pages/queues/reference-content/index.mdx new file mode 100644 index 0000000000..005f2eb239 --- /dev/null +++ b/pages/queues/reference-content/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Queues - Additional content + description: Queues additional content +content: + h1: Queues - Additional content + paragraph: Queues additional content +--- diff --git a/pages/queues/reference-content/limitations.mdx b/pages/queues/reference-content/limitations.mdx new file mode 100644 index 0000000000..8588a6d55c --- /dev/null +++ b/pages/queues/reference-content/limitations.mdx @@ -0,0 +1,23 @@ +--- +meta: + title: Queues Limitations + description: Learn about the current limitations of Scaleway Queues +content: + h1: Queues Limitations + paragraph: Learn about the current limitations of Scaleway Queues +tags: messaging limitations space size storage payload max-streams max-consumers max-subscribers max-topics max-queues visibility-timeout +dates: + validation: 2025-04-02 + posted: 2025-04-02 +categories: + - serverless + - queues +--- + +## Usage limits + +For the usage limits that apply when using Scaleway Queues, see the dedicated sections on our [Organization quotas](/organizations-and-projects/additional-content/organization-quotas/) page. Limits (quotas) apply to, for example, the maximum number of queues and consumers/subscribers, as well as to message retention duration and storage. + +## VPC + +Queues is not currently compatible with [Scaleway VPC](/vpc/quickstart/). diff --git a/pages/queues/reference-content/queues-overview.mdx b/pages/queues/reference-content/queues-overview.mdx new file mode 100644 index 0000000000..bb2204055f --- /dev/null +++ b/pages/queues/reference-content/queues-overview.mdx @@ -0,0 +1,62 @@ +--- +meta: + title: Scaleway Queues Overview + description: Learn about the Scaleway Queues messaging system +content: + h1: Scaleway Queues Overview + paragraph: Learn about the Scaleway Queues messaging system +tags: messaging sqs aws queuing publish-subscribe message-queue +categories: + - serverless + - queues +dates: + validation: 2024-10-18 + posted: 2023-01-04 +--- + +## What is Scaleway Queues? + +Scaleway Queues is a product for creating managed message queues, using an in-house implementation of AWS SQS protocol. Queues allows you to implement your message queues without the hassle of managing the infrastructure, scaling or updates. Message queues are ideal for facilitating asynchronous job processing and communication between microservices. + +## What is SQS? + +**S**imple **Q**ueue **S**ervice, or SQS, is AWS's distributed message [queuing](#queuing) service, that supports programmatic sending of messages via web service applications. It became generally available in 2006, and is a highly scalable queuing service that facilitates the decoupling of software systems. + +## What is the relationship between Scaleway Queues and AWS SQS? + +Scaleway has developed its own service based on AWS SQS protocol. Queues does not have any dependencies on the AWS SQS infrastructure or offering, we use our own stack which is fully self-hosted and developed in-house. + +Scaleway Queues provides a gateway that enables you to connect any existing SQS-connected applications without having to significantly modify your code baseline. + + + Some SQS features are not yet supported. Refer to our [dedicated documentation page](/queues/reference-content/queues-support/) for more information. + + +## Credentials + +You must [create credentials](/queues/how-to/create-credentials/) to give your applications permission to connect to the Scaleway Queues service. + +Credentials are scoped to your Scaleway Queues service at [Project](/organizations-and-projects/concepts/#project)-level. You can choose to give each set of credentials the required level of permissions: + + - **Read**: receive messages from queues and topics. + - **Write**: send messages to queues and publish in topics. + - **Manage**: create or edit resources (such as queues and topics). + +## Creating queues + +You can [create queues](/queues/how-to/create-manage-queues/) via the Scaleway console. You can choose to create either a Standard or FIFO queue, and tweak parameters such as visibility timeout, message retention period, maximum message size and content based deduplication. + +## Further actions + +All further actions such as sending messages can be done using the AWS CLI or AWS SDKs. Check out our documentation to help you get started with the [AWS CLI](/queues/api-cli/connect-aws-cli/) or [AWS SDKs](/queues/api-cli/python-node-queues/). + +## Queues resources + +The following resources may be helpful: + + - [How to create a serverless scraping architecture, with Scaleway Queues, Serverless Functions and Managed Databases](/tutorials/create-serverless-scraping/) + - [Official AWS SQS Documentation](https://docs.aws.amazon.com/sqs/index.html) + - Further information on supported API features: + - [SQS](/queues/reference-content/queues-support/) + - [Official AWS CLI Documentation](https://aws.amazon.com/cli/) + - [Official AWS SDK Documentation](https://aws.amazon.com/developer/tools/) \ No newline at end of file diff --git a/pages/messaging/reference-content/sqs-support.mdx b/pages/queues/reference-content/queues-support.mdx similarity index 99% rename from pages/messaging/reference-content/sqs-support.mdx rename to pages/queues/reference-content/queues-support.mdx index c7f310df70..9c11b973a0 100644 --- a/pages/messaging/reference-content/sqs-support.mdx +++ b/pages/queues/reference-content/queues-support.mdx @@ -8,6 +8,7 @@ content: tags: messaging supported actions sqs aws api categories: - serverless + - queues dates: validation: 2024-10-18 posted: 2023-01-04 diff --git a/pages/scaleway-cli/reference-content/cli-reference.mdx b/pages/scaleway-cli/reference-content/cli-reference.mdx index 94c3f997c8..4ee1c60dcc 100644 --- a/pages/scaleway-cli/reference-content/cli-reference.mdx +++ b/pages/scaleway-cli/reference-content/cli-reference.mdx @@ -22,7 +22,7 @@ The [Scaleway command line interface (CLI)](https://github.com/scaleway/scaleway | Instances | [Creating and managing an Instance with the CLI (v2)](/instances/api-cli/creating-managing-instances-with-cliv2/) | | Instances | [Managing Instance snapshots with the CLI (v2)](/instances/api-cli/managing-instance-snapshot-via-cli/) | | Elastic Metal | [Creating and Managing Elastic Metal servers with the CLI](/elastic-metal/api-cli/elastic-metal-with-cli/) | -| NATS | [Using the NATS CLI](/messaging/api-cli/nats-cli/) | +| NATS | [Using the NATS CLI](/nats/api-cli/nats-cli/) | | Kubernetes | [Creating and managing a Kubernetes Kapsule with the CLI (v2)](/kubernetes/api-cli/creating-managing-kubernetes-lifecycle-cliv2/) | | Iot Hub | [Getting started with the IoT Hub CLI](/iot-hub/api-cli/getting-started-with-iot-hub-cli/) | diff --git a/pages/serverless-containers/concepts.mdx b/pages/serverless-containers/concepts.mdx index 872b60ac87..dd4acd80f2 100644 --- a/pages/serverless-containers/concepts.mdx +++ b/pages/serverless-containers/concepts.mdx @@ -141,7 +141,7 @@ Containers in the same namespace can share environment variables, secrets, and a ## NATS trigger -A NATS trigger is a mechanism that connects a container to a [NATS](/messaging/concepts/#nats) subject and invokes the container automatically whenever a message is published to the subject. +A NATS trigger is a mechanism that connects a container to a [NATS](/nats/concepts/#nats) subject and invokes the container automatically whenever a message is published to the subject. For each message that is sent to a NATS subject, the NATS trigger reads the message and invokes the associated container with the message as the input parameter. The container can then process the message and perform any required actions, such as updating a database or sending a notification. @@ -162,7 +162,7 @@ Refer to the [dedicated FAQ](/serverless-containers/faq/#how-can-i-configure-acc ## Queue trigger -A queue trigger is a mechanism that connects a container to a queue created with [Scaleway Queues](/messaging/concepts/#queues), and invokes the container automatically whenever a message is added to the queue. +A queue trigger is a mechanism that connects a container to a queue created with [Scaleway Queues](/queues/concepts/#scaleway-queues), and invokes the container automatically whenever a message is added to the queue. For each message that is sent to a queue, the trigger reads the message and invokes the associated container with the message as the input parameter. The container can then process the message and perform any required actions, such as updating a database or sending a notification. diff --git a/pages/serverless-containers/faq.mdx b/pages/serverless-containers/faq.mdx index 8b8a32811a..89d4739b70 100644 --- a/pages/serverless-containers/faq.mdx +++ b/pages/serverless-containers/faq.mdx @@ -165,7 +165,7 @@ There are several ways to deploy containers. Refer to the [dedicated documentati ### How do I integrate my serverless solutions with other Scaleway services? -Integration is straightforward. Serverless Functions and Containers can be triggered by events from [Queues](/messaging/concepts/#queues) and [Topics and Events](/messaging/concepts/#topics-and-events), and can easily communicate with services like [Managed Databases](/managed-databases-for-postgresql-and-mysql/) or [Serverless databases](/serverless-sql-databases/). [Serverless Jobs](/serverless-jobs/) can pull data from [Object Storage](/object-storage/), or output processed results into a database. With managed connectors, APIs, and built-in integrations, linking to the broader Scaleway ecosystem is seamless. +Integration is straightforward. Serverless Functions and Containers can be triggered by events from [Queues](/queues/concepts/#scaleway-queues) and [Topics and Events](/topics-and-events/concepts/#topics-and-events), and can easily communicate with services like [Managed Databases](/managed-databases-for-postgresql-and-mysql/) or [Serverless databases](/serverless-sql-databases/). [Serverless Jobs](/serverless-jobs/) can pull data from [Object Storage](/object-storage/), or output processed results into a database. With managed connectors, APIs, and built-in integrations, linking to the broader Scaleway ecosystem is seamless. ### Where should I host my container images for deployment ? diff --git a/pages/serverless-containers/how-to/add-trigger-to-a-container.mdx b/pages/serverless-containers/how-to/add-trigger-to-a-container.mdx index 9aec60ed39..751a423658 100644 --- a/pages/serverless-containers/how-to/add-trigger-to-a-container.mdx +++ b/pages/serverless-containers/how-to/add-trigger-to-a-container.mdx @@ -25,8 +25,8 @@ A trigger can be an HTTP request, a message from a queue or stream, a CRON sched - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization - Deployed a container from [Scaleway Container Registry](/serverless-containers/how-to/deploy-container/) or an [external registry](/serverless-containers/how-to/deploy-container/) -- [Created credentials](/messaging/how-to/create-credentials/) for Scaleway Queues -- [Created a queue](/messaging/how-to/create-manage-queues/) +- [Created credentials](/queues/how-to/create-credentials/) for Scaleway Queues +- [Created a queue](/queues/how-to/create-manage-queues/) You can create triggers on private containers, but to update the privacy of a container from **public** to **private**, you must recreate the existing **Scaleway Queues** and **Scaleway NATS** triggers after the privacy change. We are actively working to make this operation as seamless as possible. @@ -44,7 +44,7 @@ You must have at least the `MessagingAndQueuingReadOnly` permission in the Proje Refer to the [permissions sets documentation](/iam/reference-content/permission-sets/) for more information. -[Queue triggers](/serverless-containers/concepts/#queue-trigger) allow you to automatically invoke a container using events stored in a [Scaleway queue](/messaging/concepts/#queues). +[Queue triggers](/serverless-containers/concepts/#queue-trigger) allow you to automatically invoke a container using events stored in a [Scaleway queue](/queues/concepts/#scaleway-queues). Only queues created with the Scaleway Queues product are compatible with Serverless Containers. @@ -72,9 +72,9 @@ You must have at least the `MessagingAndQueuingReadOnly` permission in the Proje Refer to the [permissions sets documentation](/iam/reference-content/permission-sets/) for more information. -[NATS triggers](/serverless-containers/concepts/#nats-trigger) allow you to automatically invoke a container using messages sent in a [NATS](/messaging/concepts/#nats) subject. +[NATS triggers](/serverless-containers/concepts/#nats-trigger) allow you to automatically invoke a container using messages sent in a [NATS](/nats/concepts/#nats) subject. -[Scaleway NATS subjects](/messaging/quickstart/#quickstart-for-nats) are compatible with Serverless Containers. +[Scaleway NATS subjects](/nats/quickstart/) are compatible with Serverless Containers. 1. Click **Containers** in the **Serverless** section of the side menu. The containers page displays. 2. Click the relevant containers namespace. diff --git a/pages/serverless-functions/concepts.mdx b/pages/serverless-functions/concepts.mdx index 445438926a..f9c4b7477d 100644 --- a/pages/serverless-functions/concepts.mdx +++ b/pages/serverless-functions/concepts.mdx @@ -107,7 +107,7 @@ Functions in the same namespace can share environment variables and access token ## NATS trigger -A NATS trigger is a mechanism that connects a function to a [NATS](/messaging/concepts/#nats) subject and invokes the function automatically whenever a message is published to the subject. +A NATS trigger is a mechanism that connects a function to a [NATS](/nats/concepts/#nats) subject and invokes the function automatically whenever a message is published to the subject. For each message that is sent to a NATS subject, the NATS trigger reads the message and invokes the associated function with the message as the input parameter. The function can then process the message and perform any required actions, such as updating a database or sending a notification. @@ -122,7 +122,7 @@ Refer to the [dedicated FAQ](/serverless-functions/faq/#how-can-i-configure-acce ## Queue trigger -A queue trigger is a mechanism that connects a function to a queue created with [Scaleway Queues](/messaging/concepts/#queues), and invokes the function automatically whenever a message is added to the queue. +A queue trigger is a mechanism that connects a function to a queue created with [Scaleway Queues](/queues/concepts/#scaleway-queues), and invokes the function automatically whenever a message is added to the queue. For each message that is sent to a queue, the trigger reads the message and invokes the associated function with the message as the input parameter. The function can then process the message and perform any required actions, such as updating a database or sending a notification. diff --git a/pages/serverless-functions/faq.mdx b/pages/serverless-functions/faq.mdx index 614596c689..0f3f681d62 100644 --- a/pages/serverless-functions/faq.mdx +++ b/pages/serverless-functions/faq.mdx @@ -188,7 +188,7 @@ There are [several ways to deploy Serverless Functions](/serverless-functions/re ### How do I integrate my serverless solutions with other Scaleway services? -Integration is straightforward. Serverless Functions and Containers can be triggered by events from [Queues](/messaging/concepts/#queues) and [Topics and Events](/messaging/concepts/#topics-and-events), and can easily communicate with services like [Managed Databases](/managed-databases-for-postgresql-and-mysql/) or [Serverless databases](/serverless-sql-databases/). [Serverless Jobs](/serverless-jobs/) can pull data from [Object Storage](/object-storage/), or output processed results into a database. With managed connectors, APIs, and built-in integrations, linking to the broader Scaleway ecosystem is seamless. +Integration is straightforward. Serverless Functions and Containers can be triggered by events from [Queues](/queues/concepts/#queues) and [Topics and Events](/topics-and-events/concepts/#topics-and-events), and can easily communicate with services like [Managed Databases](/managed-databases-for-postgresql-and-mysql/) or [Serverless databases](/serverless-sql-databases/). [Serverless Jobs](/serverless-jobs/) can pull data from [Object Storage](/object-storage/), or output processed results into a database. With managed connectors, APIs, and built-in integrations, linking to the broader Scaleway ecosystem is seamless. ### How do Serverless Functions namespaces and Container Registry namespaces interact? diff --git a/pages/serverless-functions/how-to/add-trigger-to-a-function.mdx b/pages/serverless-functions/how-to/add-trigger-to-a-function.mdx index 5dc53a82af..8cbc1fb164 100644 --- a/pages/serverless-functions/how-to/add-trigger-to-a-function.mdx +++ b/pages/serverless-functions/how-to/add-trigger-to-a-function.mdx @@ -26,8 +26,8 @@ A trigger can be an HTTP request, a message from a queue or stream, a CRON sched - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization - Created a [functions namespace](/serverless-functions/how-to/create-manage-delete-functions-namespace/) - Created a [function](/serverless-functions/how-to/create-a-function/) -- [Created credentials](/messaging/how-to/create-credentials/) for Scaleway Queues -- [Created a queue](/messaging/how-to/create-manage-queues/) +- [Created credentials](/queues/how-to/create-credentials/) for Scaleway Queues +- [Created a queue](/queues/how-to/create-manage-queues/) You can create triggers on private functions, but to update the privacy of a function from **public** to **private**, you must recreate the existing **Queues** and **NATS** triggers after the privacy change. We are actively working to make this operation as seamless as possible. @@ -45,7 +45,7 @@ You must have at least the `MessagingAndQueuingReadOnly` permission in the Proje Refer to the [permissions sets documentation](/iam/reference-content/permission-sets/) for more information. -[Queue triggers](/serverless-functions/concepts/#queue-trigger) allow you to automatically invoke a function using events stored in a [queue](/messaging/concepts/#queue). +[Queue triggers](/serverless-functions/concepts/#queue-trigger) allow you to automatically invoke a function using events stored in a [queue](/queues/concepts/#queue). Only queues created with the Scaleway Queues product are compatible with Serverless Functions. @@ -72,9 +72,9 @@ Refer to the [permissions sets documentation](/iam/reference-content/permission- -[NATS triggers](/serverless-functions/concepts/#nats-trigger) allow you to automatically invoke a function using messages sent in a [NATS](/messaging/concepts/#nats) subject. +[NATS triggers](/serverless-functions/concepts/#nats-trigger) allow you to automatically invoke a function using messages sent in a [NATS](/nats/concepts/#nats) subject. -Scaleway [NATS subjects](/messaging/quickstart/#quickstart-for-nats) are compatible with Serverless Functions. +Scaleway [NATS subjects](/nats/quickstart/) are compatible with Serverless Functions. 1. Click **Functions** in the **Serverless** section of the side menu. The functions page displays. 2. Click the relevant functions namespace. diff --git a/pages/serverless-functions/reference-content/configure-trigger-inputs.mdx b/pages/serverless-functions/reference-content/configure-trigger-inputs.mdx index 5739222e4c..ebc77a6ae9 100644 --- a/pages/serverless-functions/reference-content/configure-trigger-inputs.mdx +++ b/pages/serverless-functions/reference-content/configure-trigger-inputs.mdx @@ -18,7 +18,7 @@ categories: This feature only allows a maximum of 10 in-flight requests. Functions that are configured with more than 10 replicas will not be used at full capacity. This limitation will be removed in the future. -Triggers get events from an input, such as a [Scaleway queue](/messaging/concepts/#queues), and forward them to a function, which will scale up according to its settings to accommodate the workload. This process uses back pressure, so that no new events are read if the function instances have not yet finished processing the previous ones. +Triggers get events from an input, such as a [Scaleway queue](/queues/concepts/#queue), and forward them to a function, which will scale up according to its settings to accommodate the workload. This process uses back pressure, so that no new events are read if the function instances have not yet finished processing the previous ones. Triggers only keep a buffer of the messages that are in-flight, they do not drain all the messages of the input in advance. diff --git a/pages/serverless-jobs/faq.mdx b/pages/serverless-jobs/faq.mdx index ef803d7f46..cfbc15021c 100644 --- a/pages/serverless-jobs/faq.mdx +++ b/pages/serverless-jobs/faq.mdx @@ -94,7 +94,7 @@ Serverless Jobs are billed on a pay-as-you-go basis, strictly on resource consum ### How do I integrate my serverless solutions with other Scaleway services? -Integration is straightforward. Serverless Functions and Containers can be triggered by events from [Queues](/messaging/concepts/#queues) and [Topics and Events](/messaging/concepts/#topics-and-events), and can easily communicate with services like [Managed Databases](/managed-databases-for-postgresql-and-mysql/) or [Serverless databases](/serverless-sql-databases/). [Serverless Jobs](/serverless-jobs/) can pull data from [Object Storage](/object-storage/), or output processed results into a database. With managed connectors, APIs, and built-in integrations, linking to the broader Scaleway ecosystem is seamless. +Integration is straightforward. Serverless Functions and Containers can be triggered by events from [Queues](/queues/) and [Topics and Events](/topics-and-events/), and can easily communicate with services like [Managed Databases](/managed-databases-for-postgresql-and-mysql/) or [Serverless databases](/serverless-sql-databases/). [Serverless Jobs](/serverless-jobs/) can pull data from [Object Storage](/object-storage/), or output processed results into a database. With managed connectors, APIs, and built-in integrations, linking to the broader Scaleway ecosystem is seamless. ### Can I update Serverless Jobs resources (vCPU and RAM) at any time? diff --git a/pages/topics-and-events/api-cli/connect-aws-cli.mdx b/pages/topics-and-events/api-cli/connect-aws-cli.mdx new file mode 100644 index 0000000000..978e6714d3 --- /dev/null +++ b/pages/topics-and-events/api-cli/connect-aws-cli.mdx @@ -0,0 +1,128 @@ +--- +meta: + title: Connecting Topics and Events to the AWS-CLI + description: This page explains how to connect Scaleway Topics and Events to the AWS-CLI +content: + h1: Connecting Topics and Events to the AWS-CLI + paragraph: This page explains how to connect Scaleway Topics and Events to the AWS-CLI +tags: messaging sns aws-cli cli aws sdk python boto +categories: + - serverless + - topics-and-events +dates: + validation: 2025-04-10 + posted: 2023-01-04 +--- + +The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services. With minimal configuration, you can start using the AWS-CLI with Scaleway Topics and Events. This allows you to create, list and manage your topics, send messages and much more, all from your command line. + +This guide shows you how to install the AWS-CLI and configure it to connect to Scaleway Topics and Events. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- Valid [credentials](/topics-and-events/how-to/create-credentials/) for Topics and Events + + + This page assumes you will use the AWS-CLI v1. + + +## How to install the AWS-CLI + +To interact with Scaleway Topics and Events, both `aws-cli` and `awscli-plugin-endpoint` need to be installed. The `awscli-plugin-endpoint` is a useful plugin to help people more easily access third-party providers such as Scaleway. + +Install both `aws-cli` and `awscli-plugin` using `pip`. + +``` +pip3 install awscli +pip3 install awscli-plugin-endpoint +``` + +## How to configure the AWS-CLI + +Now you have installed the AWS-CLI, you need to configure it for use with Scaleway Topics and Events. + +1. Create a file named `~/.aws/config` by running the following command: + ``` + aws configure set plugins.endpoint awscli_plugin_endpoint + ``` + + + With the most recent versions of awscli (1.29.0 or 2.13.0), the use of a plugin is not necessary. If you are using one of those versions and wish to skip this step, you can do so. Note that this will also affect your configuration file in the next step. + + +2. Open the `~/.aws/config` file you just created in a text editor and edit it as follows (the Topics and Events (SNS) endpoint URLs can be found in the console on the **Settings** page for your Topics and Events service). + ``` + [plugins] + endpoint = awscli_plugin_endpoint + [profile sns] + region = fr-par + sns = + endpoint_url = https://sns.mnq.fr-par.scaleway.com + ``` + + Optionally, you can also configure additional profiles by adding new blocks under `[sns]`. For example, you can add a profile for `[sqs]` if you are also using Scaleway Queues, or another profile, `[profile aws]`, to connect to the AWS SQS/SNS service if you want: + + ``` + [plugins] + endpoint = awscli_plugin_endpoint + [profile sns] + region = fr-par + sns = + endpoint_url = https://sns.mnq.fr-par.scaleway.com + [profile sqs] + region = fr-par + sqs = + endpoint_url = https://sqs.mnq.fr-par.scaleway.com + [profile aws] + region=eu-west-3 + output=json + ``` + + + If you are using the AWS-CLI v2, you must include the path to the plugin in your configuration file. Add `cli_legacy_plugin_path = ` to the `[plugins]` section, replacing `` with the corresponding path. + + + + If you are using aws 1.29.0 or 2.13.0 without the plugin, your configuration file should be as follows: + ``` + [profile sns] + region = fr-par + endpoint_url = https://sns.mnq.fr-par.scaleway.com + ``` + + + +3. Generate a credentials file using the following command: + ``` + aws configure + ``` +4. Open the `~/.aws/credentials` file you just created, and add the access key and secret key you saved when you generated your [credentials](/topics-and-events/how-to/create-credentials/): + ``` + [topics_events] + aws_access_key_id= + aws_secret_access_key= + ``` + + If you have other profiles, you can add a block to indicate their credentials too: + ``` + [queues] + aws_access_key_id= + aws_secret_access_key= + + [aws] + aws_access_key_id= + aws_secret_access_key= + ``` + +5. Test that everything is set up correctly with the following command: + ``` + aws topics_events list-topics + ``` + + Use the `--profile` option if you want to test it using a different profile. + + + Check out our dedicated documentation to find more common commands for getting started with the AWS CLI. The [Topics and Events guide](/topics-and-events/api-cli/topics-events-aws-cli/) walks you through creating and listing topics, sending messages. + diff --git a/pages/topics-and-events/api-cli/index.mdx b/pages/topics-and-events/api-cli/index.mdx new file mode 100644 index 0000000000..072212e100 --- /dev/null +++ b/pages/topics-and-events/api-cli/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Topics and Events - API/CLI Documentation + description: Topics and Events API/CLI Documentation +content: + h1: Topics and Events - API/CLI Documentation + paragraph: Topics and Events API/CLI Documentation +--- diff --git a/pages/messaging/api-cli/python-node-sns.mdx b/pages/topics-and-events/api-cli/python-node-topics-events.mdx similarity index 89% rename from pages/messaging/api-cli/python-node-sns.mdx rename to pages/topics-and-events/api-cli/python-node-topics-events.mdx index acd87ce96e..843460d910 100644 --- a/pages/messaging/api-cli/python-node-sns.mdx +++ b/pages/topics-and-events/api-cli/python-node-topics-events.mdx @@ -7,13 +7,14 @@ content: paragraph: This page explains how to use Go, Python or Node.js with Topics and Events and provides code samples tags: messaging boto3 python nodejs sns go topics-events categories: - - messaging + - serverless + - topics-and-events dates: validation: 2024-10-18 posted: 2023-01-04 --- -AWS provides a number of **S**oftware **D**evelopment **K**its (SDKs) which provide language-specific APIs for AWS services, including [SNS](/messaging/concepts/#sns), which is the protocol that Scaleway Topics and Events is based on. +AWS provides a number of **S**oftware **D**evelopment **K**its (SDKs) which provide language-specific APIs for AWS services, including [SNS](/topics-and-events/concepts/#sns), which is the protocol that Scaleway Topics and Events is based on. - AWS provides a dedicated [SDK for Go](https://aws.amazon.com/sdk-for-go/). - The [AWS SDK for Python](https://aws.amazon.com/sdk-for-python/) is Boto3. @@ -25,7 +26,7 @@ This page provides code samples to show you how to get started using these SDKs - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- Valid [credentials](/messaging/how-to/create-credentials/) for Topics and Events +- Valid [credentials](/topics-and-events/how-to/create-credentials/) for Topics and Events - Installed the relevant AWS SDK [for Go](https://aws.amazon.com/sdk-for-go/), [Python](https://aws.amazon.com/sdk-for-python/) and/or [JavaScript](https://aws.amazon.com/sdk-for-javascript/) ## Go @@ -57,13 +58,13 @@ func main() { - The `Endpoint` for Scaleway Topics and Events is `https://sns.mnq.fr-par.scaleway.com`. The values for the access and secret keys should be the credentials you [generated](/messaging/how-to/create-credentials/) for Topics and Events. + The `Endpoint` for Scaleway Topics and Events is `https://sns.mnq.fr-par.scaleway.com`. The values for the access and secret keys should be the credentials you [generated](/topics-and-events/how-to/create-credentials/) for Topics and Events. -Once connected, you can use any of the SDK's available functions. Be aware though that some functions are not [supported by Scaleway Topics and Events](/messaging/reference-content/sns-support/), so make sure to check the link for more details on these. See the [official SDK documentation](https://pkg.go.dev/github.com/aws/aws-sdk-go/service/sns) for more information on getting started with the SDK, or keep reading for some code examples. +Once connected, you can use any of the SDK's available functions. Be aware though that some functions are not [supported by Scaleway Topics and Events](/topics-and-events/reference-content/topics-and-events-support/), so make sure to check the link for more details on these. See the [official SDK documentation](https://pkg.go.dev/github.com/aws/aws-sdk-go/service/sns) for more information on getting started with the SDK, or keep reading for some code examples. -### Create topic (Go) +### Create a topic (Go) ```go createTopicResponse, _ := awsSNS.CreateTopic(&sns.CreateTopicInput{ @@ -74,7 +75,7 @@ fmt.Println(*createTopicResponse.TopicArn) ### Publish messages to this topic (Go) -Be careful: messages sent to topics with no subscriptions are automatically deleted +Be careful: messages sent to topics with no subscriptions are automatically deleted. ```go for i := 0; i < 10; i++ { @@ -159,12 +160,12 @@ sns = boto3.resource('sns', ``` - The `endpoint_url` for Scaleway Topics and Events (based on SNS) is `https://sns.mnq.fr-par.scaleway.com`. The values for the access and secret keys should be the credentials you [generated](/messaging/how-to/create-credentials/) for Topics and Events. + The `endpoint_url` for Scaleway Topics and Events (based on SNS) is `https://sns.mnq.fr-par.scaleway.com`. The values for the access and secret keys should be the credentials you [generated](/topics-and-events/how-to/create-credentials/) for Topics and Events. -Once connected to, you can use any of the SDK's available functions. However, some functions are not [supported by Scaleway Topics and Events](/messaging/reference-content/sns-support/), so do check the link to make sure. See the [official SDK documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) for more information, or keep reading for some code examples. +Once connected, you can use any of the SDK's available functions. However, some functions are not [supported by Scaleway Topics and Events](/topics-and-events/reference-content/sns-support/), so do check the link to make sure. See the [official SDK documentation](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) for more information, or keep reading for some code examples. -### Create topic (Python) +### Create a topic (Python) ```python # Create a topic. This returns an SNS.Topic instance @@ -175,7 +176,7 @@ print(topic.attributes) ### Publish messages to this topic (Python) -Be careful: messages sent to topics with no subscriptions are automatically deleted +Be careful: messages sent to topics with no subscriptions are automatically deleted. ```python for i in range (0,10): @@ -276,12 +277,12 @@ var snsClient = new SNSClient({ ``` - The `endpoint_url` for Scaleway Topics and Events is `https://sns.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/messaging/how-to/create-credentials/) for Topics and Events. + The `endpoint_url` for Scaleway Topics and Events is `https://sns.mnq.fr-par.scaleway.com`. For the access and secret key values, use the credentials you [generated](/topics-and-events/how-to/create-credentials/) for Topics and Events. -Once connected, you can use any of the SDK's available functions. However, some functions are not [supported by Scaleway Topics and Events](/messaging/reference-content/sns-support), so do check the link to make sure. See the [official SDK documentation](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sns/) for more information, or keep reading for some code examples. +Once connected, you can use any of the SDK's available functions. However, some functions are not [supported by Scaleway Topics and Events](/topics-and-events/reference-content/sns-support), so do check the link to make sure. See the [official SDK documentation](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sns/) for more information, or keep reading for some code examples. -### Create topic (NodeJS) +### Create a topic (NodeJS) You can find all available parameters for `createTopic` in the [AWS documentation](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-sns/classes/createtopiccommand.html). diff --git a/pages/messaging/api-cli/sqs-sns-aws-cli.mdx b/pages/topics-and-events/api-cli/topics-events-aws-cli.mdx similarity index 62% rename from pages/messaging/api-cli/sqs-sns-aws-cli.mdx rename to pages/topics-and-events/api-cli/topics-events-aws-cli.mdx index ac152c9f78..3f585d9d53 100644 --- a/pages/messaging/api-cli/sqs-sns-aws-cli.mdx +++ b/pages/topics-and-events/api-cli/topics-events-aws-cli.mdx @@ -1,72 +1,29 @@ --- meta: - title: Using Scaleway Queues and Scaleway Topics and Events with the AWS-CLI - description: This page explains how to use Scaleway Queues and Scaleway Topics and Events for creating queues and sending and receiving messages with the AWS CLI + title: Using Scaleway Topics and Events with the AWS-CLI + description: This page explains how to use Scaleway Topics and Events for creating topics and sending and receiving messages with the AWS CLI content: - h1: Using Scaleway Queues and Scaleway Topics and Events with the AWS-CLI - paragraph: This page explains how to use Scaleway Queues and Scaleway Topics and Events for creating queues and sending and receiving messages with the AWS CLI -tags: messaging sns sqs aws-cli cli aws queues messages subscribe publish + h1: Using Scaleway Topics and Events with the AWS-CLI + paragraph: This page explains how to use Scaleway Topics and Events for creating topics and sending and receiving messages with the AWS CLI +tags: messaging sns aws-cli cli aws messages subscribe publish topics categories: - - messaging + - serverless + - topics-and-events dates: - validation: 2024-10-18 + validation: 2025-04-10 posted: 2023-04-04 -validation_frequency: 8 --- -The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services. Once you have [connected Scaleway Queues and/or Topics and Events to the AWS-CLI](/messaging/api-cli/connect-aws-cli/), you can start creating, listing and managing your queues and topics, sending messages and much more, all from your command line. +The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) that provides commands for interacting with AWS services. Once you have [connected Scaleway Topics and Events to the AWS-CLI](/topics-and-events/api-cli/connect-aws-cli/), you can start creating, listing and managing your topics, sending messages and much more, all from your command line. - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- Valid [credentials](/messaging/how-to/create-credentials/) for Queues and/or Topics and Events -- [Connected Queues and/or Topics and Events to the AWS-CLI](/messaging/api-cli/connect-aws-cli/) +- Valid [credentials](/topics-and-events/how-to/create-credentials/) for Topics and Events +- [Connected Topics and Events to the AWS-CLI](/topics-and-events/api-cli/connect-aws-cli/) - [jq](https://stedolan.github.io/jq/download/) installed on your machine -## Getting started with Scaleway Queues - -1. Use the following command to create a queue: - - ```sh - aws sqs create-queue --queue-name MyQueue | tee my-queue.json - ``` - -2. Use the following command to list existing queues: - - ```sh - aws sqs list-queues - ``` - -3. Use the following command to send messages to a queue: - - ```sh - aws sqs send-message --queue-url $(jq -r .QueueUrl my-queue.json) --message-body "Hello world!" - - aws sqs send-message --queue-url $(jq -r .QueueUrl my-queue.json) --message-body "Second Message." - ``` - -4. Use the following command to receive messages: - - ```sh - aws sqs receive-message --queue-url $(jq -r .QueueUrl my-queue.json) | tee message1.json - - aws sqs receive-message --queue-url $(jq -r .QueueUrl my-queue.json) | tee message2.json - ``` - -5. Use the following command to delete messages. This is necessary as once a message has been processed on your consumer side (typically by a worker), it will be re-queued unless it is explicitly deleted. - - ```sh - aws sqs delete-message --queue-url $(jq -r .QueueUrl my-queue.json) --receipt-handle $(jq -r .Messages[0].ReceiptHandle message1.json) - - aws sqs delete-message --queue-url $(jq -r .QueueUrl my-queue.json) --receipt-handle $(jq -r .Messages[0].ReceiptHandle message2.json) - ``` - -6. Use the following command to delete the queue itself: - - ```sh - aws sqs delete-queue --queue-url $(jq -r .QueueUrl my-queue.json) - ``` ## Getting started with Topics and Events @@ -82,7 +39,7 @@ The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) aws sns list-topics ``` -### Preparing and subscribing to an HTTP/HTTPS target for Topics and Events messages +## Preparing and subscribing to an HTTP/HTTPS target for Topics and Events messages 1. Get the public endpoint of the HTTP server you want to forward your messages to. @@ -92,7 +49,7 @@ The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) aws sns subscribe --topic-arn $(jq -r .TopicArn my-topic.json) --protocol http --notification-endpoint | tee my-subscription.json ``` -3. Find the HTTP request received by the HTTP server. It should have a body in json matching the following format. It contains information necessary to complete the subscription process: +3. Find the HTTP request received by the HTTP server. It should have a body in JSON matching the following format. It contains the information necessary to complete the subscription process: ```json { @@ -115,7 +72,7 @@ The AWS-CLI is an open-source tool built on top of the AWS SDK for Python (Boto) curl "" ``` -### Preparing and subscribing to a lambda (Scaleway Serverless Functions) target for Topics and Events messages +## Preparing and subscribing to a lambda (Scaleway Serverless Functions) target for Topics and Events messages 1. Create the function following the steps detailed in the [Scaleway Functions Quickstart](/serverless-functions/quickstart/). diff --git a/pages/messaging/assets/scaleway-topics-create-subs.webp b/pages/topics-and-events/assets/scaleway-topics-create-subs.webp similarity index 100% rename from pages/messaging/assets/scaleway-topics-create-subs.webp rename to pages/topics-and-events/assets/scaleway-topics-create-subs.webp diff --git a/pages/messaging/assets/scaleway-topics-create-topic.webp b/pages/topics-and-events/assets/scaleway-topics-create-topic.webp similarity index 100% rename from pages/messaging/assets/scaleway-topics-create-topic.webp rename to pages/topics-and-events/assets/scaleway-topics-create-topic.webp diff --git a/pages/messaging/assets/scaleway-topics-gen-creds.webp b/pages/topics-and-events/assets/scaleway-topics-gen-creds.webp similarity index 100% rename from pages/messaging/assets/scaleway-topics-gen-creds.webp rename to pages/topics-and-events/assets/scaleway-topics-gen-creds.webp diff --git a/pages/topics-and-events/concepts.mdx b/pages/topics-and-events/concepts.mdx new file mode 100644 index 0000000000..5f3cfa90bb --- /dev/null +++ b/pages/topics-and-events/concepts.mdx @@ -0,0 +1,92 @@ +--- +meta: + title: Topics and Events - Concepts + description: Understand the core concepts of Scaleway Topics and Events. Explore fundamental principles for efficient message handling and service optimization. +content: + h1: Topics and Events - Concepts + paragraph: Understand the core concepts of Scaleway Topics and Events. Explore fundamental principles for efficient message handling and service optimization. +categories: + - serverless + - topics-and-events +tags: messaging topics subscriptions events +dates: + validation: 2025-04-10 + posted: 2025-04-10 +--- + +## Content-based deduplication + +Content-based deduplication is a setting available for [FIFO](#fifo) topics. Enable content-based deduplication if the message body is guaranteed to be unique for each message. A unique hash value is generated from the body of each message, which is used as its deduplication ID. This avoids the need to set a deduplication ID when sending messages. Read more in our dedicated documentation on [creating topics](/topics-and-events/how-to/create-manage-topics/). + +## Credentials + +Credentials give services and platforms access to Topics and Events, enabling them to connect to the host system. Credentials for Scaleway Topics and Events define whether the bearer is allowed to write, and/or read, and/or manage topics and subscriptions. Refer to our [credentials documentation](/topics-and-events/how-to/create-credentials/) for more information. + +## FIFO + +FIFO stands for **F**irst **I**n **F**irst **O**ut, and represents a type of topic where the exact order of messages is preserved, and duplicate messages are not tolerated. As well as these specificities, FIFO topics support all the same features as the [Standard](#standard) type. Consider using FIFO topics for any use cases where the order of messages is critical, such as e-commerce order management systems, systems where one action should not happen until another has been completed, or first-come-first-served ticketing systems. + +## Filtering + +In a [topic-based](#topic-based) system, where topics handle the logic, filtering is similar to routing. Messages are sent to defined topics, which can be thought of as filters, as subscribers can subscribe only to the topics they are interested in. In a [content-based](#content-based) system, filtering is carried out more directly by subscribers, who define filters for messages based on the content/attributes they want to receive. + +## Message broker + +A message broker is a piece of software that allows applications, systems, and services to communicate with each other and send/receive data. It facilitates the exchange of information by receiving messages from a producer and transmitting them to a consumer. Scaleway Topics and Events is a message broker tool based on the AWS SNS messaging system. + +## Messaging and Queuing + +Previously, Scaleway Messaging and Queuing was a single product that grouped together three different messaging protocols. It has now been split into three distinct products: [NATS](/nats/), [Queues](/queues), and [Topics and Events](/topics-and-events/). + +## Publish/Subscribe + +Also known as "pub/sub", the publish/subscribe model provides a pattern or framework for the exchange of messages between publishers and subscribers. It contrasts with the [queuing](/queues/concepts/#queuing) model. The key feature of publish/subscribe is that messages are not sent to defined recipients. Instead, subscribers define the types of message they are interested in, and only receive messages matching their criteria. The publisher sends the message without knowing exactly who will receive it. + +## Region + +Topics and Events is available in multiple regions. A region designates the geographical area where the service is hosted. Refer to the [product availability table](/account/reference-content/products-availability/) to check which regions are available for Topics and Events. + +When creating topics, you need to do this on a region-by-region basis. The region drop-down in the console allows you to switch between available regions. + +## SNS + +Scaleway Topics and Events is based on the AWS SNS protocol. **S**imple **N**otification **S**ervice, or SNS, is a [publish/subscribe](#publishsubscribe) notification service for the mass delivery of messages. SNS acts as a single message bus that can be sent to a variety of devices and platforms through a single code interface. It is also possible to adapt message formats to the particular needs of each platform. + +## Standard + +Standard-type topics represent the default topic type, and offer an at-least-once message delivery system. Unlike [FIFO](#fifo) topics, standard topics provide only best-effort attempts to deliver messages in order. At-least-once delivery means that it is possible under rare circumstances that the same message may be received more than once. + +## Subscriber + +In [Topics and Events](#topics-and-events), a subscriber is the entity (e.g. a queue, function, or URL) that messages from topics are pushed to. Subscribers can filter messages based on their topic or content. + +## Subscription + +A subscription is a connection between a client or endpoint, and a topic. By creating a subscription, the subscribed endpoint receives messages and notifications published to the topic. You can [create subscriptions](/topics-and-events/how-to/create-manage-subscriptions/) for HTTP/S endpoints, Scaleway queues, and Scaleway Serverless [Functions](/serverless-functions/quickstart/) and [Containers](/serverless-containers/quickstart/). + +## Subscription protocols and endpoints + +A subscription protocol refers to the communication method used to deliver messages to a subscriber. Different types of subscribers require different protocols. When you create a new subscription to a topic with Scaleway Topics and Events, the following options are available: + +| Protocol | Endpoint / Client | Note | +|-------------------------------------|--------------------------------------------------|-----------------------------------| +| HTTP | The URL of a service or web server that can receive notifications (HTTP POST requests) from Topics and Events, e.g. `http://example.fr` | - For security reasons, we recommend using the HTTPS protocol rather than HTTP.
- HTTP subscriptions must be [confirmed](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription) after creation | +| HTTPS | The URL of a service or web server that can receive notifications (HTTPS POST requests) from Topics and Events, e.g. `https://example.fr` | - HTTPS subscriptions must be [confirmed](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription) after creation | +| Serverless Functions and Containers | A Scaleway Serverless [Function](/serverless-functions/quickstart/) or [Container](/serverless-containers/quickstart/)
| - It must have a [public](/serverless-functions/concepts/#privacy-policy) privacy policy
- It must be in a [namespace](/serverless-functions/concepts/#namespace) from the same [Project](/organizations-and-projects/concepts/#project) and [region](#region) as the topic | +| Queues | A Scaleway [queue](/queues/)
| - It must be in the same [Project](/organizations-and-projects/concepts/#project) and [region](#region) as the topic | + +## Topic + +A topic is a communication channel used to send messages and notifications to subscribed endpoints or clients. Publishers send messages to topics, and those messages are received by subscribers. Subscribers can include Serverless Functions, Scaleway Queues and HTTP/HTTPS endpoints. As such, topics decouple the publishing and the receiving of messages, allowing for flexibility and scalability in building loosely-coupled systems. + +## Topic types + +When creating topics with Scaleway Topics and Events, two topic types are available. [Standard](#standard) topics provide at-least-once delivery, while [FIFO](#fifo) topics offer first-in-first-out delivery, and (unlike Standard topics) guarantee that messages are delivered in order and without duplication. [Content-based deduplication](#content-based-deduplication) is only available for FIFO topic types. Find out more about creating topics with our [dedicated documentation](/topics-and-events/how-to/create-manage-topics/). + +## Topic volume + +Topic volume is one of the factors affecting the billing of Scaleway Topics and Events. Topic volume is calculated as the total sum of the sizes of all messages sent from a topic to its subscriptions. + +## Topics and Events + +Scaleway Topics and Events is a product for creating managed messaging topics based on the [SNS](#sns) protocol. Previously, it was part of the Messaging and Queuing product. diff --git a/pages/topics-and-events/faq.mdx b/pages/topics-and-events/faq.mdx new file mode 100644 index 0000000000..07ab4874d9 --- /dev/null +++ b/pages/topics-and-events/faq.mdx @@ -0,0 +1,39 @@ +--- +meta: + title: Topics and Events FAQ + description: Discover Scaleway Topics and Events, and get answers to common questions about the different protocols available, compatibility with various services, and billing. +content: + h1: Topics and Events FAQ +dates: + validation: 2025-04-10 +category: serverless +productIcon: SnsProductIcon +--- + +## What is Topics and Events? + +Scaleway Topics and Events is a product for creating managed messaging topics, using an in-house implementation of AWS SNS protocol. Previously, it was part of the Messaging and Queuing product. + +## What is the relationship between Scaleway Topics and Events, and AWS SNS? + +**S**imple **N**otification **S**ervice, or SNS, is AWS's [publish/subscribe](/topics-and-events/concepts/#publishsubscribe) notification service for the mass delivery of messages. SNS acts as a single message bus that can be sent to a variety of devices and platforms through a single code interface. It is also possible to adapt message formats to the particular needs of each platform. + +Scaleway has developed its own service based on AWS SNS protocol. Scaleway Topics and Events does not have any dependencies on the AWS SNS infrastructure or offering, we use our own stack which is fully self-hosted and developed in-house. + +## Which subscriber types are supported by Scaleway Topics and Events? + +The following subscriber types are supported: + +- HTTP/S clients +- Serverless Functions and Containers +- Scaleway Queues + +## Does Topics and Events support all AWS SNS features? + +For full details on supported and unsupported AWS SNS features, see our [dedicated documentation page](/topics-and-events/reference-content/topics-and-events-support/). + +## How is Topics and Events billed? + +Billing is based on [topic volume](/topics-and-events/concepts/#topic-volume) (the total sum of each message's size going out from the topic to the subscriptions). + +For full pricing details, see our [dedicated pricing page](https://www.scaleway.com/en/pricing/). \ No newline at end of file diff --git a/pages/messaging/how-to/assets/scaleway-topics-create-subs.webp b/pages/topics-and-events/how-to/assets/scaleway-topics-create-subs.webp similarity index 100% rename from pages/messaging/how-to/assets/scaleway-topics-create-subs.webp rename to pages/topics-and-events/how-to/assets/scaleway-topics-create-subs.webp diff --git a/pages/messaging/how-to/assets/scaleway-topics-create-topic.webp b/pages/topics-and-events/how-to/assets/scaleway-topics-create-topic.webp similarity index 100% rename from pages/messaging/how-to/assets/scaleway-topics-create-topic.webp rename to pages/topics-and-events/how-to/assets/scaleway-topics-create-topic.webp diff --git a/pages/messaging/how-to/assets/scaleway-topics-gen-creds.webp b/pages/topics-and-events/how-to/assets/scaleway-topics-gen-creds.webp similarity index 100% rename from pages/messaging/how-to/assets/scaleway-topics-gen-creds.webp rename to pages/topics-and-events/how-to/assets/scaleway-topics-gen-creds.webp diff --git a/pages/topics-and-events/how-to/create-credentials.mdx b/pages/topics-and-events/how-to/create-credentials.mdx new file mode 100644 index 0000000000..7a5d697264 --- /dev/null +++ b/pages/topics-and-events/how-to/create-credentials.mdx @@ -0,0 +1,50 @@ +--- +meta: + title: How to create Topics and Events + description: Learn how to create credentials for Scaleway Topics and Events. Securely manage access and ensure seamless integration with this step-by-step guide. +content: + h1: How to create credentials for Scaleway Topics and Events + paragraph: Learn how to create credentials for Scaleway Topics and Events. Securely manage access and ensure seamless integration with this step-by-step guide. +tags: credentials messaging queuing key token +categories: + - serverless + - topics-and-events +dates: + validation: 2025-04-10 + posted: 2025-04-10 +--- + +This page shows how to create [credentials](/topics-and-events/concepts/#credentials) for Scaleway Topics and Events. Credentials give their bearer (e.g. services and platforms) access to your service. + +Credentials for Topics and Events are granular: you can define the level of access that they should give. Credentials give the specified level of access to all topics that you create in the region they are scoped to. You can create multiple sets of credentials for each of your Topics and Events services. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. The **Topics and Events** dashboard displays. + +2. Click the **Credentials** tab. + +3. Click **Generate credentials**. A pop-up displays: + + + +4. Choose a region that these credentials should be scoped to. + +5. Enter a name for these credentials. + +6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. + +7. Click **Generate credentials**. + + The credentials are created. The access key and secret key are displayed, and you are invited to copy them. + + + This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. + + +8. Copy and save the credentials, before closing the window. + + You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. diff --git a/pages/messaging/how-to/create-manage-subscriptions.mdx b/pages/topics-and-events/how-to/create-manage-subscriptions.mdx similarity index 79% rename from pages/messaging/how-to/create-manage-subscriptions.mdx rename to pages/topics-and-events/how-to/create-manage-subscriptions.mdx index ceb665f831..f5507f0256 100644 --- a/pages/messaging/how-to/create-manage-subscriptions.mdx +++ b/pages/topics-and-events/how-to/create-manage-subscriptions.mdx @@ -8,24 +8,25 @@ content: tags: messaging queuing subscriptions sns topics categories: - serverless + - topics-and-events dates: - validation: 2024-10-17 + validation: 2024-04-10 posted: 2024-02-06 --- -This page shows how to create and manage [subscriptions](/messaging/concepts/#subscription) with Scaleway Topics and Events (formerly part of the Messaging and Queuing product). When you create a subscription to a [topic](/messaging/concepts/#topic), you are effectively signing up an endpoint to receive all messages published to that topic. +This page shows how to create and manage [subscriptions](/topics-and-events/concepts/#subscription) with Scaleway Topics and Events (formerly part of the Messaging and Queuing product). When you create a subscription to a [topic](/topics-and-events/concepts/#topic), you are effectively signing up an endpoint to receive all messages published to that topic. - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization -- An existing [topic](/messaging/how-to/create-manage-topics/) +- An existing [topic](/topics-and-events/how-to/create-manage-topics/) ## How to create a subscription 1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. -2. Use the dropdown menu to select the [region](/messaging/concepts/#region) of the topic you want to create a subscription for. +2. Use the dropdown menu to select the [region](/topics-and-events/concepts/#region) of the topic you want to create a subscription for. 3. Click the name of the topic you want to create a subscription for. @@ -45,7 +46,7 @@ This page shows how to create and manage [subscriptions](/messaging/concepts/#su You are prompted to enter the URL of the HTTP endpoint to subscribe, e.g. `example.com`. Note that the scheme (`http://`) is not required. - After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). + After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). @@ -54,21 +55,21 @@ This page shows how to create and manage [subscriptions](/messaging/concepts/#su You are prompted to enter the URL of the HTTP endpoint to subscribe, e.g. `example.com`. Note that the scheme (`https://`) is not required. - After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). + After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription).
Choose **Serverless Functions and Containers** to create a subscription for a Scaleway Serverless Function or Container that you have created. - You are prompted to select the **namespace** containing the Function or Container that you want to subscribe. Only namespaces in the same [Project](/organizations-and-projects/concepts/#project) and [region](/messaging/concepts/#region) as the topic can be selected. + You are prompted to select the **namespace** containing the Function or Container that you want to subscribe. Only namespaces in the same [Project](/organizations-and-projects/concepts/#project) and [region](/topics-and-events/concepts/#region) as the topic can be selected. - You are prompted to select the Serverless Function or Container to subscribe. Only Functions and Containers with a public [privacy policy](/serverless-functions/concepts/#privacy-policy) can subscribe to an topic. + You are prompted to select the Serverless Function or Container to subscribe. Only Functions and Containers with a public [privacy policy](/serverless-functions/concepts/#privacy-policy) can subscribe to a topic.

Choose **Queues** to create a subscription for a Scaleway queue that you have created. - You are prompted to select the **queue** to subscribe. Only queues in the same [Project](/organizations-and-projects/concepts/#project) and [region](/messaging/concepts/#region) as the topic can be selected. + You are prompted to select the **queue** to subscribe. Only queues in the same [Project](/organizations-and-projects/concepts/#project) and [region](/topics-and-events/concepts/#region) as the topic can be selected.
@@ -82,10 +83,9 @@ An HTTP or HTTPS subscription will have a `Pending` status until you **confirm** 1. Access the subscriptions listing page (from the console side menu, **Serverless** > **Topics and Events** > **Topics**, click the topic containing the subscription). -2. Click the icon next to the subscription you wish to confirm, then select **Confirm subscription** from the menu. A pop-up displays, with the following message: +2. Click the icon next to the subscription you wish to confirm, then select **Confirm subscription** from the menu. A pop-up displays with the following message: - ``` - A subscription confirmation message has been sent to the subscription endpoint. Retrieve the SubscribeURL value from the message and enter it in the box below. This is a necessary step to start receiving messages from the topic. + ```A subscription confirmation message has been sent to the subscription endpoint. Retrieve the SubscribeURL value from the message and enter it in the box below. This is a necessary step to start receiving messages from the topic ``` 3. Retrieve the confirmation message that Scaleway Topics and Events sent to your endpoint (delivered as an `HTTP POST` request), and extract the `SubscribeURL` from the message payload. @@ -102,7 +102,7 @@ When you no longer want a subscribed endpoint or service to receive messages fro 1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) containing the subscription you want to delete. +2. Use the drop-down menu to select the [region](/topics-and-events/concepts/#region) containing the subscription you want to delete. 3. Click the topic containing the subscription you want to delete. @@ -115,5 +115,3 @@ When you no longer want a subscribed endpoint or service to receive messages fro A pop-up asks you to confirm that you understand this action will delete the subscription. 6. Type **DELETE** and click **Delete subscription**. - - diff --git a/pages/messaging/how-to/create-manage-topics.mdx b/pages/topics-and-events/how-to/create-manage-topics.mdx similarity index 75% rename from pages/messaging/how-to/create-manage-topics.mdx rename to pages/topics-and-events/how-to/create-manage-topics.mdx index be9d69feda..7b73e75ca3 100644 --- a/pages/messaging/how-to/create-manage-topics.mdx +++ b/pages/topics-and-events/how-to/create-manage-topics.mdx @@ -7,13 +7,14 @@ content: paragraph: Discover how to create and manage topics with Scaleway Topics and Events. Enhance your messaging setup with this comprehensive, easy-to-follow guide. tags: messaging queuing topics sns categories: - - serverless + - serverless + - topics-and-events dates: - validation: 2024-10-17 + validation: 2025-04-10 posted: 2023-12-27 --- -This page shows how to create and manage [topics](/messaging/concepts/#topic) with Scaleway Topics and Events (formerly part of the Messaging and Queuing product). +This page shows how to create and manage [topics](/topics-and-events/concepts/#topic) with Scaleway Topics and Events. @@ -34,14 +35,14 @@ This page shows how to create and manage [topics](/messaging/concepts/#topic) wi 5. Choose a **topic type**. The following topic types are available: - **Standard**: Ensures at-least-once message delivery, where the order of messages is not preserved. Supports Serverless Functions, Serverless Containers and HTTP/S subscriptions. - - **FIFO**: Provides first-in-first-out delivery, where the order of messages is preserved without duplication. Supports Scaleway Queues subscriptions. [Content-based deduplication](/messaging/concepts/#content-based-deduplication) is only available for FIFO topics. + - **FIFO**: Provides first-in-first-out delivery, where the order of messages is preserved without duplication. Supports Scaleway Queues subscriptions. [Content-based deduplication](/topics-and-events/concepts/#content-based-deduplication) is only available for FIFO topics. 6. Click **Create topic** to finish. You are returned to the **Topics** tab, where your newly-created topic now displays. The topic's URL is also displayed here, for use in your API/CLI operations. -Remember that you need to [create credentials](/messaging/how-to/create-credentials/) in order to access your Topics and Events service and its topics from an API or CLI. Sending messages to topics requires that credentials have the `can_publish` permission, while receiving messages from topics requires the `can_receive` permission. You can create separate credentials if you need to isolate these two roles in your application. +Remember that you need to [create credentials](/topics-and-events/how-to/create-credentials/) in order to access your Topics and Events service and its topics from an API or CLI. Sending messages to topics requires that credentials have the `can_publish` permission, while receiving messages from topics requires the `can_receive` permission. You can create separate credentials if you need to isolate these two roles in your application. ## How to delete a topic @@ -50,7 +51,7 @@ When you no longer want a topic, you can delete it. This action is irreversible 1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. -2. Use the drop-down menu to select the [region](/messaging/concepts/#region) containing the topic you want to delete. +2. Use the drop-down menu to select the [region](/topics-and-events/concepts/#region) containing the topic you want to delete. 3. Either: - Click the topic you wish to delete, and navigate to its **Settings** page. Click the **Delete topic** button in the bottom right corner, or diff --git a/pages/topics-and-events/how-to/index.mdx b/pages/topics-and-events/how-to/index.mdx new file mode 100644 index 0000000000..68efa2c53a --- /dev/null +++ b/pages/topics-and-events/how-to/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Topics and Events - How Tos + description: Topics and Events How Tos +content: + h1: Topics and Events - How Tos + paragraph: Topics and Events How Tos +--- diff --git a/pages/topics-and-events/how-to/manage-credentials.mdx b/pages/topics-and-events/how-to/manage-credentials.mdx new file mode 100644 index 0000000000..802513024c --- /dev/null +++ b/pages/topics-and-events/how-to/manage-credentials.mdx @@ -0,0 +1,59 @@ +--- +meta: + title: How to manage credentials for Topics and Events + description: Master managing credentials for Scaleway Topics and Events. Follow this guide to securely update, rotate, and control access to your messaging services. +content: + h1: How to manage credentials for Topics and Events + paragraph: Master managing credentials for Scaleway Topics and Events. Follow this guide to securely update, rotate, and control access to your messaging services. +dates: + validation: 2025-04-10 + posted: 2022-08-11 +tags: manage credentials messaging queuing permissions update revoke +categories: + - serverless + - topics-and-events +--- + +Credentials give their bearer (e.g. services and platforms) access to your service. + +This page shows how to manage [credentials](/topics-and-events/concepts/#credentials) for Scaleway Topics and Events. Credentials can be updated to change their permissions, or revoked. Once credentials are revoked, any user trying to use the credentials to connect to the service will be denied. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization +- Valid [credentials](/topics-and-events/how-to/create-credentials/) + +## How to update credentials + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. + +2. Click the **Credentials** tab. + +3. Use the drop-down menu to select the [region](/topics-and-events/concepts/#region) containing the credentials you want to update. + +4. Click the button next to the credentials you want to update, and select **Update credentials**. + +5. Make the required updates to your credentials. You can modify the name, and the permissions. + +6. Click **Update credentials**. + + The credentials are updated and you are returned to the product's **Credentials** listing. + +## How to revoke credentials + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu/ + +2. Click the **Credentials** tab. + +3. Use the drop-down menu to select the [region](/topics-and-events/concepts/#region) containing the credentials you want to revoke. + +4. Click the button next to the credentials you want to revoke and select **Revoke**. + + A pop-up displays, warning you that this action is irreversible and the key will no longer be able to access your service. + +5. Click **Revoke credentials**. + + The credentials are revoked and you are returned to the product's **Credentials** listing. + + diff --git a/pages/topics-and-events/how-to/monitor-topics-cockpit.mdx b/pages/topics-and-events/how-to/monitor-topics-cockpit.mdx new file mode 100644 index 0000000000..6a4a45c209 --- /dev/null +++ b/pages/topics-and-events/how-to/monitor-topics-cockpit.mdx @@ -0,0 +1,42 @@ +--- +meta: + title: How to monitor Topics and Events with Scaleway Cockpit + description: Monitor Topics and Events services with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. +content: + h1: How to monitor Topics and Events with Scaleway Cockpit + paragraph: Monitor Topics and Events services with Scaleway Cockpit. This guide helps you track performance to manage your messaging services efficiently. +categories: + - serverless + - topics-and-events +dates: + validation: 2025-04-10 + posted: 2023-09-07 +--- + +You can view metrics for Topics and Events via [Scaleway Cockpit](/cockpit/quickstart/). This allows you to monitor your topics and messages at a glance. There are two steps to complete to view your metrics for the first time with Cockpit: + +1. Generate your Grafana credentials +2. Access the product's metrics dashboard + +These steps are described below. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization + +## How to generate Grafana credentials + +To view your metrics with Cockpit, you will use a Grafana dashboard which is accessible from the Scaleway console. First, you must create a user and their associated credentials (a username and password) for Grafana. This can be done directly from the Scaleway console, [by following this procedure](/cockpit/how-to/retrieve-grafana-credentials/). + +## How to access your Topics and Events dashboard and view your metrics + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. + +2. Click the **Metrics** tab. + +3. Click **Open Grafana metrics dashboard**. + +4. Enter your Grafana username and password to log in. + + You are directed to the Topics and Events dashboard, where you can view all your metrics. \ No newline at end of file diff --git a/pages/topics-and-events/index.mdx b/pages/topics-and-events/index.mdx new file mode 100644 index 0000000000..1b7abebfd6 --- /dev/null +++ b/pages/topics-and-events/index.mdx @@ -0,0 +1,73 @@ +--- +meta: + title: Topics and Events Documentation + description: Explore Scaleway Topics and Events. Simplify your microservice workflows with scalable, reliable, and cost-effective message handling solutions. +--- + + + +## Getting Started + + + + + + + + + +## Tutorials + + + + + + + + +## Changelog + + \ No newline at end of file diff --git a/pages/topics-and-events/quickstart.mdx b/pages/topics-and-events/quickstart.mdx new file mode 100644 index 0000000000..38758adf77 --- /dev/null +++ b/pages/topics-and-events/quickstart.mdx @@ -0,0 +1,148 @@ +--- +meta: + title: Topics and Events - Quickstart + description: Get started with Scaleway Topics and Events. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. +content: + h1: Topics and Events - Quickstart + paragraph: Get started with Scaleway Topics and Events. This quickstart guide helps you easily set up and manage scalable messaging solutions in minutes. +dates: + validation: 2025-04-10 + posted: 2025-04-10 +tags: messaging queuing message-broker topics messages subscriptions events +categories: + - serverless + - topics-and-events +--- + +Scaleway Topics and Events is a message broker tool that allows you to transfer messages between different microservices and platforms. This enables them to "talk" to each other effectively even if they are not otherwise compatible. Topics and Events enable and simplify microservices application development and allows you to build highly scalable, reliable, distributed applications. + + + +- A Scaleway account logged into the [console](https://console.scaleway.com) +- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization + +## How to create Topics and Events credentials + +Credentials for Topics and Events are granular: you can define the level of access that they should give. Credentials give the specified level of access to all topics that you create in the region they are scoped to. + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. The **Topics and Events** dashboard displays. + +2. Click the **Credentials** tab. + +3. Click **Generate credentials**. A pop-up displays: + + + +4. Choose a region that these credentials should be scoped to. + +5. Enter a name for these credentials. + +6. Select the required permissions for the credentials. You must choose at least one of **Write**, **Read** and **Manage**. You are free to select any combination of these permissions. + +7. Click **Generate credentials**. + + The credentials are created. The access key and secret key are displayed, and you are invited to copy them. + + + This is your only chance to view and save the secret key. Make sure that you copy it and save it somewhere securely. + + +8. Copy and save the credentials, before closing the window. + + You are returned to the **Credentials** tab. The name of your newly-generated credentials, along with the access key and access level are displayed. + +## How to create topics + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. + +2. Click **Create topic**. The topic creation wizard displays. + + + +3. Choose a region in which to create your topic. + +4. Enter a **name** for your topic. The name must contain no more than 80 characters, and consist only of alphanumeric characters, hyphens, and underscores. Alternatively, you can go with the auto-generated name suggested for you. + +5. Choose a **topic type**. The following topic types are available: + - **Standard**: Ensures at-least-once message delivery, where the order of messages is not preserved. Supports Serverless Functions, Serverless Containers and HTTP/S subscriptions. + - **FIFO**: Provides first-in-first-out delivery, where the order of messages is preserved without duplication. Supports Scaleway Queues subscriptions. [Content-based deduplication](/topics-and-events/concepts/#content-based-deduplication) is only available for FIFO topics. + +6. Click **Create topic** to finish. + +You are returned to the **Topics** tab, where your newly-created topic now displays. The topic's URL is also displayed here, for use in your API/CLI operations. + +## How to create a subscription + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. + +2. Use the dropdown menu to select the [region](/topics-and-events/concepts/#region) of the topic you want to create a subscription for. + +3. Click the name of the topic you want to create a subscription for. + +4. Click **Create Subscription**. The subscription creation wizard displays. + + +5. Verify the parameters of the topic that you are creating a subscription for (name and type). + +6. Choose a protocol, based on the type of endpoint or client you want to subscribe. Click the tab below for further details and full instructions on each protocol: + + + +
+ Select **HTTP** to create a subscription for a service or web server that can receive `HTTP POST` requests from Topics and Events, via standard HTTP protocol. + + Note that for security reasons, we recommend using the HTTPS protocol, rather than HTTP. + + You are prompted to enter the URL of the HTTP endpoint to subscribe, e.g. `example.com`. Note that the scheme (`http://`) is not required. + + After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). + +
+ +
+ Select **HTTPS** to create a subscription for a service or web server that can receive `HTTP POST` requests from Topics and Events, via secure HTTP protocol. + + You are prompted to enter the URL of the HTTP endpoint to subscribe, e.g. `example.com`. Note that the scheme (`https://`) is not required. + + After your HTTP subscription is created, you must confirm it. Find out how in our [dedicated documentation](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). +
+ +
+ Choose **Serverless Functions and Containers** to create a subscription for a Scaleway Serverless Function or Container that you have created. + + You are prompted to select the **namespace** containing the Function or Container that you want to subscribe. Only namespaces in the same [Project](/organizations-and-projects/concepts/#project) and [region](/topics-and-events/concepts/#region) as the topic can be selected. + + You are prompted to select the Serverless Function or Container to subscribe. Only Functions and Containers with a public [privacy policy](/serverless-functions/concepts/#privacy-policy) can subscribe to a topic. +
+ +
+ + Choose **Queues** to create a subscription for a Scaleway queue that you have created. + + You are prompted to select the **queue** to subscribe. Only queues in the same [Project](/organizations-and-projects/concepts/#project) and [region](/topics-and-events/concepts/#region) as the topic can be selected. +
+
+ +7. Click **Create subscription** to finish. + + The subscription is created. If you created an HTTP or HTTPS subscription, you will now need to [confirm it](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). + +## How to publish messages + +All further actions related to publishing messages to topics can be done via a supported CLI or SDK. See our documentation on the [SNS CLI and SDKs](/topics-and-events/reference-content/topics-and-events-overview#further-actions)for more information. + +## How to delete a topic + +When you no longer want a topic, you can delete it. This action is irreversible and deletes the topic along with all its associated subscriptions. + +1. Click **Topics and Events** in the **Serverless** section of the Scaleway console side menu. + +2. Use the drop-down menu to select the [region](/topics-and-events/concepts/#region) containing the topic you want to delete. + +3. Either: + - Click the topic you wish to delete, and navigate to its **Settings** page. Click the **Delete topic** button in the bottom right corner, or + - Click the icon next to the topic you wish to delete, then select **Delete** from the menu that displays. + + A pop-up asks you to confirm that you understand this action will delete the topic and all of its associated subscriptions. + +4. Type **DELETE** and click **Delete topic**. diff --git a/pages/topics-and-events/reference-content/index.mdx b/pages/topics-and-events/reference-content/index.mdx new file mode 100644 index 0000000000..fcfcdbe04d --- /dev/null +++ b/pages/topics-and-events/reference-content/index.mdx @@ -0,0 +1,8 @@ +--- +meta: + title: Topics and Events - Additional content + description: Topics and Events additional content +content: + h1: Topics and Events - Additional content + paragraph: Topics and Events additional content +--- diff --git a/pages/topics-and-events/reference-content/limitations.mdx b/pages/topics-and-events/reference-content/limitations.mdx new file mode 100644 index 0000000000..23f99e12e0 --- /dev/null +++ b/pages/topics-and-events/reference-content/limitations.mdx @@ -0,0 +1,23 @@ +--- +meta: + title: Topics and Events Limitations + description: Learn about the current limitations of Scaleway Topics and Events +content: + h1: Limitations + paragraph: Learn about the current limitations of Scaleway Topics and Events +tags: messaging limitations +dates: + validation: 2025-04-10 + posted: 2023-01-04 +categories: + - serverless + - topics-and-events +--- + +## Usage limits + +For the usage limits that apply when using Scaleway Topics and Events, see the dedicated sections on our [Organization quotas](/organizations-and-projects/additional-content/organization-quotas/) page. Limits (quotas) apply to, for example, the maximum number of topics, and consumers/subscribers, as well as to message retention duration and storage. + +## VPC + +Topics and Events are not currently compatible with [Scaleway VPC](/vpc/quickstart/). diff --git a/pages/messaging/reference-content/sns-overview.mdx b/pages/topics-and-events/reference-content/topics-and-events-overview.mdx similarity index 54% rename from pages/messaging/reference-content/sns-overview.mdx rename to pages/topics-and-events/reference-content/topics-and-events-overview.mdx index d862ff1182..621eff0f56 100644 --- a/pages/messaging/reference-content/sns-overview.mdx +++ b/pages/topics-and-events/reference-content/topics-and-events-overview.mdx @@ -8,20 +8,25 @@ content: tags: messaging sns aws queuing publish-subscribe message-queue topic notification simple notification service categories: - serverless + - topics-and-events dates: - validation: 2024-10-18 + validation: 2025-04-10 posted: 2023-01-04 --- ## What is Scaleway Topics and Events? -Scaleway Topics and Events is a managed messaging service that facilitates the sending of notificatons or messages to a large number of subscribers, including email addresses, webhooks, and more. Topics and Events leverages the SNS protocol. +Scaleway Topics and Events is a managed messaging service that facilitates the sending of notifications or messages to a large number of subscribers, including email addresses, webhooks, and more. Topics and Events uses an in-house implementation of AWS SNS protocol ## What is SNS? -SNS is a managed messaging service developed by AWS and leveraged by Scaleway Topics and Events. +**S**imple **N**otification **S**ervice, or SNS, is a managed messaging service developed by AWS. It was released in 2010, and enables users to interconnect their applications and systems using a [publish/subscribe](/topics-and-events/concepts#publishsubscribe) pattern. Many publishers can send messages to [topics](/topics-and-events/concepts#topic), while consumers, e.g. applications, can subscribe to topics to receive all (or a subset) of messages sent to this topic. -SNS (Simple Notification Service) was released in 2010. It enables users to interconnect their applications and systems using a [publish/subscribe](/messaging/concepts#publishsubscribe) pattern. Many publishers can send messages to [topics](/messaging/concepts#topic), while consumers, e.g. applications, can subscribe to topics to receive all (or a subset) of messages sent to this topic. Scaleway Topics and Events makes it easy to migrate your SNS-connected applications by providing a dedicated protocol gateway. +## What is the relationship between Scaleway Topics and Events, and AWS SNS? + +Scaleway has developed its own service based on AWS SNS protocol. Scaleway Topics and Events does not have any dependencies on the AWS SNS infrastructure or offering, we use our own stack which is fully self-hosted and developed in-house. + +Scaleway Topics and Events makes it easy to migrate your existing SNS-connected applications by providing a dedicated protocol gateway. Some SNS features are not yet available with Scaleway Topics and Events. Supported subscribers are currently limited to: @@ -34,7 +39,7 @@ SNS (Simple Notification Service) was released in 2010. It enables users to inte ## Topics and Events credentials -You must [create credentials](/messaging/how-to/create-credentials/) that give your applications permission to connect to the Scaleway Topics and Events service. +You must [create credentials](/topics-and-events/how-to/create-credentials/) that give your applications permission to connect to the Scaleway Topics and Events service. Credentials are scoped to your Topics and Events service at [Project](/organizations-and-projects/concepts/#project)-level. You can choose to give each set of credentials the required level of permissions: @@ -44,11 +49,11 @@ Credentials are scoped to your Topics and Events service at [Project](/organizat ## Topics and subscriptions -You can [create topics](/messaging/how-to/create-manage-topics/) and [subscriptions](/messaging/how-to/create-manage-subscriptions/) via the Scaleway console. +You can [create topics](/topics-and-events/how-to/create-manage-topics/) and [subscriptions](/topics-and-events/how-to/create-manage-subscriptions/) via the Scaleway console. ## Further actions -All further actions such as sending messages etc. can be done using the AWS CLI or AWS SDKs. Check out our documentation to help you get started with the [AWS CLI](/messaging/api-cli/connect-aws-cli/) or [AWS SDKs](/messaging/api-cli/python-node-sqs/). +All further actions such as sending messages etc. can be done using the AWS CLI or AWS SDKs. Check out our documentation to help you get started with the [AWS CLI](/topics-and-events/api-cli/connect-aws-cli/) or [AWS SDKs](/topics-and-events/api-cli/python-node-topics-events/). ## Topics and Events Resources @@ -56,7 +61,7 @@ The following resources may be helpful: - [Official SNS Documentation](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) - Further information on supported API features: - - [SNS](/messaging/reference-content/sns-support/) + - [SNS](/topics-and-events/reference-content/topics-and-events-support/) - [Creating a simulated CPU monitor notification system with Scaleway Topics and Events](/tutorials/sns-instances-notification-system/) - [Official AWS CLI Documentation](https://aws.amazon.com/cli/) - [Official AWS SDK Documentation](https://aws.amazon.com/developer/tools/) \ No newline at end of file diff --git a/pages/messaging/reference-content/sns-support.mdx b/pages/topics-and-events/reference-content/topics-and-events-support.mdx similarity index 99% rename from pages/messaging/reference-content/sns-support.mdx rename to pages/topics-and-events/reference-content/topics-and-events-support.mdx index d1983c5c91..31e41bedc2 100644 --- a/pages/messaging/reference-content/sns-support.mdx +++ b/pages/topics-and-events/reference-content/topics-and-events-support.mdx @@ -8,8 +8,9 @@ content: tags: messaging queuing supported supports sns aws api actions categories: - serverless + - topics-and-events dates: - validation: 2024-10-18 + validation: 2025-04-10 posted: 2023-01-04 --- diff --git a/pages/transactional-email/api-cli/use-webhooks-with-sns-topics.mdx b/pages/transactional-email/api-cli/use-webhooks-with-sns-topics.mdx index 20527bf145..f64af9a4e3 100644 --- a/pages/transactional-email/api-cli/use-webhooks-with-sns-topics.mdx +++ b/pages/transactional-email/api-cli/use-webhooks-with-sns-topics.mdx @@ -15,7 +15,7 @@ categories: A webhook is an automated message sent in real-time from one system to another when a specific event happens, the message is typically conveyed using HTTP requests that are sent to an endpoint of your choice. -You can set up webhooks for Scaleway Transactional Email and subscribe them to [Topics and Events topics](/messaging/how-to/create-manage-topics/) to have real-time event alerts sent to your endpoints. +You can set up webhooks for Scaleway Transactional Email and subscribe them to [Topics and Events topics](/topics-and-events/how-to/create-manage-topics/) to have real-time event alerts sent to your endpoints. @@ -25,11 +25,11 @@ You can set up webhooks for Scaleway Transactional Email and subscribe them to [ - Added [SPF, DKIM](/transactional-email/how-to/add-spf-dkim-records-to-your-domain/), [MX](/transactional-email/how-to/add-mx-record-to-your-domain/) and [DMARC](/transactional-email/how-to/add-dmarc-record/) records to your domain(s) - Have the necessary quotas to use Transactional Email Webhooks during beta. You can request quotas from the [Scaleway betas page](https://www.scaleway.com/fr/betas/#email-webhooks). -1. [Create a Topics and Events topic](/messaging/how-to/create-manage-topics/#how-to-create-a-topic) with Scaleway Topics and Events. +1. [Create a Topics and Events topic](/topics-and-events/how-to/create-manage-topics/#how-to-create-a-topic) with Scaleway Topics and Events. 2. Copy the ARN identifier of the topic in the **Topics** tab as you will need it later. -3. [Create a subscription](/messaging/how-to/create-manage-subscriptions/#how-to-create-a-subscription). Make sure you enter the endpoint to which you would like to send your Webhooks. +3. [Create a subscription](/topics-and-events/how-to/create-manage-subscriptions/#how-to-create-a-subscription). Make sure you enter the endpoint to which you would like to send your Webhooks. If you do not yet have a webhook URL, you can use the tool [webhook.site](https://webhook.site/) to generate one and receive your events on the interface.

@@ -37,7 +37,7 @@ You can set up webhooks for Scaleway Transactional Email and subscribe them to [
-4. [Confirm your subscription](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). +4. [Confirm your subscription](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription). If you are using [webhook.site](https://webhook.site/), you can refer to their interface to check the incoming requests and confirm the subscription. diff --git a/pages/transactional-email/how-to/create-webhooks.mdx b/pages/transactional-email/how-to/create-webhooks.mdx index 4b358dcb22..091bb8ce35 100644 --- a/pages/transactional-email/how-to/create-webhooks.mdx +++ b/pages/transactional-email/how-to/create-webhooks.mdx @@ -17,7 +17,7 @@ A webhook is an automated message sent in real-time from one system to another w They can be used to track and respond to email-related events such as deliveries, bounces and spam. You can also trigger automated processes or alerts based on specific email events and sync your email events with CRM systems, analytics platforms, or other services. -You can set up webhooks for Scaleway Transactional Email and subscribe them to [Scaleway Topics and Events](/messaging/how-to/create-manage-topics/) to have real-time event alerts sent to your endpoints in the Scaleway console. +You can set up webhooks for Scaleway Transactional Email and subscribe them to [Scaleway Topics and Events](/topics-and-events/how-to/create-manage-topics/) to have real-time event alerts sent to your endpoints in the Scaleway console. Currently, webhooks are integrated exclusively with the Scaleway Topics and Events. Billing for webhooks is based on the Scaleway [Topics and Events billing](https://www.scaleway.com/en/pricing/managed-databases/#messaging-and-queuing). @@ -48,7 +48,7 @@ You can create only one webhook per domain. - Select an existing topic. Existing topics are displayed based on the region you select. - If you do not have a topic, you can [create one](/messaging/how-to/create-manage-topics/) with Scaleway Topics and Events from the console. + If you do not have a topic, you can [create one](/topics-and-events/how-to/create-manage-topics/) with Scaleway Topics and Events from the console. - Choose the email events that will trigger the webhook and send information to your selected topic. diff --git a/tutorials/create-serverless-scraping/index.mdx b/tutorials/create-serverless-scraping/index.mdx index 48c76efa74..0c5798fce8 100644 --- a/tutorials/create-serverless-scraping/index.mdx +++ b/tutorials/create-serverless-scraping/index.mdx @@ -7,7 +7,7 @@ content: paragraph: Learn how to construct a scalable serverless scraping architecture with Scaleway Queues, Serverless Functions, and Managed Database. Dive into this Terraform/OpenTofu-based tutorial for step-by-step guidance on asynchronous data processing. categories: - functions - - messaging + - queues - postgresql-and-mysql tags: terraform scraping-architecture dates: @@ -140,7 +140,7 @@ For the purposes of this tutorial, we show how to provision all resources via Te If you do not want to use Terraform/OpenTofu, you can also create the required resources via the [console](https://console.scaleway.com/), the [Scaleway API](https://www.scaleway.com/en/developers/api/), or any other [developer tool](https://www.scaleway.com/en/developers/). Remember that if you do so, you will need to set up environment variables for functions as previously specified. The following documentation may help create the required resources: -- **Scaleway Queues resources**: [console documentation](/messaging/quickstart/) | [API documentation](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sqs-api/) +- **Scaleway Queues resources**: [console documentation](/queues/quickstart/) | [API documentation](https://www.scaleway.com/en/developers/api/messaging-and-queuing/sqs-api/) - **Managed Database for PostgreSQL**: [console documentation](/managed-databases-for-postgresql-and-mysql/quickstart/) | [API documentation](https://www.scaleway.com/en/developers/api/managed-database-postgre-mysql/) - **Serverless Functions**: [console documentation](/serverless-functions/quickstart/) | [API documentation](https://www.scaleway.com/en/developers/api/serverless-functions/) - **Serverless Functions triggers**: [console documentation](/serverless-functions/how-to/add-trigger-to-a-function/) | [API documentation](https://www.scaleway.com/en/developers/api/serverless-functions/#path-triggers-list-all-triggers) diff --git a/tutorials/deploy-laravel-on-serverless-containers/index.mdx b/tutorials/deploy-laravel-on-serverless-containers/index.mdx index 5c65f2ce8a..9e296692d7 100644 --- a/tutorials/deploy-laravel-on-serverless-containers/index.mdx +++ b/tutorials/deploy-laravel-on-serverless-containers/index.mdx @@ -25,7 +25,7 @@ This tutorial provides a step-by-step guide for deploying a containerized Larave ## Why Scaleway is suitable for deploying containerized applications -Scaleway provides a seamless environment for running and managing containers, offering features such as [Container Registry](https://www.scaleway.com/en/container-registry/), [Serverless Containers](https://www.scaleway.com/en/serverless-containers/), [Queues](/messaging/) and [Observability](https://www.scaleway.com/en/cockpit/). By combining the benefits of containerization with Scaleway's platform, developers should be able to easily deploy, scale, and manage their applications efficiently. +Scaleway provides a seamless environment for running and managing containers, offering features such as [Container Registry](https://www.scaleway.com/en/container-registry/), [Serverless Containers](https://www.scaleway.com/en/serverless-containers/), [Queues](/queues/) and [Observability](https://www.scaleway.com/en/cockpit/). By combining the benefits of containerization with Scaleway's platform, developers should be able to easily deploy, scale, and manage their applications efficiently. [Serverless Containers](https://www.scaleway.com/en/serverless-containers/) offers significant advantages when deploying Laravel applications over [Serverless Functions](https://www.scaleway.com/en/serverless-functions/), as it provides the flexibility to customize the runtime environment according to your specific needs. @@ -33,15 +33,15 @@ Scaleway provides a seamless environment for running and managing containers, of ## Creating a queue -Laravel applications make use of [queues](https://laravel.com/docs/10.x/queues) to process long-running jobs in the background. As this feature of the Laravel framework is nearly always used, we will configure it and leverage the [Scaleway Queues](/messaging/) product from Scaleway. The [Scaleway documentation](/messaging/quickstart/) provides clear information on how this managed service works and can be configured. +Laravel applications make use of [queues](https://laravel.com/docs/10.x/queues) to process long-running jobs in the background. As this feature of the Laravel framework is nearly always used, we will configure it and leverage the [Scaleway Queues](/queues/) product from Scaleway. The [Scaleway documentation](/queues/quickstart/) provides clear information on how this managed service works and can be configured. 1. Create a queue. In this example, we create a `Standard` queue (At-least-once delivery, the order of messages is not preserved) with the default parameters. This queue will be the default queue used by our application. - + 2. Generate credentials. In this example, we generate the credentials with `read` and `write` access. - + ## Building the Laravel Docker image diff --git a/tutorials/large-messages/index.mdx b/tutorials/large-messages/index.mdx index d86bf8ca86..8f0fe01442 100644 --- a/tutorials/large-messages/index.mdx +++ b/tutorials/large-messages/index.mdx @@ -1,12 +1,12 @@ --- meta: title: Set up a serverless architecture for handling large messages using Scaleway's NATS, Serverless Functions, and Object Storage. - description: Learn how to build a serverless architecture for handling large messages with Scaleway's NATS, Serverless Functions, and Object Storage. Follow our step-by-step Terraform/OpenTofu-based tutorial for asynchronous file conversion using messaging, functions, and triggers. + description: Learn how to build a serverless architecture for handling large messages with Scaleway's NATS, Serverless Functions, and Object Storage. Follow our step-by-step Terraform/OpenTofu-based tutorial for asynchronous file conversion using NATS, functions, and triggers. content: h1: Create a serverless architecture for handling large messages using Scaleway's NATS, Serverless Functions, and Object Storage. - paragraph: Learn how to build a serverless architecture for handling large messages with Scaleway's NATS, Serverless Functions, and Object Storage. Follow our step-by-step Terraform/OpenTofu-based tutorial for asynchronous file conversion using messaging, functions, and triggers. + paragraph: Learn how to build a serverless architecture for handling large messages with Scaleway's NATS, Serverless Functions, and Object Storage. Follow our step-by-step Terraform/OpenTofu-based tutorial for asynchronous file conversion using NATS, functions, and triggers. categories: - - messaging + - nats - functions - object-storage tags: messaging nats terraform big-data @@ -15,7 +15,7 @@ dates: posted: 2024-01-22 --- -In this tutorial, we will build a simple architecture to store and automatically convert images to PDF. The focus is on transferring large messages using a messaging service, specifically the [Scaleway NATS](/messaging/quickstart/) server. Our setup involves using the [Object Storage](/object-storage/quickstart/) service for image storage and the [Serverless Functions](/serverless-functions/quickstart/) service for conversion. +In this tutorial, we will build a simple architecture to store and automatically convert images to PDF. The focus is on transferring large messages using a messaging service, specifically the [Scaleway NATS](/nats/quickstart/) server. Our setup involves using the [Object Storage](/object-storage/quickstart/) service for image storage and the [Serverless Functions](/serverless-functions/quickstart/) service for conversion. We show how to provision all the required Scaleway resources via Terraform/OpenTofu, but you can also use the [console](https://account.scaleway.com/login), the [API](https://www.scaleway.com/en/developers/api/) or one of our other supported [developer tools](https://www.scaleway.com/en/developers/). diff --git a/tutorials/nats-rdb-offload/index.mdx b/tutorials/nats-rdb-offload/index.mdx index c5759072fe..afa736add0 100644 --- a/tutorials/nats-rdb-offload/index.mdx +++ b/tutorials/nats-rdb-offload/index.mdx @@ -7,7 +7,7 @@ content: paragraph: Learn how to construct a pub/sub architecture to help you manage database load. Dive into this Python tutorial for step-by-step guidance on asynchronous data processing. categories: - functions - - messaging + - nats - postgresql-and-mysql tags: terraform scraping-architecture dates: @@ -35,15 +35,15 @@ To properly follow this tutorial, we recommend you [create a dedicated Project]( - A Scaleway account logged into the [console](https://console.scaleway.com) - [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization - [Installed the NATS CLI](https://github.com/nats-io/natscli) on your local machine -- [Created a Scaleway NATS account](/messaging/how-to/get-started/#how-to-create-a-nats-account) -- [Generated NATS credentials](/messaging/how-to/create-credentials/#how-to-create-credentials-for-a-nats-account) +- [Created a Scaleway NATS account](/nats/how-to/create-account/) +- [Generated NATS credentials](/nats/how-to/create-credentials/) - [Created a mySQL Managed Database](/managed-databases-for-postgresql-and-mysql/quickstart/) ## Create a NATS stream -Refer to the [dedicated documentation](/messaging/api-cli/nats-cli/) to create your NATS stream. We recommend keeping your stream specifications as simple as possible. There is no need for replication or specific parameters for this tutorial. +Refer to the [dedicated documentation](/nats/api-cli/nats-cli/) to create your NATS stream. We recommend keeping your stream specifications as simple as possible. There is no need for replication or specific parameters for this tutorial. -When your NATS server is up and running, check you did not forget anything for the Scaleway [context](/messaging/api-cli/nats-cli/#define-a-context) by running the following code in a new window of your terminal: +When your NATS server is up and running, check you did not forget anything for the Scaleway [context](/nats/api-cli/nats-cli/#define-a-context) by running the following code in a new window of your terminal: ```bash nats context info scaleway diff --git a/tutorials/sns-instances-notification-system/index.mdx b/tutorials/sns-instances-notification-system/index.mdx index 39d1331cda..61fc0da9a6 100644 --- a/tutorials/sns-instances-notification-system/index.mdx +++ b/tutorials/sns-instances-notification-system/index.mdx @@ -6,9 +6,9 @@ content: h1: Creating a simulated CPU monitor notification system with Terraform/OpenTofu using Scaleway Instances and Topics and Events paragraph: Learn how to set up a simulated CPU monitor notification system with Terraform/OpenTofu using Scaleway Instances and Topics and Events. Trigger alerts based on CPU usage with ease. categories: - - messaging + - topics-and-events - instances -tags: messaging sns monitoring terraform +tags: topics-and-events sns monitoring terraform dates: validation: 2025-04-30 posted: 2024-03-08 @@ -222,7 +222,7 @@ We continue to add to our `main.tf` file to create the subscriber and publisher } } ``` - This will allow the subscriber Instance to immediately receive the [confirmation link](/messaging/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription) to subscribe to the topic, and not wait for the retry policy to confirm the subscription. + This will allow the subscriber Instance to immediately receive the [confirmation link](/topics-and-events/how-to/create-manage-subscriptions/#how-to-confirm-an-http-or-https-subscription) to subscribe to the topic, and not wait for the retry policy to confirm the subscription. The confirmation step is done manually for the purposes of this tutorial, but it could also be performed with an HTTP request. 5. Create the SNS topic subscription with the subscriber Instance's endpoint: diff --git a/tutorials/transform-bucket-images-triggers-functions-deploy/index.mdx b/tutorials/transform-bucket-images-triggers-functions-deploy/index.mdx index 8d1f8e3009..9c7ba80daa 100644 --- a/tutorials/transform-bucket-images-triggers-functions-deploy/index.mdx +++ b/tutorials/transform-bucket-images-triggers-functions-deploy/index.mdx @@ -7,7 +7,7 @@ content: paragraph: This page shows you how to create and deploy functions to transform images in an Object Storage bucket using Serverless Functions and Triggers categories: - functions - - messaging + - queues - object-storage tags: serverless triggers sqs queue dates: @@ -25,7 +25,7 @@ In the [previous tutorial](/tutorials/transform-bucket-images-triggers-functions - A Scaleway [Project](/organizations-and-projects/concepts/#project) dedicated to this tutorial - A source [bucket](/object-storage/how-to/create-a-bucket/) containing images - An empty destination bucket -- A [Scaleway queue](/messaging/how-to/create-manage-queues) with credentials +- A [Scaleway queue](/queues/how-to/create-manage-queues) with credentials You will now learn how to deploy Serverless Functions and connect them using triggers. diff --git a/tutorials/transform-bucket-images-triggers-functions-set-up/index.mdx b/tutorials/transform-bucket-images-triggers-functions-set-up/index.mdx index 6281754b19..17b8f88dde 100644 --- a/tutorials/transform-bucket-images-triggers-functions-set-up/index.mdx +++ b/tutorials/transform-bucket-images-triggers-functions-set-up/index.mdx @@ -6,7 +6,7 @@ content: h1: Transforming images in an Object Storage bucket using Serverless Functions and Triggers - Set up paragraph: This page shows you how to set up your environment to transform images in an Object Storage bucket using Serverless Functions and Triggers categories: - - messaging + - queues - functions - object-storage tags: serverless functions triggers sqs