操作場景
每個Vhost(Virtual Hosts)相當于一個相對獨立的RabbitMQ服務器。Vhost用作邏輯隔離,分別管理Exchange、Queue和Binding,使得應用安全地運行在不同的Vhost上,相互之間不會干擾。一個實例下可以有多個Vhost,一個Vhost里可以有若干個Exchange和Queue。生產者和消費者連接RabbitMQ實例時,需要指定一個Vhost。Vhost的相關介紹,請參考官網文檔。
本章節主要介紹創建Vhost的操作,有以下幾種方式,您可以根據實際情況選擇任意一種方式:
- 方式一:在控制臺創建
- 方式二:使用RabbitMQ WebUI創建
- 方式三:調用API創建
方式一:在控制臺創建
步驟 1 登錄管理控制臺。
步驟 2 在管理控制臺右上角單擊
,選擇區域。
說明此處請選擇RabbitMQ實例所在的區域。
步驟 3 在管理控制臺左上角單擊
,選擇“企業中間件”->“分布式消息服務”->“RabbitMQ專享版”,進入分布式消息服務RabbitMQ專享版頁面。
步驟 4 單擊實例名稱,進入實例詳情頁面。
步驟 5 在左側導航欄選擇“Vhost列表”,進入Vhost列表頁面。
步驟 6 單擊“創建Vhost”,彈出“創建Vhost”對話框。
步驟 7 設置Vhost的名稱,單擊“確定”。
創建成功后,在Vhost列表頁面顯示創建成功的Vhost。
圖1 Vhost列表(控制臺)


“tracing”表示是否開啟消息追蹤功能。開啟消息追蹤后,您可以跟蹤消息的轉發路徑。
說明
Vhost創建成功后,無法修改名稱。
實例創建后,會自動創建一個名為“/”的Vhost。
方式二:使用RabbitMQ WebUI創建
步驟 1 登錄RabbitMQ WebUI。
步驟 2 在頂部導航欄選擇“Admin”,進入Admin頁面。
步驟 3 在右側導航欄選擇“Virtual Hosts”,進入Virtual Hosts頁面。
圖2 Virtual Hosts


步驟 4 在“Add a new virtual host”區域,輸入Vhost名稱,單擊“Add virtual host”。
圖3 創建Vhost(WebUI)


創建成功后,在“All virtual hosts”區域,顯示創建成功的Vhost。
圖4 Vhost列表(WebUI)


方式三:調用API創建
步驟 1 在Linux中,連接RabbitMQ實例。
步驟 2 執行以下命令,創建Vhost。
curl -i -X PUT //${USERNAME}:${PASSWORD}@${HOST}:${PORT}/api/vhosts/${VHOST_NAME}
參數說明如下:
- USERNAME:創建RabbitMQ實例時,設置的用戶名。在實例詳情頁的“連接信息”區域,查看用戶名。
- PASSWORD:創建RabbitMQ實例時,設置的密碼。如果忘記密碼,參考重置實例密碼,重新設置密碼。
- HOST:WebUI的地址。在實例詳情頁的“連接信息”區域,查看Web界面UI地址。
- PORT:WebUI的端口號。在實例詳情頁的“連接信息”區域,查看Web界面UI地址中的端口號。
- VHOST_NAME:待創建Vhost的名稱。
示例如下:
curl -i -X PUT //root:txxxt@192.168.1.3:15672/api/vhosts/vhost-demo
創建成功后,回顯如圖5所示。
圖5 Vhost創建成功

