Skip to content

Commit aa7d5d9

Browse files
Merge pull request #2785 from madeline-underwood/rabbit_iteration
Rabbit iteration
2 parents 57a2add + 32cbb66 commit aa7d5d9

11 files changed

Lines changed: 137 additions & 122 deletions

File tree

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Deploy RabbitMQ on Arm64 Cloud Platforms (Azure & GCP)
2+
title: Deploy RabbitMQ on Arm64 Cloud Platforms (Azure and GCP)
33

44
minutes_to_complete: 30
55

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/azure_baseline.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
---
2-
title: RabbitMQ Baseline Testing
2+
title: Validate RabbitMQ on Azure
33
weight: 5
44

55
### FIXED, DO NOT MODIFY
66
layout: learningpathall
77
---
88

9-
## Run a Baseline Test With RabbitMQ
10-
This section validates a working **RabbitMQ 4.2.0** installation with **Erlang OTP 26** on an **Azure Ubuntu Arm64 VM**.
9+
## Run a baseline test with RabbitMQ
10+
This section shows you how to validate a working RabbitMQ 4.2.0 installation with Erlang OTP 26 on an Azure Ubuntu Arm64 VM.
1111

12-
All steps are **CLI-only** and suitable for baseline verification.
12+
All steps use the command line and are suitable for baseline verification.
1313

14-
### Verify RabbitMQ Service Status
14+
## Verify RabbitMQ service status
1515

1616
```console
1717
sudo systemctl status rabbitmq

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/azure_installation.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Install RabbitMQ on Microsoft Azure Cobalt 100
2+
title: Install RabbitMQ on Azure Cobalt 100
33
weight: 4
44

55
### FIXED, DO NOT MODIFY
@@ -44,7 +44,7 @@ make clean
4444
make -j$(nproc)
4545
sudo make install
4646
```
47-
### Make Erlang PATH persistent (IMPORTANT)
47+
### Make Erlang PATH persistent
4848
This step ensures the Erlang binaries are permanently available in the system PATH across sessions and reboots.
4949

5050
```console
@@ -53,7 +53,8 @@ echo 'export PATH=$ERLANG_HOME/bin:$PATH' | sudo tee -a /etc/profile.d/erlang.sh
5353
```
5454

5555
### Download and install RabbitMQ
56-
This section downloads the official RabbitMQ 4.2.0 generic Unix distribution and installs it under `/opt/rabbitmq`.
56+
57+
Download the official RabbitMQ 4.2.0 generic Unix distribution and install it under `/opt/rabbitmq`.
5758

5859
```console
5960
cd ~
@@ -66,17 +67,19 @@ sudo mkdir -p /var/lib/rabbitmq /var/log/rabbitmq
6667
sudo chown -R $USER:$USER /var/lib/rabbitmq /var/log/rabbitmq
6768
```
6869

69-
#### Update PATH environment variable
70-
This step makes RabbitMQ CLI tools available in the current shell and should be persisted for future sessions.
70+
## Update PATH environment variable
71+
72+
Make RabbitMQ CLI tools available in the current shell. Add this to `~/.bashrc` or `~/.profile` for persistence across sessions.
7173

7274
```console
7375
export PATH=/usr/local/erlang-26/bin:/opt/rabbitmq/sbin:$PATH
7476
```
7577

7678
Add this line to `~/.bashrc` or `~/.profile` for persistence.
7779

78-
### Configure RabbitMQ systemd service
79-
This section configures RabbitMQ to run as a managed systemd service, enabling automatic startup and controlled lifecycle management.
80+
## Configure RabbitMQ systemd service
81+
82+
Configure RabbitMQ to run as a managed systemd service, enabling automatic startup and controlled lifecycle management.
8083

8184
Create `/etc/systemd/system/rabbitmq.service`:
8285

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/azure_instance.md

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Create an Arm based cloud virtual machine using Microsoft Cobalt 100 CPU
2+
title: Create an Azure Cobalt 100 virtual machine
33
weight: 3
44

55
### FIXED, DO NOT MODIFY
@@ -12,36 +12,38 @@ There are several ways to create an Arm-based Cobalt 100 virtual machine: the Mi
1212

