Apache ActiveMQ là một message broker và máy chủ mẫu tích hợp mã nguồn mở và miễn phí. Nó hỗ trợ nhiều máy khách và giao thức đa ngôn ngữ từ JAVA, C++, C, Python, Perl, PHP, v.v. Nó cung cấp nhiều tính năng như Nhóm tin nhắn, Điểm đến ảo, Ký tự đại diện và Điểm đến tổng hợp, v.v. Nó có thể dễ dàng tích hợp vào các ứng dụng spring.
Trong hướng dẫn này, chúng ta sẽ cài đặt Apache ActiveMQ trên máy chủ CentOS 7.
Điều kiện tiên quyết
Sau khi hệ thống của bạn được cập nhật, hãy tiến hành cài đặt JAVA.
Nếu bạn chưa cài đặt wget, bạn có thể chạy yum -y install wget để cài đặt wget. Bây giờ hãy cài đặt RPM đã tải xuống bằng lệnh sau.
Bây giờ bạn có thể kiểm tra phiên bản Java bằng lệnh sau.
Bạn sẽ nhận được kết quả sau.
Bạn cũng sẽ cần kiểm tra xem biến môi trường JAVA_HOME đã được đặt chưa. Chạy lệnh sau để thực hiện tương tự.
Nếu bạn nhận được đầu ra null hoặc trống, bạn sẽ cần phải đặt thủ công biến JAVA_HOME. Chỉnh sửa tệp .bash_profile bằng trình chỉnh sửa yêu thích của bạn. Trong hướng dẫn này, chúng ta sẽ sử dụng trình chỉnh sửa nano. Chạy lệnh sau để chỉnh sửa .bash_profile bằng nano.
Bây giờ hãy thêm các dòng sau vào cuối tệp.
Bây giờ hãy tạo nguồn tệp bằng lệnh sau.
Bây giờ bạn có thể chạy lại lệnh echo $JAVA_HOME để kiểm tra xem biến môi trường đã được đặt hay chưa.
Nếu bạn chưa cài đặt wget, bạn có thể chạy yum -y install wget. Bạn luôn có thể tìm thấy liên kết đến phiên bản mới nhất trên trang tải xuống ActiveMQ.
Giải nén tệp lưu trữ bằng lệnh sau.
Đổi tên thư mục ActiveMQ để đơn giản hơn bằng cách chạy.
ActiveMQ hiện đã được cài đặt trên hệ thống của bạn.
Bạn có thể khởi động ActiveMQ ngay lập tức dưới dạng tiến trình nền trước bằng cách chạy lệnh sau.
Để khởi động ActiveMQ dưới dạng tiến trình nền, hãy chạy:
Bạn sẽ nhận được kết quả sau nếu khởi động thành công.
Để dừng ActiveMQ, bạn có thể chạy lệnh sau.
Tạo tệp dịch vụ systemd bằng trình soạn thảo văn bản yêu thích của bạn. Trong hướng dẫn này, chúng ta sẽ sử dụng trình soạn thảo nano. Nếu bạn chưa cài đặt nano, bạn có thể chạy yum -y install nano.
Bây giờ hãy điền nội dung sau vào tệp.
Bây giờ bạn có thể khởi động ActiveMQ bằng cách sử dụng:
Để cấu hình ActiveMQ tự động khởi động khi khởi động, hãy sử dụng.
Để kiểm tra xem dịch vụ ActiveMQ có được khởi động đúng cách không, bạn có thể chạy lệnh sau để kiểm tra trạng thái của dịch vụ ActiveMQ.
Bạn sẽ nhận được đầu ra tương tự như hiển thị bên dưới.
Nếu bạn đã cài đặt firewalld, bạn sẽ phải cho phép cổng 8161 đi qua tường lửa. Chạy lệnh sau để thực hiện tương tự.
Tên người dùng và mật khẩu ban đầu cho Apache ActiveMQ là admin và admin. Sau khi đăng nhập, bạn sẽ thấy giao diện sau.
Bạn nên thay đổi mật khẩu ngay sau khi đăng nhập.
Trong hướng dẫn này, chúng ta sẽ cài đặt Apache ActiveMQ trên máy chủ CentOS 7.
Điều kiện tiên quyết
- Máy chủ CentOS 7 tối thiểu
- Quyền root. Hướng dẫn này được viết dưới dạng người dùng root, nếu bạn đăng nhập dưới dạng người dùng sudo, hãy chạy sudo -i.
Cập nhật Hệ thống Cơ sở
Trước khi cài đặt bất kỳ gói nào, bạn nên cập nhật các gói và kho lưu trữ bằng lệnh sau.
Mã:
yum -y update
Cài đặt JAVA
ActiveMQ hỗ trợ cả OpenJDK và Oracle JAVA, trong hướng dẫn này, chúng tôi sẽ cài đặt phiên bản mới nhất của Oracle Java vào máy chủ. Chạy lệnh sau để tải xuống gói RPM.
Mã:
wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"
Mã:
yum -y localinstall jdk-8u131-linux-x64.rpm
Mã:
java -version
Mã:
[root@liptan-pc ~]# java -versionjava version "1.8.0_131"Java(TM) SE Runtime Environment (bản dựng 1.8.0_131-b11)Java HotSpot(TM) 64-Bit Server VM (bản dựng 25.131-b11, chế độ hỗn hợp)
Mã:
echo $JAVA_HOME
Mã:
nano ~/.bash_profile
Mã:
export JAVA_HOME=/usr/java/jdk1.8.0_131/export JRE_HOME=/usr/java/jdk1.8.0_131/jre
Mã:
source ~/.bash_profile
Mã:
[root@pc ~]# echo $JAVA_HOME/usr/java/jdk1.8.0_131/
Cài đặt ActiveMQ
ActiveMQ cung cấp các tệp nhị phân cho các hệ thống Unix được biên dịch trước và có thể sử dụng trực tiếp. Yêu cầu phụ thuộc duy nhất là cài đặt JAVA vào hệ thống. Vì chúng tôi đã cài đặt JAVA nên chúng tôi có thể tiến hành tải xuống ActiveMQ.
Mã:
wget http://www-eu.apache.org/dist//activemq/5.15.0/apache-activemq-5.15.0-bin.tar.gz
Giải nén tệp lưu trữ bằng lệnh sau.
Mã:
tar -zxvf apache-activemq-*-bin.tar.gz -C /var
Mã:
mv /var/apache-activemq-*/ /var/activemq/
Đang khởi động ActiveMQ
Đổi thư mục hiện tại của bạn thành thư mục cài đặt ActiveMQ.
Mã:
cd /var/activemq
Mã:
./bin/activemq console
Mã:
./bin/activemq start
Mã:
[root@pc activemq]# ./bin/activemq startINFO: Đang tải '/var/activemq//bin/env'INFO: Sử dụng java '/usr/java/jdk1.8.0_131//bin/java'INFO: Đang bắt đầu - kiểm tra các tệp nhật ký được chỉ định trong logging.properties và log4j.properties để biết thông tin chi tiếtINFO: pidfile đã tạo: '/var/activemq//data/activemq.pid' (pid '27680')
Mã:
./bin/activemq stop
Tạo dịch vụ Systemd
Mặc dù bạn có thể dễ dàng chạy ActiveMQ bằng các lệnh trên, nhưng bạn nên sử dụng dịch vụ systemd để quản lý quy trình ActiveMQ. Sử dụng dịch vụ Systemd sẽ đảm bảo ActiveMQ sẽ tự động khởi động khi khởi động và khi xảy ra lỗi.Tạo tệp dịch vụ systemd bằng trình soạn thảo văn bản yêu thích của bạn. Trong hướng dẫn này, chúng ta sẽ sử dụng trình soạn thảo nano. Nếu bạn chưa cài đặt nano, bạn có thể chạy yum -y install nano.
Mã:
nano /etc/systemd/system/activemq.service
Mã:
[Unit]Description=ActiveMQ serviceAfter=network.target[Service]Type=forkingExecStart=/var/activemq/bin/activemq startExecStop=/var/activemq/bin/activemq stopUser=rootGroup=rootRestart=alwaysRestartSec=9StandardOutput=syslogStandardError=syslogSyslogIdentifier=activemq[Install]WantedBy=multi-user.target
Mã:
systemctl start activemq
Mã:
systemctl enable activemq
Mã:
systemctl status activemq
Mã:
? activemq.service - Dịch vụ ActiveMQ Đã tải: đã tải (/etc/systemd/system/activemq.service; đã bật; cài đặt trước của nhà cung cấp: đã tắt) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ bảy 2017-07-15 17:05:24 UTC; 6 giây trước Tiến trình: 28815 ExecStart=/var/activemq/bin/activemq start (code=exited, status=0/SUCCESS) PID chính: 28867 (java) CGroup: /system.slice/activemq.service ??28867 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth...15 tháng 7 17:05:24 centos systemd[1]: Đang khởi động dịch vụ ActiveMQ...15 tháng 7 17:05:24 centos activemq[28815]: THÔNG TIN: Đang tải '/var/activemq//bin/env'15 tháng 7 17:05:24 centos activemq[28815]: THÔNG TIN: Đang sử dụng java '/usr/bin/java'Tháng 7 15 17:05:24 centos activemq[28815]: THÔNG TIN: Đang bắt đầu - kiểm tra các tệp nhật ký được chỉ định trong logging.propertie...tails15 tháng 7 17:05:24 centos activemq[28815]: THÔNG TIN: tệp pid đã tạo: '/var/activemq//data/activemq.pid' (pid '28867')15 tháng 7 17:05:24 centos systemd[1]: Đã bắt đầu dịch vụ ActiveMQ.
Sử dụng Bảng điều khiển web quản trị
Để truy cập bảng điều khiển quản trị của ActiveMQ, hãy khởi động dịch vụ ActiveMQ. Sử dụng trình duyệt web yêu thích của bạn, hãy mở URL sau.
Mã:
http://Your_Server_IP:8161/admin
Mã:
firewall-cmd --zone=public --permanent --add-port=8161/tcp
Mã:
firewall-cmd --reload
Bạn nên thay đổi mật khẩu ngay sau khi đăng nhập.