64位CentOS6.2安装erlang及rabbitmqServer

CentOS 6.2 64bit 安装erlang及RabbitMQ Server

1、操作系统环境(CentOS 6.2 64bit)

view sourceprint?

01.[root@leekwen ~]# cat /etc/issue

02.CentOS release 6.2 (Final)

03.Kernel \r on an \m

04.[root@leekwen ~]# cat /proc/cpuinfo |grep "clflush size"

05.clflush size    : 64

06.clflush size    : 64

07.clflush size    : 64

08.clflush size    : 64

09.clflush size    : 64

10.clflush size    : 64

11.clflush size    : 64

12.clflush size    : 64

2、安装erlang依赖的基本环境

view sourceprint?

1.[root@leekwen ~]# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel


3、导入erlang源,并安装erlang

view sourceprint?

01.[root@leekwen ~]# rpm --import http://binaries.erlang-solutions.com/debian/erlang_solutions.asc

02.[root@leekwen ~]# wget -O /etc/yum.repos.d/erlang_solutions.repo  http://binaries.erlang-solutions.com/rpm/centos/erlang_solutions.repo

03.--2014-04-09 22:29:49--  http://binaries.erlang-solutions.com/rpm/centos/erlang_solutions.repo

04.Resolving binaries.erlang-solutions.com... 46.235.224.136

05.Connecting to binaries.erlang-solutions.com|46.235.224.136|:80... connected.

06.HTTP request sent, awaiting response... 301 Moved Permanently

07.Location: http://packages.erlang-solutions.com//rpm/centos/erlang_solutions.repo [following]

08.--2014-04-09 22:29:56--  http://packages.erlang-solutions.com//rpm/centos/erlang_solutions.repo

09.Resolving packages.erlang-solutions.com... 31.172.186.53

10.Connecting to packages.erlang-solutions.com|31.172.186.53|:80... connected.

11.HTTP request sent, awaiting response... 200 OK

12.Length: 245

13.Saving to: /etc/yum.repos.d/erlang_solutions.repo

14. 

15.100%[=================================================================================>] 245         --.-K/s   in 0s

16. 

17.2014-04-09 22:30:09 (34.0 MB/s) - /etc/yum.repos.d/erlang_solutions.repo

18.[root@leekwen ~]# wget http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

19.Resolving tree.repoforge.org... 78.46.17.228

20.Connecting to tree.repoforge.org|78.46.17.228|:80... connected.

21.HTTP request sent, awaiting response... 301 Moved Permanently

22.Location: http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm [following]

23.--2014-04-09 22:30:54--  http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

24.Resolving apt.sw.be... 193.1.193.67

25.Connecting to apt.sw.be|193.1.193.67|:80... connected.

26.HTTP request sent, awaiting response... 200 OK

27.Length: 12700 (12K) [application/x-redhat-package-manager]

28.Saving to: rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

29. 

30.100%[=================================================================================>] 12,700      4.80K/s   in 2.6s

31. 

32.2014-04-09 22:31:07 (4.80 KB/s) - rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

33. 

34.[root@leekwen ~]# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

35.[root@leekwen ~]# rpm -i rpmforge-release-0.5.2-2.el6.rf.*.rpm

36.[root@leekwen ~]# yum update

37.[root@leekwen ~]# yum update --skip-broken

38.[root@leekwen ~]# yum install erlang

4、测试erlang环境

view sourceprint?

01.[root@leekwen ~]# erl

02.Erlang R16B03 (erts-5.10.4) [source] [64-bit] [smp:8:8] [async-threads:10] [kernel-poll:false]

03. 

04.Eshell V5.10.4  (abort with ^G)

05.1> A=12.

06.12

07.2> A.

08.12

09.3>

10.BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded

11.(v)ersion (k)ill (D)b-tables (d)istribution

12.^C[root@leekwen ~]#


5、下载并安装rabbitmq-server

view sourceprint?

01.[root@leekwen ~]# wget -c http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.0/rabbitmq-server-3.3.0-1.noarch.rpm