1313
This learning path focuses on the general-purpose virtual machine of the D series. Please read the guide on [Dpsv6 size series](https://learn.microsoft.com/en-us/azure/virtual-machines/sizes/general-purpose/dpsv6-series) offered by Microsoft Azure.
1414

15-
If you have never used the Microsoft Cloud Platform before, please review the microsoft [guide to Create a Linux virtual machine in the Azure portal](https://learn.microsoft.com/en-us/azure/virtual-machines/linux/quick-create-portal?tabs=ubuntu).
15+
## Provision the virtual machine
1616

17-
#### Create an Arm-based Azure Virtual Machine
17+
Creating a Cobalt 100 virtual machine follows the same process as creating any other Azure virtual machine. Launch the Azure portal and navigate to **Virtual Machines**.
1818

19-
Creating a virtual machine based on Azure Cobalt 100 is no different from creating any other virtual machine in Azure. To create an Azure virtual machine, launch the Azure portal and navigate to "Virtual Machines".
20-
1. Select "Create", and click on "Virtual Machine" from the drop-down list.
19+
Select **Create**, then select **Virtual Machine** from the drop-down list.
2120
2. Inside the "Basic" tab, fill in the Instance details such as "Virtual machine name" and "Region".
2221
3. Choose the image for your virtual machine (for example, Ubuntu Pro 24.04 LTS) and select “Arm64” as the VM architecture.
2322
4. In the “Size” field, click on “See all sizes” and select the D-Series v6 family of virtual machines. Select “D4ps_v6” from the list.
2423

2524
![Azure portal VM creation — Azure Cobalt 100 Arm64 virtual machine (D4ps_v6) alt-text#center](images/instance.png "Figure 1: Select the D-Series v6 family of virtual machines")
2625

27-
5. Select "SSH public key" as an Authentication type. Azure will automatically generate an SSH key pair for you and allow you to store it for future use. It is a fast, simple, and secure way to connect to your virtual machine.
28-
6. Fill in the Administrator username for your VM.
29-
7. Select "Generate new key pair", and select "RSA SSH Format" as the SSH Key Type. RSA could offer better security with keys longer than 3072 bits. Give a Key pair name to your SSH key.
30-
8. In the "Inbound port rules", select HTTP (80) and SSH (22) as the inbound ports.
26+
Select **SSH public key** as the authentication type. Azure automatically generates an SSH key pair and stores it for future use, providing a fast and secure way to connect to your virtual machine.
27+
28+
Fill in the administrator username for your VM.
29+
30+
Select **Generate new key pair**, then select **RSA SSH Format** as the SSH Key Type. RSA offers better security with keys longer than 3072 bits. Provide a name for your SSH key pair.
31+
32+
In the **Inbound port rules** section, select HTTP (80) and SSH (22) as the inbound ports.
3133

3234
![Azure portal VM creation — Azure Cobalt 100 Arm64 virtual machine (D4ps_v6) alt-text#center](images/instance1.png "Figure 2: Allow inbound port rules")
3335

34-
9. Click on the "Review + Create" tab and review the configuration for your virtual machine. It should look like the following:
36+
Select the **Review + Create** tab and review the configuration for your virtual machine. The configuration is similar to:
3537

3638
![Azure portal VM creation — Azure Cobalt 100 Arm64 virtual machine (D4ps_v6) alt-text#center](images/ubuntu-pro.png "Figure 3: Review and Create an Azure Cobalt 100 Arm64 VM")
3739

38-
10. Finally, when you are confident about your selection, click on the "Create" button, and click on the "Download Private Key and Create Resources" button.
40+
When you're satisfied with your configuration, select the Create button, then select Download Private Key and Create Resources.
3941

40-
![Azure portal VM creation — Azure Cobalt 100 Arm64 virtual machine (D4ps_v6) alt-text#center](images/instance4.png "Figure 4: Download Private key and Create Resources")
42+
![Azure portal VM creation — Azure Cobalt 100 Arm64 virtual machine (D4ps_v6) alt-text#center](images/instance4.png "Download Private key and Create Resources")
4143

42-
11. Your virtual machine should be ready and running within no time. You can SSH into the virtual machine using the private key, along with the Public IP details.
44+
Your virtual machine deploys within a few minutes. SSH into the virtual machine using the downloaded private key and the public IP address.
4345

44-
![Azure portal VM creation — Azure Cobalt 100 Arm64 virtual machine (D4ps_v6) alt-text#center](images/final-vm.png "Figure 5: VM deployment confirmation in Azure portal")
46+
![Azure portal VM creation — Azure Cobalt 100 Arm64 virtual machine (D4ps_v6) alt-text#center](images/final-vm.png "VM deployment confirmation in Azure portal")
4547

4648
{{% notice Note %}}
4749

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/background.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
11
---
2-
title: Technology Stack Overview
2+
title: Learn about Arm-based cloud platforms for RabbitMQ
33

44
weight: 2
55

66
layout: "learningpathall"
77
---
88

9-
## Cobalt 100 Arm-based processor
9+
## Understand Azure Cobalt 100 processors
1010

11-
Azures Cobalt 100 is built on Microsoft's first-generation, in-house Arm-based processor: the Cobalt 100. Designed entirely by Microsoft and based on Arms Neoverse N2 architecture, this 64-bit CPU delivers improved performance and energy efficiency across a broad spectrum of cloud-native, scale-out Linux workloads. These include web and application servers, data analytics, open-source databases, caching systems, and other related technologies. Running at 3.4GHz, the Cobalt 100 processor allocates a dedicated physical core for each vCPU, ensuring consistent and predictable performance.
11+
Azure's Cobalt 100 is Microsoft's first-generation, in-house Arm-based processor. Designed entirely by Microsoft and based on Arm's Neoverse N2 architecture, this 64-bit CPU delivers improved performance and energy efficiency across a broad spectrum of cloud-native, scale-out Linux workloads. These include web and application servers, data analytics, open-source databases, caching systems, and other related technologies. Running at 3.4 GHz, the Cobalt 100 processor allocates a dedicated physical core for each vCPU, ensuring consistent and predictable performance.
1212

13-
To learn more about Cobalt 100, refer to the blog [Announcing the preview of new Azure virtual machine based on the Azure Cobalt 100 processor](https://techcommunity.microsoft.com/blog/azurecompute/announcing-the-preview-of-new-azure-vms-based-on-the-azure-cobalt-100-processor/4146353).
13+
For more information about Cobalt 100, see the blog [Announcing the preview of new Azure virtual machine based on the Azure Cobalt 100 processor](https://techcommunity.microsoft.com/blog/azurecompute/announcing-the-preview-of-new-vms-based-on-the-azure-cobalt-100-processor/4146353).
1414

15-
## Google Axion C4A Arm instances in Google Cloud
15+
## Understand Google Axion C4A instances
1616

17-
Google Axion C4A is a family of Arm-based virtual machines built on Googles custom Axion CPU, which is based on Arm Neoverse-V2 cores. Designed for high-performance and energy-efficient computing, these virtual machines offer strong performance for modern cloud workloads such as CI/CD pipelines, microservices, media processing, and general-purpose applications.
17+
Google Axion C4A is a family of Arm-based virtual machines built on Google's custom Axion CPU, based on Arm Neoverse V2 cores. These virtual machines offer high-performance and energy-efficient computing for modern cloud workloads such as CI/CD pipelines, microservices, media processing, and general-purpose applications.
1818

1919
The C4A series provides a cost-effective alternative to x86 virtual machines while leveraging the scalability and performance benefits of the Arm architecture in Google Cloud.
2020

21-
To learn more about Google Axion, see the [Introducing Google Axion Processors, Arm-based CPUs](https://cloud.google.com/blog/products/compute/introducing-googles-new-arm-based-cpu) blog.
21+
For more information about Google Axion, see the [Introducing Google Axion Processors, Arm-based CPUs](https://cloud.google.com/blog/products/compute/introducing-googles-new-arm-based-cpu) blog.
2222

23-
## RabbitMQ
23+
## Understand RabbitMQ messaging
2424

25-
RabbitMQ is an open-source **message broker** that enables applications to communicate asynchronously using messaging patterns such as queues, publish/subscribe, and routing. It acts as an intermediary that reliably receives, stores, and forwards messages between producers and consumers.
25+
RabbitMQ is an open-source message broker that enables applications to communicate asynchronously using messaging patterns such as queues, publish/subscribe, and routing. It acts as an intermediary that reliably receives, stores, and forwards messages between producers and consumers.
2626

2727
RabbitMQ helps decouple application components, improve scalability, and increase fault tolerance by ensuring messages are not lost and can be processed independently. It supports multiple messaging protocols, including AMQP, and provides features such as message durability, acknowledgments, routing via exchanges, and flexible delivery guarantees.
2828

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/gcp_baseline.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
---
2-
title: RabbitMQ Baseline Testing on Google Axion C4A Arm Virtual Machine
2+
title: Validate RabbitMQ on Google Cloud
33
weight: 9
44

55
### FIXED, DO NOT MODIFY
66
layout: learningpathall
77
---
88

9-
## RabbitMQ Baseline Validation on GCP SUSE Arm64 VM
10-
This document defines a **baseline validation procedure** for RabbitMQ installed on a **Google Cloud SUSE Linux Arm64 virtual machine**.
11-
The purpose of this baseline is to confirm:
9+
Validate your RabbitMQ installation on the Google Cloud SUSE Linux Arm64 virtual machine. This baseline confirms:
1210

1311
- RabbitMQ service health
1412
- Management plugin availability
1513
- Queue operations (create, publish, consume)
1614
- CLI tooling functionality (`rabbitmqctl` and `rabbitmqadmin`)
1715

18-
### Check RabbitMQ node status
16+
## Check RabbitMQ node status
17+
1918
Verify that the RabbitMQ node is operational and healthy.
2019

2120
```console

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/gcp_firewall_setup.md

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,18 @@
11
---
2-
title: Create a Firewall Rule on GCP
2+
title: Create a firewall rule for RabbitMQ
33
weight: 6
44

55
### FIXED, DO NOT MODIFY
66
layout: learningpathall
77
---
88

9-
## Overview
10-
11-
In this section, you create a Firewall Rule within Google Cloud Console to expose TCP port 15672.
9+
Create a firewall rule in Google Cloud Console to expose TCP port 15672 for the RabbitMQ management interface.
1210

1311
{{% notice Note %}}
1412
For support on GCP setup, see the Learning Path [Getting started with Google Cloud Platform](/learning-paths/servers-and-cloud-computing/csp/google/).
1513
{{% /notice %}}
1614

17-
## Create a Firewall Rule in GCP
18-
19-
To expose TCP port 15672, create a firewall rule.
15+
## Configure the firewall rule
2016

2117
Navigate to the [Google Cloud Console](https://console.cloud.google.com/), go to **VPC Network > Firewall**, and select **Create firewall rule**.
2218

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/gcp_installation.md

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,40 @@
11
---
2-
title: Install RabbitMQ on GCP SUSE Arm64 VM
2+
title: Install RabbitMQ on Google Cloud SUSE VM
33
weight: 8
44

55
### FIXED, DO NOT MODIFY
66
layout: learningpathall
77
---
88

9-
## Install RabbitMQ on GCP SUSE Arm64 VM
10-
This guide describes a **step-by-step installation of RabbitMQ** on a **Google Cloud Platform SUSE Linux Arm64 virtual machine**, using **RPM packages** for both **Erlang** and **RabbitMQ Server**.
9+
Install RabbitMQ on a Google Cloud Platform SUSE Linux Arm64 virtual machine using RPM packages for both Erlang and RabbitMQ Server.
1110

12-
RabbitMQ needs Erlang to be installed before setting up the server.
11+
RabbitMQ requires Erlang to be installed first.
1312

1413

15-
### Prerequisites
14+
You need:
1615

1716
- GCP SUSE Linux Enterprise Server (Arm64)
1817
- Root or sudo privileges
1918
- Outbound internet access
2019

21-
### Refresh system repositories
22-
This step updates the system’s package list so the operating system knows about the latest software available from its repositories.
20+
## Refresh system repositories
21+
22+
Update the system's package list so the operating system recognizes the latest software available from its repositories.
2323

2424
```console
2525
sudo zypper refresh
2626
```
2727

28-
### Install required system utilities
29-
You can install the basic tools needed to download and manage packages.
28+
## Install required system utilities
29+
30+
Install the basic tools needed to download and manage packages.
3031

3132
```console
3233
sudo zypper install -y curl wget gnupg tar socat logrotate
3334
```
3435

35-
### Download Erlang RPM (Arm64)
36+
## Download Erlang RPM (Arm64)
37+
3638
RabbitMQ depends on Erlang. Download the Erlang RPM compatible with the Arm64 architecture.
3739

3840
```console
Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Create a Google Axion C4A Arm virtual machine on GCP
2+
title: Create a Google Axion C4A virtual machine
33
weight: 7
44

55
### FIXED, DO NOT MODIFY
@@ -8,8 +8,7 @@ layout: learningpathall
88

99
## Overview
1010

11-
In this section, you provision a Google Axion C4A Arm virtual machine on Google Cloud Platform (GCP) using the `c4a-standard-4` (4 vCPUs, 16 GB memory) machine type in the Google Cloud Console.
12-
We will then use this GCP VM to execute a few RabbitMQ use cases.
11+
In this section, you'll provision a Google Axion C4A Arm virtual machine on Google Cloud Platform (GCP) using the `c4a-standard-4` (4 vCPUs, 16 GB memory) machine type in the Google Cloud Console. You will then use this GCP VM to execute a few RabbitMQ use cases.
1312

1413
{{% notice Note %}}
1514
For support on GCP setup, see the Learning Path [Getting started with Google Cloud Platform](/learning-paths/servers-and-cloud-computing/csp/google/).
@@ -23,18 +22,16 @@ Under **Machine configuration**, populate fields such as **Instance name**, **Re
2322

2423
![Create a Google Axion C4A Arm virtual machine in the Google Cloud Console with c4a-standard-4 selected alt-text#center](images/gcp-vm.png "Creating a Google Axion C4A Arm virtual machine in Google Cloud Console")
2524

26-
Under **OS and Storage**, select **Change**, then choose an Arm64-based OS image. For this Learning Path, use **SUSE Linux Enterprise Server**. Select "Pay As You Go" for the license type and press **Select**.
25+
Under **OS and Storage**, select **Change**, then choose an Arm64-based OS image. For this Learning Path, use **SUSE Linux Enterprise Server**. Select **Pay As You Go** for the license type and select **Select**.
2726

2827
Under **Networking**, enable **Allow HTTP traffic** and add "allow-tcp-15672" as a network tag in the **Network tags** text field.
2928

30-
![Adding the TCP/15672 firewall rule to the VM](images/network-config.png "Adding the TCP/15672 firewall rule to the VM")
29+
![Adding the TCP/15672 firewall rule to the VM alt-text#center](images/network-config.png "Adding the TCP/15672 firewall rule to the VM")
3130

32-
Select **Create** to launch the instance. Once created, you see an **SSH** option and the public IP address for your VM in the list of VM instances. Save the public IP address as you need it in the next step. Select the **SSH** option to launch an SSH shell into your VM instance.
31+
Select **Create** to launch the instance. After the instance is created, the **SSH** option and public IP address appear in the VM instances list. Save the public IP address for later use. Select the **SSH** option to open an SSH shell to your VM instance.
3332

3433
![Invoke an SSH session via your browser alt-text#center](images/gcp-pubip-ssh.png "Invoke an SSH session into your running VM instance")
3534

36-
A window opens from your browser and you see a shell into your VM instance.
35+
A browser window opens with a shell session to your VM instance.
3736

3837
![Terminal Shell in your VM instance alt-text#center](images/gcp-shell.png "Terminal shell in your VM instance")
39-
40-
Next, install RabbitMQ.

content/learning-paths/servers-and-cloud-computing/rabbitmq-gcp/gcp_use_case1.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: RabbitMQ Use Case 1 – Event Processing with Python Workers
2+
title: RabbitMQ use Case 1 - event processing with Python Workers
33
weight: 10
44

55
### FIXED, DO NOT MODIFY

0 commit comments

Comments
 (0)