Keepalived高可用+Nginx负载均衡+LAMP环境+MysqL主从+Memcache架构搭建部署

环境准备

服务器系统Centos6.8
内存1G
CPU2核
IP地址10.0.0.20
服务1Nginx
服务2Keepalived
服务器系统Centos6.8
内存1G
CPU2核
IP地址10.0.0.21
服务1Nginx
服务2Keepalived
服务器系统Centos6.8
内存1G
CPU2核
IP地址10.0.0.22
服务1LAMP环境
服务2memcache
服务器系统Centos6.8
内存1G
CPU2核
IP地址10.0.0.23
服务1LAMP环境
服务2memcache

首先获取Nginx源码包,我这里有,如果没有可以去Nginx官网获取

http://nginx.org/en/download.html

在这里插入图片描述
在这里插入图片描述

# 在20、21两台主机上安装keepalived服务
yum -y install keepalived
# 在20、21两台主机上安装nginx依赖
yum -y install pcre-devel zlib-devel gcc gcc-c++
# 在22、23主机上安装LAMP环境
yum -y install httpd php php-mysql php-fpm php-gd mysql mysql-server

在这里插入图片描述

在这里插入图片描述

在回到20主机上操作

# 解压nginx源码包
tar zxf nginx-1.12.0.tar.gz 
# 进入解压后的包
cd nginx-1.12.0
# 编译并安装nginx服务
./configure 
make && make install
cd

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

# 启动nginx服务
/usr/local/nginx/sbin/nginx 
# 每台主机上都要关闭防火墙
service iptables stop
setenforce 0

测试nginx服务访问页面
在这里插入图片描述

# 编辑keepalived配置文件
vim /etc/keepalived/keepalived.conf 

在这里插入图片描述

在这里插入图片描述

# 将20主机上修改好的配置文件远程拷贝至21主机上
scp /etc/keepalived/keepalived.conf 10.0.0.21:/etc/keepalived/keepalived.conf 

在这里插入图片描述

切换到21主机上操作

vim /etc/keepalived/keepalived.conf

在这里插入图片描述

# 启动keepalived服务
service keepalived start
tar zxf nginx-1.12.0.tar.gz 
cd nginx-1.12.0
./configure 
make && make install 
cd
/usr/local/nginx/sbin/nginx

测试
keepalived高可用服务实现故障漂移,模拟Master20主机故障

切换到20主机上操作

# 启动keepalived服务
service keepalived start
# 终止keepalived服务
service keepalived stop

在这里插入图片描述

再来21主机上Keepalived-Backup这边查看虚拟IP已经漂移过来了

在这里插入图片描述

模拟20主机服务恢复,根据优先级自动抢占虚拟IP

service keepalived restart

在这里插入图片描述

在这里插入图片描述

再切换到22主机上操作

# 编辑阿帕奇服务配置文件
vi /etc/httpd/conf/httpd.conf 

在这里插入图片描述

在这里插入图片描述

# 启动阿帕奇服务
service httpd start
# 编写php服务测试页面
vi /var/www/html/index.php
<?php
phpinfo();
?>

在这里插入图片描述

测试php服务访问页面

在这里插入图片描述

再切换到23主机上操作
基本上是重复的操作

# 编辑阿帕奇服务配置文件
vi /etc/httpd/conf/httpd.conf 

在这里插入图片描述

在这里插入图片描述

# 启动阿帕奇服务
service httpd start
# 编写php服务测试页面
vi /var/www/html/index.php
22222222222222222
<?php
phpinfo();
?>

在这里插入图片描述

测试第二个php服务访问页面,注意我两次的IP地址是不一样的
在这里插入图片描述

再切换到20主机上操作,做负载均衡模块

# 编辑nginx服务的配置文件,修改完后wq保存退出
vim /usr/local/nginx/conf/nginx.conf

在这里插入图片描述

# 进入nginx的启动目录,并重启nginx服务
cd /usr/local/nginx/sbin/
./nginx -s reload
# 将20主机上修改好的nginx配置文件远程拷贝至21主机
scp /usr/local/nginx/conf/nginx.conf 10.0.0.21:/usr/local/nginx/conf/

再切换到21主机上操作

cd /usr/local/nginx/sbin/
# 检查nginx配置文件
./nginx -t 
./nginx -s reload

在这里插入图片描述

测试负载均衡页面,注意我测试的IP地址是不一样的
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

通过虚拟IP去测试负载的页面
在这里插入图片描述

在这里插入图片描述

再切换到22主机上操作,做数据库主从

# 编辑mysql数据库配置文件
vi /etc/my.cnf 

在这里插入图片描述

# 启动mysql服务
service mysqld start
# 登陆至数据库里面
mysql
# 授权
grant all on *.* to qq@'%' identified by 'qq';
flush privileges;
# 刷新权限
show master status;

在这里插入图片描述

再切换到23主机上操作

vi /etc/my.cnf 

在这里插入图片描述

service mysqld start
mysql
change master to master_host='10.0.0.22',master_user='qq',master_password='qq',master_log_file='mybin.000003',master_log_pos=301;
start slave;
show slave status \G;

在这里插入图片描述

# 22、23主机做memcache,安装必要的库和环境
yum  -y install memcached php-pecl-memcache libmemcached-devel
# 安装完毕后启动memcache服务
service memcached start
# 查看memcahce服务是否存活
netstat -anpt | grep 11211
# 或者用ps命令查看memcache服务的进程
ps -ef |grep memcached

在这里插入图片描述

# 编辑php配置文件
vi /etc/php.ini 

在这里插入图片描述

# 添加这个
session.save_handler = memcache
# 重启阿帕奇服务
service httpd restart

在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值