Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions menu/navigation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ import { organizationsAndProjectsMenu } from '../pages/organizations-and-project
import { partnerSpaceMenu } from "../pages/partner-space/menu"
import { publicGatewaysMenu } from "../pages/public-gateways/menu"
import { queuesMenu } from "../pages/queues/menu"
import { rabbitmqMenu } from "../pages/rabbitmq/menu"
import { scalewayCliMenu } from "../pages/scaleway-cli/menu"
import { scalewaySdkMenu } from "../pages/scaleway-sdk/menu"
import { secretManagerMenu } from "../pages/secret-manager/menu"
Expand Down Expand Up @@ -191,6 +192,7 @@ export default [
iotHubMenu,
topicsAndEventsMenu,
queuesMenu,
rabbitmqMenu,
],
label: 'Integration Services',
category: 'integration-services',
Expand Down
111 changes: 111 additions & 0 deletions pages/rabbitmq/concepts.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
---
title: Cloud Essentials for RabbitMQ - Concepts
description: Understand key concepts behind Scaleway Cloud Essentials for RabbitMQ.
tags: cloud essentials rabbitmq concepts glossary terms definitions
dates:
published: 2026-05-07
validation: 2026-05-07
categories:
- rabbitmq
---

## Cloud Essentials

Cloud Essentials aims to provide a vast range of technologies, with a focus on easy deployment and minimal feature set while offering production-ready stability and scalability.

## RabbitMQ

RabbitMQ is an enterprise grade, open‑source message broker that implements the Advanced Message Queuing Protocol (AMQP) to reliably route, queue, and deliver messages between distributed applications, enabling asynchronous communication and service decoupling.

