1.redis服务的下载安装:
1.1tcl下载安装
tcl下载地址:wget http://prdownloads.sourceforge.net/tcl/tcl8.6.6-src.tar.gz
tcl安装:
#cd tcl8.6.4/unix
执行这个配置文件
cd unix ./configure
#make && make install (时间会有点长,耐心等待)
#make clean
#make distclean
1.2redis下载:wget http://download.redis.io/releases/redis-3.2.8.tar.gz
解压:#tar -zxvf redis-3.2.8.tar.gz
安装:#cd /usr/local/redis-3.2.8/
#cd src && make test (时间会有点长,耐心等待) 测试make是否成功,最好不要,要等半个多小时
#make install
#make clean
#make
#cp /usr/local/bin/redis-server /usr/local/redis-3.2.8
#cp /usr/local/bin/redis-check-aof /usr/local/redis-3.2.8
#cp /usr/local/bin/redis-cli /usr/local/redis-3.2.8
#cp /usr/local/bin/redis-benchmark /usr/local/redis-3.2.8
1.3redis初始配置:
#cd /usr/local/redis-3.2.8/utils
#./install_server.sh
1.4系统进入提示输入必要的配置信息
最终的配置信息:Selected config:
Port : 6379
Config file : /usr/local/redis-3.2.8/redis.conf
Data dir : /home/redis
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
1.5 redis环境变量设置:
编辑/etc/profile,添加以下环境变量设定
export REDIS_HOME=/usr/local/redis-3.2.8/
export PATH=$PATH:$REDIS_HOME
#source /etc/profile,使环境变量立即生效
1.6redis自启动:将redis做成一个服务
ps: /etc/rc.d/init.d/目录下的脚本就类似与windows中的注册表,在系统启动的时候某些指定脚本将被执行
按以上步骤安装Redis时,其服务脚本位于:
/usr/local/src/redis/utils/redis_init_script
必须将其复制到/etc/rc.d/init.d的目录下:
#cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis
如果这时添加注册服务:
#chkconfig --add redis
必须把下面两行注释放在/etc/init.d/redis文件靠前的注释中:在启动脚本开头添加如下两行注释以修改其运行级别:
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
设置为开机自启动服务器:
#chkconfig redis on
1.7 验证redis是否可以服务自启动
#打开服务
service redis start
service redis status
#关闭服务
service redis stop
service redis restart
redis客户端命令数据查看验证
redis-cli –p 6379
KEYS * 可以查看所有存储在redis中的键。
redis> set foo bar
OK
redis> get foo
"bar"
1.8 redis端口更换
1、配置文件中的监听端口
修改/usr/local/redis/conf/redis.conf port参数,post默认端口为6379
2、自启动的监听端口
修改自启动的服务文件/etc/init.d/redis的REDISPORT=26379,REDISPORT默认值为6379.
3、修改pid的文件名
修改/etc/init.d/redis和/usr/local/redis/conf/redis.conf中的pid文件名
PIDFILE=/var/run/redis_新的端口名称 .pid
4、端口开放
vi /etc/sysconfig/iptables
添加对应端口的防火墙规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8081 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8082 -j ACCEPT
重启iptables
service iptables restart
5、重启redis
service redis restart
2.Redis tomcat7 session共享包的下载部署
2.1 redis 源码下载官网:https://github.com/jcoleman/tomcat-redis-session-manager
下载完成后自行打成jar包,同时需要的架包还有
tomcat-juli.jar
Jedis 2.5.2.jar
commons-pool2-2.2.jar
把这些架包一并放到tomcat 的bin下,同时修改conf下的context.xml文件
2.2 把刚才的tomcat7复制一份改名为tomcat7_2,同时修改tomcat7_2 的server.xml的端口为8082
2.3我是通过nginx服务测试的所以直接访问nginx的地址就OK了如下图:
Nginx在负载均衡切换服务器是session在不同的服务上是同一个。
注:本测试使用的环境是Tomcat7+JDK7