环境准备
服务器系统 | Centos6.8 |
---|---|
内存 | 1G |
CPU | 2核 |
IP地址 | 10.0.0.20 |
服务器系统 | Centos6.8 |
---|---|
内存 | 1G |
CPU | 2核 |
IP地址 | 10.0.0.21 |
服务器系统 | Centos6.8 |
---|---|
内存 | 1G |
CPU | 2核 |
IP地址 | 10.0.0.22 |
服务器系统 | Centos6.8 |
---|---|
内存 | 1G |
CPU | 2核 |
IP地址 | 10.0.0.23 |
# 在22、23两台主机上安装mysql服务
yum -y install mysql mysql-server
mysql主主可以参考下面这篇文章
https://blog.csdn.net/aaronszm/article/details/104007885
下面开始做主主操作
在22主机上操作
vi /etc/my.cnf
service mysqld start
mysql
grant all on *.* to aaronszm@'%' identified by '123';
flush privileges;
show master status;
去23主机上操作
vim /etc/my.cnf
service mysqld start
mysql
stop slave;
change master to master_host='10.0.0.22',master_user='aaronszm',master_password='123',master_log_file='mybin.000003',master_log_pos=503;
start slave;
show slave status \G;
grant all on *.* to aaronszm@'%' identified by '123';
flush privileges;
show master status;
回到22主机上操作
change master to master_host='10.0.0.23',master_user='aaronszm',master_password='123',master_log_file='mysql-bin.000002',master_log_pos=308;
start slave;
show slave status \G;
然后退出数据库做nginx
首先获取Nginx源码包,我这里有,如果没有可以去Nginx官网获取
http://nginx.org/en/download.html
# 在22、23两台主机上安装nginx依赖
yum -y install pcre-devel zlib-devel gcc gcc-c++
# 解压nginx源码包
tar zxf nginx-1.12.0.tar.gz
# 进入解压后的包
cd nginx-1.12.0
# 编译并安装nginx服务
./configure
make && make install
# 安装php服务和相关依赖
yum -y install php php-mysql php-fpm php-gd php*
# 将22主机上的nginx源码包远程拷贝至23主机上
scp nginx-1.12.0.tar.gz 10.0.0.23:/root/
# 编辑nginx服务的配置文件
vim /usr/local/nginx/conf/nginx.conf
# 编辑php测试页面
vim /usr/local/nginx/html/index.php
<?php
phpinfo();
?>
# 启动Nginx服务
/usr/local/nginx/sbin/nginx
# 启动php
service php-fpm start
再切换回到23主机上操作
# 解压nginx源码包
tar zxf nginx-1.12.0.tar.gz
# 进入解压后的包
cd nginx-1.12.0
# 编译并安装nginx服务
./configure
make && make install
回到22主机上操作
# 将22主机上的php测试页面远程拷贝至23主机上
scp /usr/local/nginx/html/index.php 10.0.0.23:/usr/local/nginx/html/
# 将22主机上修改好的nginx配置文件远程拷贝至23主机
scp /usr/local/nginx/conf/nginx.conf 10.0.0.23:/usr/local/nginx/conf/
再切换回到23主机上操作
# 编辑php测试页面
vim /usr/local/nginx/html/index.php
# 启动Nginx服务
/usr/local/nginx/sbin/nginx
# 启动php
service php-fpm start
两台web端和mysql主主做到这里就算完了
20、21两台主机上同样上传nginx源码包
在20、21两台主机上安装keepalived服务和nginx相关依赖
yum -y install keepalived pcre-devel zlib-devel gcc gcc-c++
20、21两台主机上操作
# 解压nginx源码包
tar zxf nginx-1.12.0.tar.gz
# 进入解压后的包
cd nginx-1.12.0
# 编译并安装nginx服务
./configure
make && make install
回到20主机上操作
# 编辑nginx服务的配置文件
vim /usr/local/nginx/conf/nginx.conf
# 将20主机上修改好的nginx配置文件远程拷贝至21主机上
scp /usr/local/nginx/conf/nginx.conf 10.0.0.21:/usr/local/nginx/conf/
# 启动Nginx服务
/usr/local/nginx/sbin/nginx
回到21主机上操作
# 启动Nginx服务
/usr/local/nginx/sbin/nginx
Keepalived的配置同样可以参考下面这篇文章
https://blog.csdn.net/aaronszm/article/details/104126404
因为配置是一样的,参考上面这篇文章,这里我就不详细多说 测试完keepalived高可用服务实现故障漂移后我们就可以上线电商项目了
# 解压电商包
unzip tinyshopV2.5_data.zip
# 给目录加权限
chmod 777 -R /usr/local/nginx/html/