10. 安装RabbitMQ
10.1. 说明
想通过yum仓库直接安装rabbitmq-server
,但还是失败,只能还是使用下载的包进行离线安装。erlang
是安装成功,但需要--nogpgcheck
,在ansible里可以配置。
10.2. yml脚本
---
- hosts: rabbitmqservers
remote_user: root
vars_files:
- ../vars.yml
tasks:
- name: Copy rabbitmq_erlang.repo
template:
src: "{{ PLAYBOOK_DIR }}/rabbitmq/templates/rabbitmq_erlang.repo.j2"
dest: /etc/yum.repos.d/rabbitmq_erlang.repo
owner: root
group: root
mode: "u=rw,g=r,o=r"
- name: install erlang
yum:
name: erlang
disable_gpg_check: true
state: present
- name: install socat
yum:
name: socat
state: present
- name: Copy rpm
copy:
src: "{{ PLAYBOOK_DIR }}/files/rabbitmq-server-3.8.14-1.el7.noarch.rpm"
dest: /home
owner: root
group: root
mode: 0755
- name: install rabbitmq-server
yum:
name: "/home/rabbitmq-server-3.8.14-1.el7.noarch.rpm"
state: present
- name: firewarld add 15672
firewalld:
port: 15672/tcp
permanent: true
immediate: true
zone: public
state: enabled
- name: firewarld add 5672
firewalld:
port: 5672/tcp
permanent: true
immediate: true
zone: public
state: enabled
- name: chkconfig
shell: chkconfig rabbitmq-server on
run_once: true
- name: start rabbitMQ
service:
name: rabbitmq-server
state: started
tags:
- start rabbitMQ
10.3. 模板文件
10.3.1 rabbitmq_erlang.repo.j2
安装erlang,选择直接在仓库下载
# In /etc/yum.repos.d/rabbitmq_erlang.repo
[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=1
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
10.4. 运行ansible-playbook
ansible-playbook -i /etc/ansible/hosts rabbitmq/main.yml
10.5. 安装成功开启后台管理插件
rabbitmq-plugins enable rabbitmq_management

浏览器远程访问http://192.168.0.129:15672
, 出现登录界面

10.6. 设置管理员
默认用户名guest
,密码guest
只能访问localhost
,因此需要开启远程访问
rabbitmqctl add_user admin 123456
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
登陆成功后就看到以下页面

10.7. 创建服务连接用户
可以在管理界面直接创建用户给后端服务调用
用户名:anson
密码:123456
角色:policymaker
网友评论