1. erlang与rabbitmq版本对应关系:
https://www.rabbitmq.com/which-erlang.html
2. 安装erlang
下载地址:
http://www.erlang.org/downloads
1.安装依赖 yum install -y gcc gcc-c++ ncurses ncurses-base ncurses-devel ncurses-libs ncurses-static ncurses-term ocaml-curses ocaml-curses-devel zlib-devel openssl-devel perl xz xmlto kernel-devel m4 glibc-devel socat make 2.下载 cd /usr/local/src/ wget -c http://erlang.org/download/otp_src_20.2.tar.gz 3.解压 tar -zxvf otp_src_20.2.tar.gz 4.编译 cd /usr/local/src/otp_src_20.2/ ./configure --prefix=/usr/local/erlang 5.安装 cd /usr/local/src/otp_src_20.2/ make && make install 6.测试安装是否成功 cd /usr/local/erlang/bin/ ./erl 输入 halt(). 退出控制台 7.配置环境变量 vim /etc/profile #erlang export PATH=$PATH:/usr/local/erlang/bin #生效环境变量 source /etc/profile 任意地方输入erl能进入命令行, 那么就说明配置成功了。
3. 安装rabbitmq
下载地址:
http://www.rabbitmq.com/releases/rabbitmq-server
1.下载 cd /usr/local/src/ wget -c http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.15/rabbitmq-server-generic-unix-3.6.15.tar.xz 2.解压 cd /usr/local/src/ xz -d rabbitmq-server-generic-unix-3.6.15.tar.xz tar -xvf rabbitmq-server-generic-unix-3.6.15.tar mv /usr/local/src/rabbitmq_server-3.6.15 /usr/local/ 3.配置环境变量 vim /etc/profile #rabbitmq export PATH=$PATH:/usr/local/rabbitmq_server-3.6.15/sbin source /etc/profile 4.启动后台管理 rabbitmq-plugins enable rabbitmq_management 5.启动 rabbitmq-server -detached 6.查看状态 rabbitmqctl status 7.创建一个用户,账号admin 密码admin rabbitmqctl add_user admin admin 8.将admin用户赋管理员权限 rabbitmqctl set_user_tags admin administrator rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" 9.访问管理页面,默认为端口15672 #默认来宾用户:guest, 来宾用户密码:guest http://192.168.10.33:15672
4. rabbitmq操作命令
#启动后台管理 rabbitmq-plugins enable rabbitmq_management #启动 rabbitmq-server -detached #关闭 rabbitmqctl stop #查看状态 rabbitmqctl status #设置端口号或者关闭防火墙,以便外部访问 iptables -I INPUT -p tcp --dport 15672 -j ACCEPT 或 service iptables stop #查看有哪些用户 rabbitmqctl list_users #创建一个用户,账号admin 密码admin rabbitmqctl add_user admin admin #将admin用户赋管理员权限 rabbitmqctl set_user_tags admin administrator rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" #删除用户 rabbitmqctl delete_user username #改密码 rabbimqctl change_password username newpassword #检查本地节点是否正在运行 sudo rabbitmq-diagnostics ping #节点摘除 rabbitmqctl forget_cluster_node rabbit@rabbit3 #重置 rabbitmqctl reset application #打印已启用的组件 sudo rabbitmq-diagnostics status #打印有效的节点配置 sudo rabbitmq-diagnostics环境 #对本地节点执行更广泛的运行状况检查 sudo rabbitmq-diagnostics node_health_check #开启/关闭某个插件,需重启生效 rabbitmq-plugins enable/disable xxx #查看所有队列信息 rabbitmqctl list_queues #关闭应用 rabbitmqctl stop_app #启动应用 rabbitmqctl start_app #清除所有队列 rabbitmqctl reset #访问管理页面,默认为端口15672 http://IP:15672
5. 端口用途
4369 #empd(Erlang Port Mapper Daemon),是 Erlang 的端口/结点名称映射程序,用来跟踪节点名称监听地址,在集群中起到一个类似 DNS 的作用。
5672、5671 #由 AMQP 0-9-1 和 1.0 客户端使用
15672 #HTTP_API 端口,管理员用户才能访问,用于管理 RbbitMQ,需要启用 management 插件, rabbitmq-plugins enable rabbitmq_management ,访问 http://server-name:15672/
25672 #Erlang distribution,和4369配合
61613、61614 #当STOMP插件启用的时候打开,作为STOMP客户端端口(根据是否使用TLS选择)
1883、8883 #当MQTT插件启用的时候打开,作为MQTT客户端端口(根据是否使用TLS选择)
15674 #基于WebSocket的STOMP客户端端口(当插件Web STOMP启用的时候打开)
15675 #基于WebSocket的MQTT客户端端口(当插件Web MQTT启用的时候打开)