For more details on the AMQP protocol supported by RabbitMQ, see [AMQP 0-9-1 Model Explained](https://www.rabbitmq.com/tutorials/amqp-concepts).

## Acknowledgment

A confirmation sent by a consumer to RabbitMQ that a message has been processed.

## Binding

A link between an exchange and a queue, defining how messages are routed.

## Channel

A lightweight connection multiplexed over a TCP connection for performing operations.

## Connection

A TCP connection between an application and the RabbitMQ broker.

## Consumer

An application that receives messages from a RabbitMQ queue.

## Durability

A property of queues/exchanges that ensures they survive broker restarts.

## Exchange

An Advanced Message Queuing Protocol (AMQP) 0-9-1 entity that receives messages from producers and routes them to zero or more queues based on rules (bindings).

The routing algorithm used depends on the exchange type and the bindings. AMQP 0-9-1 brokers provide four exchange types:

| Exchange type | Default pre-declared names |
|----------------|-----------------------------|
| Direct exchange | (Empty string) and amq.direct |
| Fanout exchange | amq.fanout |
| Topic exchange | amq.topic |
| Headers exchange | amq.match (and amq.headers in RabbitMQ) |

Besides the exchange type, exchanges are declared with a number of attributes. The most important attributes are:
- Name
- Durability: the exchanges survive broker restarts
- Auto-delete: the exchange is deleted when the last queue is unbound from it
- Arguments: optional, used by plugins and broker-specific features

Exchanges can be durable or transient. Durable exchanges survive broker restarts whereas transient exchanges do not (they have to be redeclared when the broker comes back online). Not all scenarios and use cases require exchanges to be durable.

## Message

Data sent by a producer to an exchange, containing a payload and optional metadata.

## Payload

In RabbitMQ (and messaging systems in general), a payload refers to the actual data or content of a message that is sent from a producer to a consumer. It is the "body" of the message, distinct from any metadata or headers that might be attached.

Example:

```json
{
"order_id": "12345",
"customer_name": "John Doe",
"items": [
{"product_id": "A100", "quantity": 2},
{"product_id": "B200", "quantity": 1}
],
"timestamp": "2026-04-10T12:34:56Z"
}
```

## Persistence

A property of messages that ensures they are saved to disk and survive restarts.

## Prefetch Count

Limits the number of unacknowledged messages sent to a consumer at once.

## Producer

An application that sends messages to a RabbitMQ exchange.

## Queue

A buffer that stores messages until they are consumed by an application.

## Routing Key

A key specified by the producer to determine which queue(s) a message should be delivered to.

## Virtual Host

A logical grouping of exchanges, queues, and permissions, acting like a mini RabbitMQ server.
52 changes: 52 additions & 0 deletions pages/rabbitmq/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: Cloud Essentials for RabbitMQ Documentation
description: Dive into Scaleway Cloud Essentials for RabbitMQ with our quickstart guides, how-tos, tutorials, and more.
---

<ProductHeader
productName="Cloud Essentials for RabbitMQ"
productLogo="rabbitmq"
description="Cloud Essentials for RabbitMQ provides a high‑performance, easy‑to‑use managed RabbitMQ message broker so you can reliably route, queue, and deliver messages between distributed applications."
url="/rabbitmq/quickstart"
label="Cloud Essentials for RabbitMQ Quickstart"
/>

## Getting Started

<Grid>
<SummaryCard
title="Quickstart"
icon="rocket"
description="Learn how to create, use, manage, and delete a Cloud Essentials for RabbitMQ deployment in a few steps."
label="View Quickstart"
url="/rabbitmq/quickstart/"
/>
<SummaryCard
title="Concepts"
icon="info"
description="Core concepts that give you a better understanding of Scaleway Cloud Essentials for RabbitMQ."
label="View Concepts"
url="/rabbitmq/concepts/"
/>
<SummaryCard
title="How-tos"
icon="help-circle-outline"
description="Check our guides to creating, using, and managing Cloud Essentials for RabbitMQ deployments and their features."
label="View How-tos"
url="/rabbitmq/how-to/"
/>
<SummaryCard
title="Additional Content"
icon="book-open-outline"
description="Go further with detailed, in-depth information on Cloud Essentials for RabbitMQ."
label="View Additional Content"
url="/rabbitmq/reference-content/"
/>
</Grid>

## Changelog

<ChangelogList
productName="rabbitmq"
numberOfChanges={3}
/>
58 changes: 58 additions & 0 deletions pages/rabbitmq/menu.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
export const rabbitmqMenu = {
items: [
{
label: 'Overview',
slug: '../rabbitmq',
},
{
label: 'Concepts',
slug: 'concepts',
},
{
label: 'Quickstart',
slug: 'quickstart',
},
{
label: 'FAQ',
slug: 'faq',
},
{
items: [
{
label: 'Create a deployment',
slug: 'create-rabbitmq-deployment',
},
{
label: 'Connect to a deployment',
slug: 'connect-to-rabbitmq-deployment',
},
{
label: 'Manage a deployment',
slug: 'manage-rabbitmq-deployment',
},
{
label: 'Manage the users of a deployment',
slug: 'manage-users-rabbitmq-deployment',
},
{
label: 'Delete a deployment',
slug: 'delete-rabbitmq-deployment',
},
],
label: 'How to',
slug: 'how-to',
},
{
items: [
{
label: 'X y z',
slug: 'x-y-z',
},
],
label: 'Additional Content',
slug: 'reference-content',
},
],
label: 'Cloud Essentials for RabbitMQ',
slug: 'rabbitmq',
}
111 changes: 111 additions & 0 deletions pages/rabbitmq/quickstart.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
---
title: Cloud Essentials for RabbitMQ - Quickstart
description: This page shows you how to get started with Scaleway Cloud Essentials for RabbitMQ.
tags: product name quickstart example guide step guide
dates:
validation: 2026-05-??
posted: 2026-05-??
---

{/*COMMENT: Update the dates.*/}

import Requirements from '@macros/iam/requirements.mdx'

RabbitMQ is an open‑source message broker that implements the Advanced Message Queuing Protocol (AMQP) to reliably route, queue, and deliver messages between distributed applications, enabling asynchronous communication and service decoupling.

Cloud Essentials for RabbitMQ is a managed solution to quickly deploy a message broker that allows you to:

- Distribute time-consuming tasks (e.g., image resizing, PDF generation) across multiple workers to avoid overloading a single server
- Send real-time alerts (e.g., order confirmations, password reset emails) to users or systems
- Decouple services so that microservices can communicate asynchronously (one service can process data without waiting for another)
- Aggregate logs from multiple sources (e.g., web servers, APIs) and forward them to a central system for analysis
- Enable real-time messaging between users by routing messages through queues

This guide covers the basic steps to set up, log in to, and delete a Cloud Essentials for RabbitMQ deployment.

<Requirements />

- 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 Cloud Essentials for RabbitMQ deployment

1. Click **RabbitMQ** in the **Integration Services** section of the console. The Cloud Essentials for RabbitMQ dashboard displays.

2. Click **+ Create deployment**. A creation form displays.

3. Select the **Standalone** deployment configuration. Standalone deployments are General Purpose single-node deployments for testing environments and non-critical, small-scale applications, without redundancy.

4. Select the **MESSAGEQ-DEDICATED-2C-8G** or **MESSAGEQ-SHARED-2C-8G** node type. {/*COMMENT: Which node type should be chosen for a quickstart? */}

5. Define a storage capacity.

6. Keep the default **network connectivity**.

7. Create credentials to log in to your RabbitMQ deployment. These credentials will grant `admin` access to the user.

8. Enter a name for your deployment, or keep the automatically generated one.

9. Review the estimated cost for your deployment, then click **Create deployment** to finish.

You are directed to the **Overview** tab of your deployment.

<Message type="note">
The creation of a Cloud Essentials for RabbitMQ deployment can take several minutes to complete.
</Message>

## How to connect to a Cloud Essentials for RabbitMQ deployment

### How to connect to a RabbitMQ Dashboard

1. From the **Overview** tab of the deployment you just created, copy the **RabbitMQ dashboard** button.

2. Enter the credentials set up during deployment creation, then click **Login**.

You are now connected to your Cloud Essentials for RabbitMQ deployment.

### How to communicate with a deployment using the RabbitMQ REST API {/*COMMENT: Is REST API correct? */}

1. From the **Network** section of the **Overview** tab of the deployment you just created, copy the **API** endpoint.

2. In a terminal, run the following command to interact with your deployment. Remember to replace the placeholders with the appropriate values:

```bash
placeholder
```

An output similar to the following displays:

```json
{
"placeholder": "placeholder",
}
```

You can now interact with your deployment using the RabbitMQ API.

## How to manage a Cloud Essentials for RabbitMQ deployment

1. Click **RabbitMQ** in the **Integration Services** section of the console. The list of your RabbitMQ deployments displays.

2. Click the name of the RabbitMQ deployment you want to manage. Its **Overview** page displays.

3. From here, you can:

- Access the dashboard of your deployment
- View and manage the users of your deployment
- Delete your deployment

## How to delete a Cloud Essentials for RabbitMQ deployment

1. Click **RabbitMQ** in the **Integration Services** section of the console. The list of your RabbitMQ deployments displays.

2. Click <Icon name="more" /> next to the name of the deployment you want to delete. A confirmation pop-up displays.

3. Type **DELETE** in the field, then click **Delete deployment** to confirm your action.

Your deployment is now deleted.

<Message type="tip">
You can also delete a RabbitMQ deployment from its **Settings** tab.
</Message>
Loading