Apache ActiveMQ adalah broker pesan open source yang ditulis dalam Java yang dikembangkan oleh Apache. Ini adalah salah satu broker pesan paling populer. Menawarkan kekuatan dan fleksibilitas, mendukung multi-protokol dan server pesan berbasis java. Konektivitas dari bahasa pemrograman utama seperti C, C++, Python, .Net, dll.
Apache ActiveMQ memungkinkan Anda untuk mengintegrasikan aplikasi multi-platform menggunakan protokol AMPQ yang ada di mana-mana. Pertukaran antara aplikasi web menggunakan STOMP melalui soket web, mengelola perangkat IoT menggunakan MQTT, dan mendukung infrastruktur JMS dan seterusnya.
Dalam tutorial ini, kami akan menunjukkan cara menginstal Apache ActiveMQ pada Debian Buster 10 terbaru. Kami akan menginstal ActiveMQ menggunakan file biner resmi, menyiapkan ActiveMQ sebagai layanan sistem, dan mengaktifkan otentikasi kata sandi.
Prasyarat
Untuk panduan ini, kami akan menggunakan Debian Buster 10 terbaru dengan RAM 2 GB, ruang disk kosong 50 GB, dan 2 CPU.
Apa yang akan kita lakukan?
- Instal Java di Debian 10
- Unduh dan Instal Apache ActiveMQ
- Siapkan Apache ActiveMQ sebagai Layanan Systemd
- Siapkan Kata Sandi Terenkripsi untuk Konsol Web
- Pengujian
Langkah 1 - Instal Java di Debian 10
Pertama, kita akan menginstal Java OpenJDK dan JRE ke Debian Buster 10. Kedua paket tersedia secara default di repositori Debian.
Perbarui semua repositori yang tersedia di sistem Debian dan instal Java OpenJDK dan JRE menggunakan perintah apt di bawah ini.
sudo apt update
sudo apt install default-jdk default-jre
Setelah semua instalasi selesai, periksa versi Java menggunakan perintah berikut.
java -version
Di bawah ini adalah respons yang akan Anda dapatkan.
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1, mixed mode, sharing)
Hasilnya, Java OpenJDK dan JRE '11' telah terinstal di Server Debian.
Langkah 2 - Unduh dan Instal Apache ActiveMQ
Pada langkah ini, kita akan mendownload dan menginstal Apache ActiveMQ ke sistem Debian kita.
Sebelum melangkah lebih jauh, mari kita buat pengguna sistem baru 'activemq' menggunakan perintah berikut.
adduser --system --no-create-home --disabled-login --group activemq
Sekarang unduh file Apache ActiveMQ Binary dan ekstrak file menggunakan perintah berikut.
wget --quiet http://www-us.apache.org/dist/activemq/5.15.12/apache-activemq-5.15.12-bin.tar.gz
tar -xf apache-activemq-5.15.12-bin.tar.gz
Setelah itu, pindahkan direktori Apache ActiveMQ ke '/opt/activemq' dan ubah kepemilikan direktori ActiveMQ menjadi pengguna 'activemq'.
mv apache-activemq-*/ /opt/activemq
sudo chown -R activemq:activemq /opt/activemq
Akibatnya, Apache ActiveMQ diinstal pada Sistem Debian.
Langkah 3 - Siapkan Apache ActiveMQ sebagai Layanan Systemd
Setelah mengunduh dan menginstal Apache ActiveMQ, kami akan menyiapkan ActiveMQ sebagai layanan sistem.
Sekarang buka direktori '/etc/systemd/system' dan buat file layanan baru 'activemq.service' menggunakan editor vim.
cd /etc/systemd/system/
vim activemq.service
Rekatkan konfigurasi berikut ke dalamnya.
[Unit]
Description=Apache ActiveMQ
After=network.target
[Service]
Type=forking
WorkingDirectory=/opt/activemq/bin
ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop
Restart=on-abort
User=activemq
Group=activemq
[Install]
WantedBy=multi-user.target
Simpan dan tutup.
Selanjutnya, muat ulang manajer systemd untuk menerapkan konfigurasi layanan systemd baru.
systemctl daemon-reload
Sekarang mulai server ActiveMQ dan tambahkan ke boot sistem.
systemctl start activemq
systemctl enable activemq
Hasilnya, Apache ActiveMQ aktif dan berjalan, periksa menggunakan perintah berikut.
systemctl status activemq
Di bawah ini adalah hasil yang akan Anda dapatkan.
Langkah 4 - Siapkan Sandi Terenkripsi untuk Konsol Web
Secara default, otentikasi ActiveMQ Web Console diaktifkan, semua pengguna dan sandi untuk ActiveMQ disimpan di 'jetty-realm.properties' sebagai teks biasa. Untuk langkah ini, kami akan mengubah kata sandi teks biasa default dengan kata sandi terenkripsi.
Pertama, unduh distribusi jetty dan ekstrak.
wget --quiet https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.4.28.v20200408/jetty-distribution-9.4.28.v20200408.tar.gz
tar -xf jetty-distribution-*.tar.gz
Sekarang buka direktori 'jetty-distribution-*'.
cd jetty-distribution-*/
Jalankan perintah berikut untuk menghasilkan kata sandi Anda, dan pastikan untuk mengubah 'garam' dan kata sandi Anda sendiri.
java -cp lib/jetty-util-9*.jar org.eclipse.jetty.util.security.Password salt password
Sekarang Anda akan mendapatkan respons berikut.
2020-04-29 07:15:22.367:INFO::main: Logging initialized @194ms to org.eclipse.jetty.util.log.StdErrLog
mypassword
OBF:1uh41zly1x8g1vu11ym71ym71vv91x8e1zlk1ugm
MD5:34819d7beeabb9260a5c854bc85b3e44
CRYPT:myylAylKPNtmw
Salin 'CRYPT:myy.. .' sandi terenkripsi ke catatan Anda, karena akan digunakan untuk ActiveMQ.
Sekarang masuk ke direktori konfigurasi ActiveMQ '/opt/activemq/conf' dan edit konfigurasi 'jetty-realm.properties' menggunakan editor vim.
cd /opt/activemq/conf/
vim jetty-realm.properties
Ubah kata sandi admin default dengan kata sandi terenkripsi yang dihasilkan 'CRYPT:myy...' seperti di bawah ini.
admin: CRYPT:myylAylKPNtmw, admin
user: user, user
Simpan dan tutup.
Selanjutnya, restart layanan Apache ActiveMQ untuk menerapkan konfigurasi baru.
systemctl restart activemq
Hasilnya, konfigurasi Konsol Web ActiveMQ dengan kata sandi terenkripsi telah selesai.
Langkah 5 - Pengujian
Sekarang buka browser web Anda dan ketik alamat IP server dengan port '8161'.
http://serverip:8161/
Dan Anda akan mendapatkan halaman index.html default dari Konsol Web ActiveMQ.
Selanjutnya, tambahkan jalur '/admin' pada URL seperti di bawah ini.
http://serverip:8161/admin
Dan Anda akan diminta untuk otentikasi ActiveMQ.
Ketik pengguna default 'admin' dengan kata sandi Anda seperti yang dibuat di atas, lalu klik 'OK' untuk login.
Setelah password Anda benar, Anda akan mendapatkan Dashboard ActiveMQ seperti di bawah ini.
Hasilnya, instalasi dan konfigurasi Apache ActiveMQ pada Debian Buster 10 telah berhasil diselesaikan.