02.--2014-04-10 16:44:24-- 

03.http://www.rabbitmq.com/releases/rabbitmq-server/v3.3.0/rabbitmq-server-3.3.0-1.noarch.rpm

04.Resolving www.rabbitmq.com... 192.240.153.117

05.Connecting to www.rabbitmq.com|192.240.153.117|:80... connected.

06.HTTP request sent, awaiting response... 200 OK

07.Length: 3869384 (3.7M) [application/x-redhat-package-manager]

08.Saving to: “rabbitmq-server-3.3.0-1.noarch.rpm”

09. 

10.100%[======================================>] 3,869,384   11.9K/s   in 5m 37s

11. 

12.2014-04-10 16:50:10 (11.2 KB/s) - “rabbitmq-server-3.3.0-1.noarch.rpm” saved [3869384/3869384]

13. 

14.[root@leekwen ~]#  yum install rabbitmq-server-3.3.0-1.noarch.rpm

15.Loaded plugins: fastestmirror, security

16.Loading mirror speeds from cached hostfile

17.* base: centos.ustc.edu.cn

18.* extras: centos.ustc.edu.cn

19.* rpmforge: ftp.riken.jp

20.* updates: centos.ustc.edu.cn

21.Setting up Install Process

22.Examining rabbitmq-server-3.3.0-1.noarch.rpm: rabbitmq-server-3.3.0-1.noarch

23.Marking rabbitmq-server-3.3.0-1.noarch.rpm to be installed

24.Resolving Dependencies

25.--> Running transaction check

26.---> Package rabbitmq-server.noarch 0:3.3.0-1 will be installed

27.--> Finished Dependency Resolution

28. 

29.Dependencies Resolved

30. 

31.================================================================================

32.Package           Arch     Version     Repository                         Size

33.================================================================================

34.Installing:

35.rabbitmq-server   noarch   3.3.0-1     /rabbitmq-server-3.3.0-1.noarch   4.3 M

36. 

37.Transaction Summary

38.================================================================================

39.Install       1 Package(s)

40. 

41.Total size: 4.3 M

42.Installed size: 4.3 M

43.Is this ok [y/N]: y

44.Downloading Packages:

45.Running rpm_check_debug

46.Running Transaction Test

47.Transaction Test Succeeded

48.Running Transaction

49.Installing : rabbitmq-server-3.3.0-1.noarch                               1/1

50. 

51.Installed:

52.rabbitmq-server.noarch 0:3.3.0-1

53. 

54.Complete!

6、启动rabbitmq-server

view sourceprint?

01.[root@leekwen ~]# /etc/init.d/rabbitmq-server start

02.Starting rabbitmq-server:

03.FAILED - check /var/log/rabbitmq/startup_{log, _err}

04.rabbitmq-server.

05.[root@leekwen ~]# cat /var/log/rabbitmq/startup_err

06.[root@leekwen ~]# cat /var/log/rabbitmq/startup_log

07.ERROR: epmd error for host leekwen: address (cannot connect to host/port)

08.[root@leekwen ~]# hostname

09.leekwen

10.[root@leekwen ~]# vi /etc/sysconfig/network

11.NETWORKING=yes

12.HOSTNAME=leekwen

13.[root@leekwen ~]# cat /etc/hosts

14.127.0.0.1       localhost

15.127.0.0.1       leekwen

16.::1             localhost


7、以上操作排除了因为主机名不同导致RabbitMQ-Server启动报错的问题,请修改主机名(参见上述步骤),再次启动RabbitMQ-Server

view sourceprint?

1.[root@leekwen ~]# /etc/init.d/rabbitmq-server restart

2.Restarting rabbitmq-server: RabbitMQ is not running

3.FAILED - check /var/log/rabbitmq/startup_{log, _err}

4.rabbitmq-server.

8、结果同样报错,查看错误的日志:

view sourceprint?

01.[root@leekwen ~]# cat /var/log/rabbitmq/startup_log

