RabbitMQ+Zookeeper+Dubbo+Nginx+Mysql+Redis搭建

一、RabbitMQ

Rabbitmq 是用 erlang 語言寫的,所以我們需要安裝 Erlang,安裝 erlang 又需要安裝 python 與 simplejson,所以我們從python開始:

1、安裝 python:

[php] view plaincopy

#wget http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar.bz2 

#tar -jxvf Python-2.5.2.tar.bz2 

#cd Python-2.5.2 

#./configure 

#make && make install 

測試:在命令行下輸入python,出現(xiàn)python解釋器即表示已經(jīng)正確安裝。 

 

2、安裝 simplejson:

[html] view plaincopy

#wget http://pypi.python.org/packages/source/s/simplejson/simplejson-2.0.9.tar.gz 

#tar zxvf simplejson-2.0.9.tar.gz 

#cd simplejson-2.0.9 

#python setup.py build 

#python setup.py install 

 

3、安裝 erlang 

[html] view plaincopy

先安裝以下依賴包 ,別問為什么按行執(zhí)行安裝不然有你苦吃 

#yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel 

#yum install libX* java* tk unixODBC unixODBC-devel 

#yum -y install ncurses-devel 

#yum install ncurses-devel 

#yum -y install xmlto 

#wget http://www.erlang.org/download/otp_src_R13B04.tar.gz 

#mv otp_src_R16B02 erlang_R16B #重命名解壓厚的文件 

#cd erlang_R16B/ 

#./configure --prefix=/usr/local/erlang --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac 

#make && make install 

 

#vi /etc/profile 

ERL_HOME=/usr/local/erlang 

PATH=$ERL_HOME/bin:$PATH 

export ERL_HOME PATH 

#source /etc/profile 

更新環(huán)境變量 

執(zhí)行erl,進(jìn)入erlang的shell成功安裝 測試一下是否安裝成功,在控制臺輸入命令erl

 

4、安裝 RabbitMQ

[php] view plaincopy

#yum install nc (nc.x86_64) 

 

cd /usr/local 

#wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.1.1/rabbitmq-server-3.1.1.tar.gz 

#cd rabbitmq-server-3.1.1 

#make 

#make install TARGET_DIR=/opt/mq/rabbitmq SBIN_DIR=/opt/mq/rabbitmq/sbin MAN_DIR=/opt/mq/rabbitmq/man 

//最新的包要加入其它目錄,忘記是什么目錄了。make install 看錯誤提示。將rabbitmq編譯到/opt/mq/rabbitmq目錄 

 

5、安裝web插件管理界面

[php] view plaincopy

#cd /opt/mq/rabbitmq/sbin 

#mkdir /etc/rabbitmq/ 

#rabbitmq-plugins enable rabbitmq_management 

[php] view plaincopy

#./rabbitmq-server start & 

[php] view plaincopy

啟動rabbitmq服務(wù): 

前臺運行:rabbitmq-server start (用戶關(guān)閉連接后,自動結(jié)束進(jìn)程) 

[php] view plaincopy

后臺運行:rabbitmq-server -detached 

 

6、好了,到這里rabbitmq已經(jīng)配置好了,可以啟動了:

[html] view plaincopy

我們再來查看看一下rabbitmq的默認(rèn)監(jiān)聽端口5672: 

#netstat -tnlp|grep 5672 

最好我們就可以在瀏覽器上輸入http://ip:15672/登錄管理界面了: 

使用登錄的名戶名和密碼默認(rèn)都算guest,登錄后的頁面如下: 

另一臺機(jī)器訪問rabbitmq(就是本機(jī)之外),需要打開15672端口 

#vi /etc/sysconfig/iptables 把15672端口加進(jìn)去。然后重啟service iptables restart

 

二、Zookeeper

下載安裝包,下載地址http://zookeeper.apache.org/releases.html,我下載的版本是zookeeper-3.4.6.tar.gz.

$ tar xvzf zookeeper-3.4.6.tar.gz

解壓后進(jìn)入conf創(chuàng)建zoo.cfg文件,zoo.cfg內(nèi)容如下:

zookeeper中使用的基本時間單位, 毫秒值.

tickTime=2000

#初始通信時限

initLimit=10

#同步通信時限

syncLimit=5 

#數(shù)據(jù)目錄

dataDir=/home/rongyi/zookeeper/data

#監(jiān)聽client連接的端口號

clientPort=2181

至此,配置完成,直接啟動服務(wù):

bin/zkServer.sh start

 

三、Dubbo

Dubbo的安裝很簡單,直接下載dubbo.war包部署到tomcat目錄下即可,修改下/WEB-INF/dubbo.properties配置文件:

#zookeeper服務(wù)提供地址

dubbo.registry.address=zookeeper://192.168.1.164:2181

啟動腳本:./bin/startup.sh

停止腳本:/bin/shutdown.sh 

 

