实验目的:
1,使用nginx的upstream实现服务器的负载均衡
2,使用keepalived实现服务器的高可用
3,另外也包括mysql的安装和NFS的部署
备注:本实验仅测试负载均衡和高可用的可用性,暂不过多介绍数据库和web服务器搭建(仅搭建nignx服务用于测试)
规划:
主机名 | IP地址 | 角色 |
---|---|---|
master | 192.168.100.130 | Nginx,Keepalived |
backup | 192.168.100.131 | Nginx,Keepalived,MySQL,NFS |
web1 | 192.168.100.132 | Nginx+PHP-FPM |
web2 | 192.168.100.135 | Nginx+PHP-FPM |
– | 192.168.100.88 | VIP |
准备工作(每台机器都需要操作):
0.1 修改主机名
hostnamectl set-hostname xxx //xxx为你的主机名,例如master
0.2 关闭和禁用防火墙
systemctl stop firewalld
systemctl disable firewalld
0.3 禁用selinux
vi /etc/selinux/config
更改内容为:SELINUX=disabled
操作流程:搭建数据库服务器->部署NFS->web服务器->负载均衡->高可用
具体操作:
1,在backup上安装mysql数据库
1.1 mysql下载地址:https://dev.mysql.com/downloads/repo/yum/
1.2 安装mysql
rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
yum repolist all|grep mysql
使用yum-config-manager启用mysql5.7 禁用mysql8.0
yum-config-manager --enable mysql57-community
yum-config-manager --disable mysql80-community
如果提示yum-config-manager命令未安装,则先进行安装
yum -y install yum-utils
yum install mysql-community-server
安装完毕启动mysql并查看状态
systemctl start mysqld
systemctl status mysqld
1.3 查看mysql的临时密码
grep 'temporary password' /var/log/mysqld.log
得到密码 QD>BqongM7Fe
1.4 使用临时密码登录数据库并修改密码
mysql -uroot -p
mysql> ALTER USER 'root'@'localhost' IDEN