02.RabbitMQ 3.3.0. Copyright (C) 2007-2013 GoPivotal, Inc.

03.##  ##      Licensed under the MPL.  See http://www.rabbitmq.com/

04.##  ##

05.##########  Logs: /var/log/rabbitmq/rabbit@leekwen.log

06.######  ##        /var/log/rabbitmq/rabbit@leekwen-sasl.log

07.##########

08.Starting broker...

09. 

10.BOOT FAILED

11.===========

12. 

13.Error description:

14.{case_clause,

15.{error,

16.{{shutdown,

17.{failed_to_start_child,tcp_listener,

18.{cannot_listen,{0,0,0,0,0,0,0,0},5672,eaddrinuse}}},

19.{child,undefined,'rabbit_tcp_listener_sup_:::5672',

20.{tcp_listener_sup,start_link,

21.[{0,0,0,0,0,0,0,0},

22.5672,

23.[inet6,binary,

24.{packet,raw},

25.{reuseaddr,true},

26.{backlog,128},

27.{nodelay,true},

28.{linger,{true,0}},

29.{exit_on_close,false}],

30.{rabbit_networking,tcp_listener_started,[amqp]},

31.{rabbit_networking,tcp_listener_stopped,[amqp]},

32.{rabbit_networking,start_client,[]},

33."TCP Listener"]},

34.transient,infinity,supervisor,

35.[tcp_listener_sup]}}}}

36. 

37.Log files (may contain more information):

38./var/log/rabbitmq/rabbit@leekwen.log

39./var/log/rabbitmq/rabbit@leekwen-sasl.log

40. 

41.Stack trace:

42.[{rabbit_networking,start_listener0,4,[]},

43.{rabbit_networking,'-start_listener/4-lc$^0/1-0-',4,[]},

44.{rabbit_networking,start_listener,4,[]},

45.{rabbit_networking,'-boot_tcp/0-lc$^0/1-0-',1,[]},

46.{rabbit_networking,boot_tcp,0,[]},

47.{rabbit_networking,boot,0,[]},

48.{rabbit,'-run_boot_step/1-lc$^1/1-1-',1,[]},

49.{rabbit,run_boot_step,1,[]}]

50. 

51. 

52. 

53.BOOT FAILED

54.===========

55. 

56.Error description:

57.{could_not_start,rabbit,

58.{bad_return,

59.{{rabbit,start,[normal,[]]},

60.{'EXIT',

61.{rabbit,failure_during_boot,

62.{case_clause,

63.{error,

64.{{shutdown,

65.{failed_to_start_child,tcp_listener,

66.{cannot_listen,{0,0,0,0,0,0,0,0},5672,eaddrinuse}}},

67.{child,undefined,'rabbit_tcp_listener_sup_:::5672',

68.{tcp_listener_sup,start_link,

69.[{0,0,0,0,0,0,0,0},

70.5672,

71.[inet6,binary,

72.{packet,raw},

73.{reuseaddr,true},

74.{backlog,128},

75.{nodelay,true},

76.{linger,{true,0}},

77.{exit_on_close,false}],

78.{rabbit_networking,tcp_listener_started,[amqp]},

79.{rabbit_networking,tcp_listener_stopped,[amqp]},

80.{rabbit_networking,start_client,[]},

81."TCP Listener"]},

82.transient,infinity,supervisor,

83.[tcp_listener_sup]}}}}}}}}}

84. 

85.Log files (may contain more information):

86./var/log/rabbitmq/rabbit@leekwen.log

87./var/log/rabbitmq/rabbit@leekwen-sasl.log

88. 