四、Nginx

安裝nginx之前需要安裝相關(guān)依賴庫。

1:pcre安裝:

pcre下載:下載地址:http://www.pcre.org/ ,下載完成后解壓縮安裝包進(jìn)入解壓文件目錄,執(zhí)行:

./configure 

make

make install

2:openssl 安裝:

Openssl下載地址:http://www.openssl.org/source ,下載完成后解壓縮安裝包進(jìn)入文件目錄,執(zhí)行:

./configure 

make

make install

3: zlib安裝

Zbib下載地址:http://prdownloads.sourceforge.net,下載完成后解壓縮安裝包進(jìn)入文件目錄,執(zhí)行: 

/configure 

make

make install

4:安裝nginx

Nginx 下載地址: http://nginx.org/download/,下載完成后解壓縮安裝包進(jìn)入文件目錄,執(zhí)行:

/configure -with > http_stub_status_module --prefix=/usr/local/nginx 

make

make install

至此安裝完成。

啟動命令:./nginx

重啟命令:./nginx –s reload

 

五、Mysql

安裝server和client,中間會提示輸入root密碼

root@1-164-dev-ubt14-server:~# apt-get install mysql-server mysql-client

修改默認(rèn)的datadir;

1、/etc/init.d/mysql stop

2、mkdir /data/mysqldata/

3、chown mysql:mysql /data/mysqldata/

4、cp -r /var/lib/mysql/* /data/mysqldata/

5、修改my.cnf配置文件:datadir=/data/mysqldata/

6、修改ubuntu中的安全設(shè)置/etc/apparmor.d/usr.sbin.mysqld

/var/lib/mysql/ r, 改成:/data/mysqldata/ r,

/var/lib/mysql/** rwk, 改成:/data/mysqldata/** rwk,

7、reload安全設(shè)置:/etc/init.d/apparmor reload

端口被占用的問題:

1、查看所有的服務(wù)端口:netstat -ap

2、查看某一個端口:netstat -ap | grep 3306 或者:lsof -i:3306 netstat -tl | grep mysql

3、若要停止使用這個端口的程序,使用kill +對應(yīng)的pid即可

 

六、Mongo

1、添加Mongo密鑰到本地: apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

2、添加源到apt-get 

vi /etc/apt/sources.list 最后新增一行:deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen 

2、apt-get update

3、apt-get install mongodb-10gen

4、查看進(jìn)程是否已經(jīng)啟動: pgrep mongo -l 

5、修復(fù):mongod --dbpath=/data/mongodb --logpath=/var/log/mongodb/mongodb.log --repair

6、建用戶:

#添加一個用戶account,pwd

db.addUser("wangming","1234")

#查看當(dāng)前庫中的用戶

db.system.users.find()

#連接時候通過auth命令進(jìn)行連接(account,pwd)

db.auth("wangming","1234")

登錄某個DB:use admin;db.auth('root','123456')

服務(wù)關(guān)閉: mongod --shutdown --dbpath /data/mongodb/

db.shutdownServer()

強(qiáng)制關(guān)閉:

> db.adminCommand({shutdown : 1, force : true})

> //or

> db.shutdownServer({force : true})

服務(wù)開啟:$ ./mongod --fork --logpath /var/log/mongodb/mongodb.log --logappend

mongod --fork --dbpath=/data/mongodb --logpath=/var/log/mongodb/mongodb.log --logappend

開機(jī)自啟動:在/etc/rc.local文件末尾添加下面的代碼

#add mongodb service

rm -rf /data/mongodb_data/* && /usr/local/mongodb/bin/mongod --dbpath=/data/mongdb_data/ --logpath=/data/mongdb_log/mongodb.log --logappend &

 

七、Redis

1、下載Redis的安裝包:wget http://download.redis.io/releases/redis-2.8.9.tar.gz

2、tar xvfz redis-2.8.9.tar.gz

3、cd redis-2.8.9

4、make

5、sudo make install

6、在安裝成功之后,可以運行測試,確認(rèn)Redis的功能是否正常:sudo make test

7、root@slavenode1:/home/grid/redis# cp redis.conf /etc/

root@slavenode1:/home/grid/redis# cd src

root@slavenode1:/home/grid/redis/src# cp redis-benchmark redis-cli redis-server /usr/bin/

root@slavenode1:/home/grid/redis/src#

8、/etc/sysctl.conf 追加記錄:vm.overcommit_memory=1

9、執(zhí)行:sysctl vm.overcommit_memory=1

10、后臺啟動配置:vim /etc/redis.conf 把daemonize no 改成 daemonize yes

11、啟動:redis-server /etc/redis.conf

12、查看進(jìn)程:ps -efww |grep redis

13、使用telnet簡單連接測試:telnet localhost 6379

14、通過命令redis-cli shutdown可以關(guān)閉redis server服務(wù)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容