Belajar RabbitMQ - Installation & First Steps dengan RabbitMQ
Episode 3 of 33

Belajar RabbitMQ - Installation & First Steps dengan RabbitMQ

Saatnya menjalankan RabbitMQ yang sebenarnya. Di episode ini kalian menginstall RabbitMQ lewat package manager dan Docker, mengaktifkan Management Plugin, membuat admin user pertama, serta menjelajahi Management UI dan alat baris perintah rabbitmqctl untuk memastikan node sehat.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Pendahuluan

Semua teori di dua episode pertama sekarang akan dipraktikkan. Di episode 3 ini kalian akan menjalankan RabbitMQ yang sesungguhnya, mengaktifkan dashboard web, dan berkenalan dengan alat-alat operasional utama: rabbitmqctl, rabbitmq-plugins, dan Management UI.

Kami akan menunjukkan dua jalur instalasi: lewat package manager untuk sistem operasi berbasis Debian/RHEL, dan lewat Docker yang paling praktis dan konsisten di semua platform. Jalur Docker kami rekomendasikan karena image resmi rabbitmq sudah menyertakan Erlang yang kompatibel — kalian tidak perlu mengurus kompatibilitas versi secara manual.

Yang paling penting di episode ini: kalian akan membuat admin user pertama dan menghapus atau mengunci user guest. User guest hanya boleh dipakai dari localhost; membiarkannya aktif untuk akses jarak jauh adalah kesalahan keamanan paling umum di RabbitMQ.

Metode Instalasi

Instalasi via Package Manager

Untuk Debian/Ubuntu, paket rabbitmq-server tersedia di repo resmi. Untuk RHEL/CentOS, paket rabbitmq-server ada di EPEL. Instalasi otomatis akan menarik dependency Erlang:

Instalasi di Debian/Ubuntu
sudo apt update
sudo apt install -y rabbitmq-server
sudo systemctl enable rabbitmq-server
sudo systemctl start rabbitmq-server

Perintah systemctl start rabbitmq-server memulai service sebagai daemon. Cek status service untuk memastikan aktif:

Cek status service
systemctl status rabbitmq-server

Instalasi via Docker (Rekomendasi)

Cara paling bersih dan portable adalah lewat image resmi. Image rabbitmq:3.13-management sudah menyertakan Management Plugin sekaligus:

Jalankan RabbitMQ dengan Docker
docker run -d --name rabbitmq \
  -p 5672:5672 -p 15672:15672 \
  rabbitmq:3.13-management

Perintah docker run di atas memetakan port 5672 untuk AMQP dan 15672 untuk Management UI. Setelah beberapa detik, RabbitMQ siap dipakai.

Konfigurasi Awal dan Management Plugin

Mengaktifkan Management Plugin

Jika kalian install via package manager, aktifkan plugin secara manual:

Aktifkan Management Plugin
rabbitmq-plugins enable rabbitmq_management

Plugin ini menyediakan Management UI di port 15672 serta Management API yang kita panggil lewat cURL di episode 0. Setelah aktif, akses UI di http://localhost:15672 dan login dengan guest:guest.

Membuat Admin User Pertama

User guest hanya boleh login dari localhost. Untuk lingkungan development, buat user admin sendiri:

Buat user admin baru
rabbitmqctl add_user arman 'Arman123!'
rabbitmqctl set_user_tags arman administrator
rabbitmqctl set_permissions -p / arman '.*' '.*' '.*'

Perintah rabbitmqctl set_permissions memberi akses configure, write, dan read pada vhost / untuk semua resource. Detail permission akan kita bedah di episode 16.

Warning

Jangan gunakan password contoh di atas untuk produksi. Selalu gunakan password kuat, dan pertimbangkan kebijakan password yang dibahas di episode 15.

Interaksi Pertama

Menggunakan rabbitmqctl

rabbitmqctl adalah alat kontrol utama. Beberapa perintah yang paling sering dipakai:

Perintah dasar rabbitmqctl
rabbitmqctl status
rabbitmqctl list_users
rabbitmqctl list_queues name messages
rabbitmqctl list_connections name channel_number

Perintah rabbitmqctl status menampilkan node health, versi Erlang, memory, dan disk. list_queues menampilkan queue beserta jumlah pesannya — alat penting untuk memantau antrean yang menumpuk.

Menjelajahi Management UI

Masuk ke http://localhost:15672 dan perhatikan tab-tabnya. Tab Overview menampilkan ringkasan global: total message rate, connection, dan channel. Tab Queues and Streams menampilkan semua queue, sedangkan tab Exchanges menampilkan exchange default dan binding-nya. Tab Admin digunakan untuk mengelola user dan vhost.

Troubleshooting Dasar

Semua log RabbitMQ tersimpan di file. Lokasi default: /var/log/rabbitmq/rabbit@<hostname>.log untuk instalasi native, dan bisa dilihat lewat docker logs jika memakai container:

Lihat log container
docker logs --tail 50 rabbitmq

Jika service gagal start, log adalah sumber kebenaran pertama. Error umum seperti port sudah terpakai atau cookie tidak konsisten selalu muncul di log dengan jelas.

Ringkasan Langkah Pertama

Sampai di sini kalian sudah memiliki RabbitMQ yang berjalan, Management UI yang aktif, dan user admin sendiri. Mari kita rekap langkah-langkah yang sudah dilalui:

  • Install RabbitMQ via package manager atau Docker.
  • Aktifkan Management Plugin dan akses UI di port 15672.
  • Buat admin user dan beri permission penuh pada vhost /.
  • Verifikasi node health dengan rabbitmqctl status.
  • Kenali lokasi log untuk troubleshooting awal.

Tip

Biasakan menulis semua perintah rabbitmqctl di sebuah skrip atau catatan. Di episode 30, kalian akan mengotomasi langkah yang sama dengan Infrastructure as Code.

Penutup

Di episode 3 ini kalian sudah menjalankan RabbitMQ pertama kali, mengaktifkan Management Plugin, membuat admin user, dan menggunakan rabbitmqctl untuk memeriksa kesehatan node. Kini kalian memiliki panggung tempat semua percobaan berikutnya berlangsung.

Inti yang harus dibawa pulang:

  • Docker dengan image rabbitmq:3.13-management adalah jalur instalasi tercepat.
  • Management Plugin menyediakan UI di port 15672 dan REST API.
  • User guest hanya untuk localhost; buat admin user sendiri.
  • rabbitmqctl status adalah perintah pertama untuk memeriksa kesehatan node.
  • Log menyimpan semua jejak kegagalan — selalu periksa log saat troubleshooting.
  • Port 5672 untuk AMQP, 15672 untuk Management UI.

Di episode 4 selanjutnya kalian akan menulis producer dan consumer pertama — Hello World — memakai Python pika, Node.js amqplib, dan Go amqp091-go, sekaligus belajar mengelola connection dan channel dengan benar. Pastikan RabbitMQ kalian sudah berjalan, karena kode pertama akan segera kita tulis!