web架构之nginx反代负载均衡动静分离+LAP负载均衡+mysql主从+Redis主从(四)

在前文:web架构之nginx反代负载均衡动静分离+LAP负载均衡+mysql主从(三)的基础加入Redis缓存和Redis主从集群。

本文主要内容为redis主从安装部署;
在这里插入图片描述

1. 132安装部署Redis。

yum 安装gcc gcc-c++

yum install -y gcc gcc-c++

下载Redis源码安装包&解压&进目录安装

wget http://download.redis.io/releases/redis-4.0.8.tar.gz
tar -zvxf redis-4.0.8.tar.gz
[root@localhost ~]# cd redis-4.0.8/
[root@localhost redis-4.0.8]# make PREFIX=/usr/local/redis/ install

确认安装是否OK!
在这里插入图片描述
拷贝Redis配置文件到安装目录

[root@localhost redis-4.0.8]# cp redis.conf /usr/local/redis/

redis服务加入环境变量

[root@localhost redis-4.0.8]# echo "export PATH=/usr/local/redis/bin:$PATH" >> /etc/profile
##此处需要注意必须使用 ">>"追加内容,不能写成">"!!!!!
[root@localhost redis-4.0.8]# source /etc/profile

以后台方式启动Redis服务,并查看进程。

[root@localhost ~]# nohup /usr/local/redis/bin/redis-server /usr/local/redis/redis.conf &
root@localhost ~]# netstat -ntpl | grep redis-server
[root@localhost ~]# ps -ef|grep redis-server
停止Redis服务:通过shutdown Redis端口停止;
[root@localhost ~]# /usr/local/redis/bin/redis-cli -p 6379 shutdown

在这里插入图片描述

2、安装PHP-Redis连接phpredis扩展。

 [root@localhost ~]# wget https://github.com/phpredis/phpredis/archive/3.1.2.tar.gz 
 [root@localhost ~]# tar -zxaf 3.1.2.tar.gz 
 [root@localhost ~]# cd phpredis-3.1.2/
 [root@localhost ~]# ./configure --with-php-config=/usr/bin/php-config --enable-redis  && make && make install
  #--with-php-config='php-config目录'

这里提示:-bash: ./configure: 没有那个文件或目录。原因是本环境PHP是yum安装,缺少相应的模块功能。需要找到环境中phpize,通过phpize可以建立php的外挂模块,继续安装。

[root@localhost phpredis-3.1.2]# find / -name phpize
 /usr/bin/phpize 
[root@localhost phpredis-3.1.2]# /usr/bin/phpize 
[root@localhost ~]# ./configure --with-php-config=/usr/bin/php-config --enable-redis  && make && make install
 #--with-php-config='php-config目录'

在这里插入图片描述

安装的时候需要注意extensions:后面的路径,配置php.ini文件是用到。
在这里插入图片描述
配置php.ini,添加PHP连接redis外挂模块 ,编写PHP验证页面test.php

[root@localhost redis]# vim /etc/php.ini
在 [PHP] 下面添加
extension_dir = /usr/lib64/php/modules
extension = redis.so
[root@localhost redis]# systemctl reload httpd
[root@localhost discuz]# touch test.php
[root@localhost discuz]# cat >test.php<<eof
> <?php
> phpinfo();
> ?>
> eof

在这里插入图片描述
浏览器访问test.php页面如上图所示则Redis安装成功。

3、在131机器上安装Redis服务,步骤与132一致。

4、redis配置主从集群

redis 主库192.168.29.132配置

    vim /usr/local/reids/redis.conf
    改
    bind 127.0.0.1
    为
    bind 0.0.0.0
    #允许所有ip地址访问redis

redis 从库192.168.29.131配置

    vim /usr/local/reids/redis.conf
    改
    bind 127.0.0.1
    为
    bind 0.0.0.0
   #允许所有ip地址访问redis
    添加
    slaveof 192.168.29.132 6379
   定义这台redis是从库,主库地址为:192.168.29.132 端口:6379(端口可不加)

5、配置web配置Redis缓存。

两个web服务器分别修改网站www.dz.com全局配置文件
config_global.php,添加redis服务器地址。

vim /var/www/html/discuz/config/config_global.php
$_config['memory']['redis']['server'] = '192.168.29.132';

在这里插入图片描述
重启Apache和redis
在这里插入图片描述
查看redis主从配置是否成功
redis主从库执行命令

redis-cli
127.0.0.1:6379>info 

有以下信息则OK!
在这里插入图片描述
在这里插入图片描述

6、通过web:www.dz.com 验证redis缓存配置是否OK!

redis主从执行命令
redis-cli
keys *

显示以下信息并且数据表前缀与/var/www/html/discuz/config/config_global.php中的配置相符,则配置OK!
在这里插入图片描述
在这里插入图片描述
登陆网站www.dz.com注册用户:user01

在这里插入图片描述
redis查看数据是否有更新
在这里插入图片描述
进mysql-master删除user01用户数据,我这里使用Navicat连接到数据库进行操作,也可以直接进mysql命令操作。
在这里插入图片描述
通过命令方式删除user01数据:

[root@mysql ~]# mysql -uroot -p
MariaDB [(none)]> use discuz;
MariaDB [discuz]> delete from pre_common_member where username='user01';
MariaDB [discuz]>flush privileges;
MariaDB [discuz]>exit;

浏览器使用user01可以正常登陆,此时mysql数据库里面已经没有user01这个用户信息了,但是还是可以登陆,因为user01存在在redis的数据还在。
在这里插入图片描述
在这里插入图片描述

后面将加入mysql mha高可用和mysql读写分离,尽量完善LANMP+mysql+redis Web服务架构。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值