89.{"init terminating in do_boot",{rabbit,failure_during_boot,{could_not_start,rabb                                                                                        use,{error,{{shutdown,{failed_to_start_child,tcp_listener,{cannot_listen,{0,0,0,                                                                                        stener_sup,start_link,[{0,0,0,0,0,0,0,0},5672,[inet6,binary,{packet,raw},{reusea                                                                                        networking,tcp_listener_started,[amqp]},{rabbit_networking,tcp_listener_stopped,                                                                                        or,[tcp_listener_sup]}}}}}}}}}}}

90.tail: /var/log/rabbitmq/startup_log: file truncated        [FAILED]

91. 

92. 

93.[root@leekwen ~]# cat /var/log/rabbitmq/startup_err

94. 

95.Crash dump was written to: erl_crash.dump

96.init terminating in do_boot ()


9、出现如上的错误,可能是因为5672端口已经被占用的原因。
查看5672端口的情况,如果有进程占用此端口,请将它关闭后,重新启动RabbitMQ-Server;

view sourceprint?

01.[root@leekwen ~]# netstat -atn |grep 5672

02.tcp        0      0 0.0.0.0:5672                0.0.0.0:*                   LISTEN

03.[root@leekwen ~]# lsof -i:5672

04.COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

05.qpidd   1901 qpidd   10u  IPv4  13941      0t0  TCP *:amqp (LISTEN)

06.[root@leekwen ~]# chkconfig qpidd off

07.[root@leekwen ~]# netstat -atn |grep 5672

08.tcp        0      0 0.0.0.0:5672                0.0.0.0:*                   LISTEN

09.[root@leekwen ~]# chkconfig qpidd --list

10.qpidd           0:off   1:off   2:off   3:off   4:off   5:off   6:off

11.[root@leekwen ~]# /etc/init.d/qpidd stop

12.Stopping Qpid AMQP daemon:                                 [  OK  ]

13.[root@leekwen ~]# netstat -atn |grep 5672

14.tcp        0      0 127.0.0.1:25672             127.0.0.1:60925             TIME_WAIT

15.[root@leekwen ~]# lsof -i:5672

16.[root@leekwen ~]# /etc/init.d/rabbitmq-server start

17.Starting rabbitmq-server: SUCCESS

18.rabbitmq-server.


10、查看RabbitMQ服务启动的状态,并开启RabbitMQ的相应管理插件:

view sourceprint?

001.[root@leekwen ~]# rabbitmqctl status

002.Status of node rabbit@leekwen ...

003.[{pid,716},

004.{running_applications,[{rabbit,"RabbitMQ","3.3.0"},

005.{os_mon,"CPO  CXC 138 46","2.2.14"},

006.{mnesia,"MNESIA  CXC 138 12","4.11"},

007.{xmerl,"XML parser","1.3.5"},

008.{sasl,"SASL  CXC 138 11","2.3.4"},

009.{stdlib,"ERTS  CXC 138 10","1.19.4"},

010.{kernel,"ERTS  CXC 138 10","2.16.4"}]},

011.{os,{unix,linux}},

012.{erlang_version,"Erlang R16B03 (erts-5.10.4) [source] [64-bit] [smp:8:8] [async-threads:30] [kernel-poll:true]\n"},

013.{memory,[{total,36436456},

014.{connection_procs,2704},

015.{queue_procs,5408},

016.{plugins,0},

017.{other_proc,13704576},

018.{mnesia,60240},

019.{mgmt_db,0},

020.{msg_index,24368},

021.{other_ets,789624},

022.{binary,13672},

023.{code,16399491},

024.{atom,594537},

025.{other_system,4841836}]},

026.{alarms,[]},

027.{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},

028.{vm_memory_high_watermark,0.4},

029.{vm_memory_limit,6690450636},

030.{disk_free_limit,50000000},

031.{disk_free,47402364928},

032.{file_descriptors,[{total_limit,924},

033.{total_used,3},

034.{sockets_limit,829},

035.{sockets_used,1}]},

036.{processes,[{limit,1048576},{used,131}]},

037.{run_queue,0},

038.{uptime,83}]

039....done.

040. 

041.[root@leekwen ~]# netstat -atn |grep 5672

042.tcp        0      0 0.0.0.0:25672               0.0.0.0:*                   LISTEN

043.tcp        0      0 :::5672                     :::*                        LISTEN

044.[root@leekwen ~]# lsof -i:5672

045.COMMAND  PID     USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME

046.beam.smp 716 rabbitmq   15u  IPv6 1948888      0t0  TCP *:amqp (LISTEN)

047.[root@leekwen ~]# rabbitmq-plugins list

048.[ ] amqp_client                       3.3.0

049.[ ] cowboy                            0.5.0-rmq3.3.0-git4b93c2d

050.[ ] eldap                             3.3.0-gite309de4

051.[ ] mochiweb                          2.7.0-rmq3.3.0-git680dba8

052.[ ] rabbitmq_amqp1_0                  3.3.0

053.[ ] rabbitmq_auth_backend_ldap        3.3.0

054.[ ] rabbitmq_auth_mechanism_ssl       3.3.0

055.[ ] rabbitmq_consistent_hash_exchange 3.3.0

056.[ ] rabbitmq_federation               3.3.0

057.[ ] rabbitmq_federation_management    3.3.0

058.[ ] rabbitmq_management               3.3.0

059.[ ] rabbitmq_management_agent         3.3.0

060.[ ] rabbitmq_management_visualiser    3.3.0

061.[ ] rabbitmq_mqtt                     3.3.0

062.[ ] rabbitmq_shovel                   3.3.0

063.[ ] rabbitmq_shovel_management        3.3.0

064.[ ] rabbitmq_stomp                    3.3.0

065.[ ] rabbitmq_tracing                  3.3.0

066.[ ] rabbitmq_web_dispatch             3.3.0

067.[ ] rabbitmq_web_stomp                3.3.0

068.[ ] rabbitmq_web_stomp_examples       3.3.0

069.[ ] sockjs                            0.3.4-rmq3.3.0-git3132eb9

070.[ ] webmachine                        1.10.3-rmq3.3.0-gite9359c7

071.[root@leekwen ~]# rabbitmq-plugins enable rabbitmq_management

072.The following plugins have been enabled:

073.mochiweb

074.webmachine

075.rabbitmq_web_dispatch

076.amqp_client

077.rabbitmq_management_agent

078.rabbitmq_management

079.Plugin configuration has changed. Restart RabbitMQ for changes to take effect.

080.[root@leekwen ~]# rabbitmq-plugins enable mochiweb webmachine rabbitmq_web_dispatch amqp_client rabbitmq_m                                                             anagement_agent rabbitmq_management

081.Plugin configuration unchanged.

082.[root@leekwen ~]# rabbitmq-plugins list

083.[E] amqp_client                       3.3.0

084.[ ] cowboy                            0.5.0-rmq3.3.0-git4b93c2d

085.[ ] eldap                             3.3.0-gite309de4

086.[E] mochiweb                          2.7.0-rmq3.3.0-git680dba8

087.[ ] rabbitmq_amqp1_0                  3.3.0

088.[ ] rabbitmq_auth_backend_ldap        3.3.0

089.[ ] rabbitmq_auth_mechanism_ssl       3.3.0

090.[ ] rabbitmq_consistent_hash_exchange 3.3.0

091.[ ] rabbitmq_federation               3.3.0

092.[ ] rabbitmq_federation_management    3.3.0

093.[E] rabbitmq_management               3.3.0

094.[E] rabbitmq_management_agent         3.3.0

095.[ ] rabbitmq_management_visualiser    3.3.0

096.[ ] rabbitmq_mqtt                     3.3.0

097.[ ] rabbitmq_shovel                   3.3.0

098.[ ] rabbitmq_shovel_management        3.3.0

099.[ ] rabbitmq_stomp                    3.3.0

100.[ ] rabbitmq_tracing                  3.3.0

101.[E] rabbitmq_web_dispatch             3.3.0

102.[ ] rabbitmq_web_stomp                3.3.0

103.[ ] rabbitmq_web_stomp_examples       3.3.0

104.[ ] sockjs                            0.3.4-rmq3.3.0-git3132eb9

105.[E] webmachine                        1.10.3-rmq3.3.0-gite9359c7

106.[root@leekwen ~]# rabbitmq-plugins list

107.[E] amqp_client                       3.3.0

108.[ ] cowboy                            0.5.0-rmq3.3.0-git4b93c2d

109.[ ] eldap                             3.3.0-gite309de4

110.[E] mochiweb                          2.7.0-rmq3.3.0-git680dba8

111.[ ] rabbitmq_amqp1_0                  3.3.0

112.[ ] rabbitmq_auth_backend_ldap        3.3.0

113.[ ] rabbitmq_auth_mechanism_ssl       3.3.0

114.[ ] rabbitmq_consistent_hash_exchange 3.3.0

115.[ ] rabbitmq_federation               3.3.0

116.[ ] rabbitmq_federation_management    3.3.0

117.[E] rabbitmq_management               3.3.0

118.[E] rabbitmq_management_agent         3.3.0

119.[ ] rabbitmq_management_visualiser    3.3.0

120.[ ] rabbitmq_mqtt                     3.3.0

121.[ ] rabbitmq_shovel                   3.3.0

122.[ ] rabbitmq_shovel_management        3.3.0

123.[ ] rabbitmq_stomp                    3.3.0

124.[ ] rabbitmq_tracing                  3.3.0

125.[E] rabbitmq_web_dispatch             3.3.0

126.[ ] rabbitmq_web_stomp                3.3.0

127.[ ] rabbitmq_web_stomp_examples       3.3.0

128.[ ] sockjs                            0.3.4-rmq3.3.0-git3132eb9

129.[E] webmachine                        1.10.3-rmq3.3.0-gite9359c7

130.[root@leekwen ~]# netstat -atn |grep 5672

131.tcp        0      0 0.0.0.0:25672               0.0.0.0:*                   LISTEN

132.tcp        0      0 :::5672                     :::*                        LISTEN

133.[root@leekwen ~]# netstat -atn |grep 15672

134.[root@leekwen ~]# netstat -atn |grep 55672

135.[root@leekwen ~]# /etc/init.d/rabbitmq-server restart

136.Restarting rabbitmq-server: SUCCESS

137.rabbitmq-server.

138.[root@leekwen ~]# netstat -atn |grep 55672

139.[root@leekwen ~]# netstat -atn |grep 5672

140.tcp        0      0 0.0.0.0:15672               0.0.0.0:*                   LISTEN

141.tcp        0      0 0.0.0.0:25672               0.0.0.0:*                   LISTEN

142.tcp        0      0 127.0.0.1:54463             127.0.0.1:25672             TIME_WAIT

143.tcp        0      0 127.0.0.1:60321             127.0.0.1:25672             TIME_WAIT

144.tcp        0      0 127.0.0.1:25672             127.0.0.1:56750             TIME_WAIT

145.tcp        0      0 :::5672                     :::*                        LISTEN

146. 

147.就可以用guest,guest登陆http://192.168.1.101:15672端口了。

注意:如果此时你从端口15672或55672登陆不了,请关闭CentOS6.2的防火墙,再次登陆,

如果仍然出现无法登陆的想象,查看日志后,显示:

view sourceprint?

1.=ERROR REPORT==== 20-Apr-2014::00:55:15 ===

2.webmachine error: path="api/whoami"

3."Unauthorized"

那么请运行如下的命令,增加用户admin,密码admin即可。

view sourceprint?

01.[root@leekwen ~]# rabbitmqctl add_user admin admin

02.Creating user "admin" ...

03....done.

04.[root@leekwen ~]# rabbitmqctl list_users

05.Listing users ...

06.admin   []

07.guest   [administrator]

08....done.

09.[root@leekwen ~]# rabbitmqctl set_user_tags admin administrator

10.Setting tags for user "admin" to [administrator] ...

11....done.

12.[root@leekwen ~]# rabbitmqctl list_users

13.Listing users ...

14.admin   [administrator]

15.guest   [administrator]

16....done.

到此,配置完成。

猜你喜欢

转载自blog.csdn.net/u013111003/article/details/81096722
今日推荐