Linux下Nginx+Tomcat+Redis实现集群(小白向,因为我也是小白)

说明啊,本蝶用的是虚拟机CentOS 7 x64,i7-8700k分配的2核心2线程,4GB DDR4 3600内存。

本文章讲解步骤:1.Redis集群搭建。2.JDK环境搭建。3.Tomcat集群搭建。4.NFS配置共享目录。5.Nginx配置。

首先,准备两个工具:Xshell,WinSCP。

什么?哪里下载?这里下载:www.baidu.com

第一步:Redis集群搭建(从安装到运行)

访问Redis官方:https://redis.io,然后下载Redis最新版。

下载到哪儿?当然是下载到你放满片子的盘里了!

ok,这会儿WinSCP派上用场了。用WinSCP连接你的Linux。

然后将你下载片子的拖到你Linux上/home文件夹下。

嗯对,将你下载Redis的压缩包拖到你Linux上/home文件夹下。

然后使用Xshell连接你的Linux。然后到home目录下。

然后使用tar命令解压你的下载的片子。……。你下载的Redis压缩包。

命令:tar zxvf 压缩包名称,比如我的是:tar zxvf redis-5.0.4.tar.gz。

进入你刚刚解压好的Redis目录。

因为编译需要使用gcc,所以我们需要先安装gcc。gcc是什么?我也不知道,我也小白啊。照做就是了。

命令:yum install gcc。碰到确认提示的时候一律输入y就行了。

安装完后使用make MALLOC=libc命令对Redis进行编译。为什么这样做?因为直接使用make会报错,为什么报错?我也不知道,我也小白啊。

然后等就是了,编译完如下图。

然后安装Redis。使用命令make install PREFIX=/home/redis。

命令:make install PREFIX=安装路径。安装完成如下图。

使用 cd ../回到上层目录,并使用ls命令可以看到安装好的redis文件夹。也可以使用WinSCP看。

现在使用WinSCP到redis解压目录,把redis.conf复制到redis安装目录下的bin里。然后到bin目录下右键--编辑。搜索下方几个配置项并修改。

1.bind 127.0.0.1 改 bind 服务器IP,如我的:bind 192.168.31.106

2.port 6379 改 port 6000,说明:搭建集群从6000开始好数,没有别的原因。

3.# cluster-enabled yes,把前面的#去掉。该配置项的意思是 是否启用集群模式。

4.# cluster-config-file nodes-6379.conf 把前面的#去掉并改为:cluster-config-file nodes.conf, nodes-6379.conf是生成集群配置的文件名,改文件名纯属为了方便统一,没有别的原因。

5.# cluster-node-timeout 15000,把前面的#去掉,该配置项的意思是超时时间,单位毫秒。

6.daemonize no 改 daemonize yes,意思是后台运行。

然后保存。

PS:这些是开启集群的基本配置,更深入的优化配置等自行百度学习把,因为我也是个小白。

然后将redis安装目录复制5份,这样就一共有6个redis了。为什么?自己百度查吧,我也是小白,我只知道这样有3个主redis,3个从redis。如果有一个出问题了,redis集群之间能更精确的判断哪个出了问题。总之是为了保证集群能够稳定运行。

复制命令:cp -a 源目录/ 新目录。

然后使用WinSCP分别进入各个redis目录下的bin,修改redis.conf,分别把port端口数+1。

比如我现在的端口分别是:6000,6001,6002,6003,6004,6005。

然后启动这六个redis,这里写一个批量运行。

在你的电脑桌面新建文本文档,改名run-redises.sh。然后编辑内容,复制以下内容。

cd redis/bin;

./redis-server redis.conf;

cd ../../;

cd redis1/bin;

./redis-server redis.conf;

cd ../../;

cd redis2/bin;

./redis-server redis.conf;

cd ../../;

cd redis3/bin;

./redis-server redis.conf;

cd ../../;

cd redis4/bin;

./redis-server redis.conf;

cd ../../;

cd redis5/bin;

./redis-server redis.conf;

cd ../../;

什么?复制粘贴后没有换行?没有换行那就对了。

然后用WinSCP拖到Linux的home目录下。然后用Xshell给run-redises.sh分配权限。

命令:chmod 777 run-redises.sh。

然后运行run-redises.sh。命令:./run-redises.sh

有没有批量停止的命令?参考上面自己写。我才不管你们那么多呢。

————下面的绝对不是批量停止命令——————————————————————

cd redis/bin;

./redis-cli -c -h 192.168.31.106 -p 6000 shutdown;

cd ../../;

cd redis1/bin;

./redis-cli -c -h 192.168.31.106 -p 6001 shutdown;

cd ../../;

cd redis2/bin;

./redis-cli -c -h 192.168.31.106 -p 6002 shutdown;

cd ../../;

cd redis3/bin;

./redis-cli -c -h 192.168.31.106 -p 6003 shutdown;

cd ../../;

cd redis4/bin;

./redis-cli -c -h 192.168.31.106 -p 6004 shutdown;

cd ../../;

cd redis5/bin;

./redis-cli -c -h 192.168.31.106 -p 6005 shutdown;

cd ../../;

————————————————————————————————————

6个redis都启动起来后,随便进入一个redis的bin目录下,运行以下命令开启集群,具体IP和端口按照你们自己的来写。

./redis-cli --cluster create 192.168.31.106:6000 192.168.31.106:6001 192.168.31.106:6002 192.168.31.106:6003 192.168.31.106:6004 192.168.31.106:6005 --cluster-replicas 1

说明:--cluster-replicas 1 的意思是每个主redis都有1个从reids。

出现提示后输入yes。然后等待成功。

如何测试?进入redis下的bin里,使用命令./redis-cli -c -h 192.168.31.106 -p 6001。

命令说明:./redis-cli -c(集群模式) -h IP -p 端口

然后使用命令  set name dieyi

然后Ctrl+C退出,再使用命令连接另一个redis。命令:./redis-cli -c -h 192.168.31.106 -p 6003。

然后使用命令:get name。

如果发现能正常取出值,那说明成功了。

 

第二步:JDK环境搭建

首先去oracle官方下载jdk,怎么下载?去这里下载:www.baidu.com

下载完后用WinSCP拖到Linux服务器上home目录下。

然后使用tar命令解压jdk的压缩包。命令:tar zxvf 压缩包名称

然后用WinSCP编辑 /etc/profile。写入以下内容,JAVA_HOME的值按照自己jdk解压的位置来写。

#java config
export JAVA_HOME=/home/jdk1.8.0_211
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin


然后执行 source /etc/profile 使环境变量生效!
然后输入命令:java -version 测试

这样 JDK就安装完了。

3.Tomcat集群搭建(从安装到运行再到配置Redis)

首先下载Tomcat:https://tomcat.apache.org/download-80.cgi

然后用WinSCP拖到你的Linux服务器/home目录下(为什么这步没图?这样的简单步骤咱们已经重复两次了)

然后使用tar命令解压Tomcat的压缩包,这步也没图,原因同上。

然后进入Tomcat目录下的/bin里,然后输入命令 ./startup.sh 就可以启动tomcat。

然后关闭CentOS 7自带的firewall防火墙,并禁止开机启动。

关闭防火墙命令:systemctl stop firewalld.service

禁止开机启动命令:systemctl disable firewalld.service

为啥关?别问我往下看

这会儿在浏览器里输入你的服务器IP加端口8080,比如我的是:192.168.31.106:8080,看到以下界面表示访问成功。

emmmm……水不动了,以后再说吧!

“Linux下Nginx+Tomcat+Redis实现集群(小白向,因为我也是小白)”的一个回复

评论已关闭。