ansible playbook 安装rabbitmq单机版,以下脚本在CentOS6.7服务器测试通过。

需要配置本机的yum源,用于安装socat软件。

rabbitmq版本和Erlang版本需要对应,相关文档见:http://www.rabbitmq.com/which-erlang.html

可以根据自己需要选择rabbitmq版本(但要到官网查询支持的Erlang,否则安装后无法启动)

 ---
- name: install rabbitmq app
gather_facts: False
hosts: "{{ host }}"
user: root
tasks:
- name: time sync
command: /usr/sbin/ntpdate 10.86.1.76 - name: install require rpm packages
yum: name=socat state=installed - name: download erlang package
get_url: url={{ erlang_url }} dest=/tmp/erlang.rpm - name: install erlang packages
yum: name=/tmp/erlang.rpm state=present - name: download rabbitmq package
get_url: url={{ rabbitmq_url }} dest=/tmp/rabbitmq-server.rpm - name: rpm install rabbitmq-server
yum: name=/tmp/rabbitmq-server.rpm state=present - name: start rabbitmq-server
service: name=rabbitmq-server enabled=yes state=restarted - name: Enable the plugins is installed
shell: rabbitmq-plugins enable rabbitmq_management && rabbitmq-plugins enable rabbitmq_mqtt && rabbitmq-plugins enable rabbitmq_web_mqtt
notify:
restart rabbitmq-server - name: create the rabbitmq user
shell: rabbitmqctl add_user {{ username }} {{ password }}
ignore_errors: yes - name: add rabbitmq_user to adminstrator
shell: rabbitmqctl set_user_tags {{ username }} administrator - name: configure the rabbitmq_user premission
shell: rabbitmqctl set_permissions -p "/" {{ username }} ".*" ".*" ".*" - name: del rabbitmq install pkg
file: path={{ item }} state=absent
with_items:
- /tmp/erlang.rpm
- /tmp/rabbitmq-server.rpm handlers:
- name: restart rabbitmq-server
service: name=rabbitmq-server state=restarted

使用方法:

ansible-playbook rabbitmq_install.yml --extra-vars "{'host':'192.168.233.233','erlang_url':'https://github.com/rabbitmq/erlang-rpm/releases/download/v19.3.6.4/erlang-19.3.6.4-1.el6.x86_64.rpm','rabbitmq_url':'http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.14/rabbitmq-server-3.6.14-1.el6.noarch.rpm','username':'mquser','password':'123456'}"

相关软件下载地址:

rabbitmq-server下载:http://www.rabbitmq.com/releases/rabbitmq-server/
Erlang版本支持列表:http://www.rabbitmq.com/which-erlang.html
Erlang下载:https://github.com/rabbitmq/erlang-rpm/releases

ansible自动安装rabbitmq的更多相关文章

  1. ansible自动安装jdk

    脚本功能:安装jdk 测试环境:CentOS6.7 说明: 1.卸载系统自带的openjdk,重新安装Oracle jdk,支持Hotspot,性能更好,更稳定. 2.jdk软件包按文档说明进行定制( ...

  2. 企业级自动化部署方案——ansible实现tomcat自动安装和配置

    共耗时10多个小时 思路一 总体设计 ansible-playbook目录结构 [root@ansible ~]# tree /etc/ansible/roles/tomcat /etc/ansibl ...

  3. ansible一键安装GreatSQL并构建MGR集群

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 利用ansible一键安装GreatSQL并完成MGR部署. 本次介绍如何利用ansible一键安装GreatSQL并完成 ...

  4. 【RabbitMQ】CentOS安装RabbitMQ,及简单的Java客户端连接

    在CentOS安装 因Rabbit MQ使用Erlang,所以需要先安装Erlang,安装过程中可能会遇到种种问题,可参考CentOS 6.5安装Erlang/OTP 17.0.然后就可以安装MQ了. ...

  5. 编译安装rabbitmq服务端

    有一种方式是:下载rabbitmq-server-generic-unix压缩包,是不用编译的.是已经编译好的源码了 下面介绍编译源码安装   总括: 需要以下步骤:   1.安装erlange.因为 ...

  6. 在Centos上安装RabbitMQ流程(转)

    在Centos上安装RabbitMQ流程------------------------ 1. 需求 由于项目中要用到消息队列,经过ActiveMQ与RabbitMQ的比较,最终选择了RabbbitM ...

  7. CentOS7安装RabbitMQ集群

    实验环境 RabbitMQ 集群 server1.example.com    IP: 10.10.10.11    Node: diskserver2.example.com    IP: 10.1 ...

  8. rpm不用yum安装rabbitMQ

    1.安装erlang 下载 esl-erlang_19.0~centos~6_amd64.rpm 打开https://www.erlang-solutions.com/resources/downlo ...

  9. yum 安装rabbitMQ

    环境:linux centos6.5 1.安装erlang 下载rpm仓库:wget http://packages.erlang-solutions.com/erlang-solutions-1.0 ...

随机推荐

  1. 自定义报告,用Java写一个html文件

    因为testng不满足我们的展示,所以我们会自己定义一个报告,实施步骤是,把静态页面做好后,放在Java项目中,其实和生成一个日志文件类似,只是该了后缀,Java中需要使用到PrintStream,案 ...

  2. 4. NBU文件备份与恢复,图形界面&字符界面操作

    一. 图形界面文件备份与恢复 1.1  文件备份 待补充 1.2 Windows文件恢复 (1) 打开恢复客户端 (2) 检查设置 (3) 查询可恢复信息 (4) 选取恢复时间点和文件 (5) 选择恢 ...

  3. redis string类型

  4. ADO.NET之一:连接层

    ADO.NET大部分由System.Data.dll核心程序集来表示. ADO.NET类库有三种完全不听的方式来实现数据访问:连接式.断开式和通过Entity框架.连接式就是会一直占用网络资源,断开式 ...

  5. 使用C#的新特性:可空类型

    随着C#语言最新标准的出炉,现在它也提供了对可空类型的支持.这个小变化将会在处理那些包括可选项的数据库记录时非常有用.当然在其他地方,它也是非常有用的. 简单说来,可空数据类型就是包含了所定义的数据类 ...

  6. javascript入门笔记3-dom

    1.通过ID获取元素 document.getElementById("id") <!DOCTYPE HTML> <html> <head> & ...

  7. 总结JavaScript常用数组操作方法,包含ES6方法

    一.concat() concat() 方法用于连接两个或多个数组.该方法不会改变现有的数组,仅会返回被连接数组的一个副本. var arr1 = [1,2,3]; var arr2 = [4,5]; ...

  8. 泉五培训Day2

    T1 旅游 题目 [题目描述] 幻想乡有n个景点(从1开始标号),有m条双向的道路连在景点之间,每条道路有一个人气值d,表示这条道路的拥挤程度.小G不会经过那些人气值大于x的道路,她想知道有多少对景点 ...

  9. 第一次认识lambda匿名函数

    lambda 为了解决一些简单的需求而设计的"一句话"函数 语法 lambda 参数:返回值 1.可以多个参数,参数间用逗号隔开 2.匿名函数不管多复杂,只能写一行 3.返回值和正 ...

  10. PHP ping

    <?php /// start ping.inc.php /// $g_icmp_error = "No Error"; // timeout in ms function ...