Updated on 2022-09-13 GMT+08:00

Buying an Instance


DMS provides RabbitMQ instances that are physically isolated for each tenant. You can customize the computing capabilities and storage space of a RabbitMQ instance based on service requirements.

RabbitMQ is an open-source service based on the Advanced Message Queuing Protocol (AMQP). It is used to store and forward messages in a distributed system. A RabbitMQ server is compiled in Erlang (supporting high concurrency, distributed deployment, and robust fault tolerance), and a RabbitMQ client can be compiled in various programming languages, including Python, Ruby, .NET, Java, JMS, C, PHP, ActionScript, XMPP, STOMP, and AJAX.

AMQP is an open standard application-layer protocol for message-oriented middleware. Its key features are message orientation, queuing, routing, reliability, and security.


A VPC configured with security groups and subnets is available.


  1. Log in to the management console.
  2. In the upper left corner, click and select a region.

    Select the same region as your application service.

  3. Click and choose Application > Distributed Message Service for RabbitMQ to open the console of DMS for RabbitMQ.
  4. Click Buy Instance in the upper right corner of the page.
  5. Specify Billing Mode, Region, Project, and AZ.
  6. Specify the instance name and the enterprise project.
  7. Configure the following instance parameters.

    1. Version: RabbitMQ version. Currently, 3.7.17 and 3.8.35 are supported.
    2. Instance Type: Select Single-node or Cluster.
      • Single-node: There is only one RabbitMQ broker.
      • Cluster: There are multiple RabbitMQ broker, achieving highly reliable message storage.
    3. CPU Architecture: Currently, only x86 architecture is supported.
    4. Specifications: Select specifications as required.

      To ensure service stability and reliability, DMS for RabbitMQ sets the default memory high watermark to 40%. Publishers will be blocked if the memory usage exceeds 40%. To avoid reaching the high watermark, retrieve messages stacked in the queue in time.

    5. Brokers: Select the required number of brokers.

      This parameter is available only in CN North-Beijing4, CN East-Shanghai1, CN South-Guangzhou, AP-Singapore, AF-Johannesburg, and LA-Santiago.

    6. Storage Space: Indicates the disk type and total storage space of the RabbitMQ instance.

      For details on how to select a disk type, see Disk Types and Disk Performance.

      • For a single-node instance, the value range is 200 GB to 90,000 GB.
      • For a cluster instance, the value range can be 100 GB x Number of brokers to 90,000 GB, 200 GB x Number of brokers to 90,000 GB, or 300 GB x Number of brokers to 90,000 GB.
    7. VPC: Select a VPC and a subnet.

      A VPC provides an isolated virtual network for your RabbitMQ instances. You can configure and manage the network as required.

    8. Security Group: Select a security group.

      A security group is a set of rules that control access to ECSs. It provides access policies for mutually trusted ECSs with the same security protection requirements in the same VPC.

      Click Manage Security Group. On the console that is displayed, view or create security groups.

    Figure 1 Configuring the instance parameters

  8. Enter the username and password used for connecting to the RabbitMQ instance.
  9. Click More Settings to configure more parameters.

    1. Configure Public Access.

      Public access can be enabled or disabled.

      A RabbitMQ instance with public access enabled can be accessed by using an EIP. After you enable public access, Elastic IP Address is displayed. Select an EIP or click Create Elastic IP to view or buy EIPs.

      Figure 2 Configuring public access for a RabbitMQ instance
      • In comparison with intra-VPC access, enabling public access might lead to packet loss and jitter. Therefore, you are advised to enable public access only during the service development and testing phases.
      • If you manually unbind or delete an EIP on the VPC console, the public access function of the corresponding RabbitMQ instance is automatically disabled.
    2. Configure SSL.

      This parameter indicates whether SSL authentication is enabled when a client is accessing an instance. If SSL is enabled, data will be encrypted before transmission for enhanced security.

      Once the instance is created, SSL cannot be enabled or disabled.

    3. Specify tags.

      Tags are used to identify cloud resources. When you have many cloud resources of the same type, you can use tags to classify cloud resources by dimension (for example, usage, owner, or environment).

      • If you have created predefined tags, select a predefined pair of tag key and value. You can click View predefined tags to go to the Tag Management Service (TMS) console and view or create tags.
      • You can also create new tags by entering Tag key and Tag value.

      Up to 20 tags can be added to each RabbitMQ instance. For details about the requirements on tags, see Managing Instance Tags.

    4. Enter a description of the instance.

  10. Click Buy Now.
  11. Confirm the instance information, read and agree to the HUAWEI CLOUD Customer Agreement, and click Submit.
  12. Return to the instance list and check whether the instance has been created.

    It takes 3 to 15 minutes to create an instance. During this period, the instance status is Creating.
    • If the instance is created successfully, its status changes to Running.
    • If the instance fails to be created, view Instance Creation Failures. Delete the instance by referring to Deleting an Instance and create another instance. If the RabbitMQ instance creation fails a second time, contact customer service.