标签:lvs
一:实验目的
利用LVS实现discuz负载均衡
二:实验拓扑图
WEB服务器与PHP服务器在同一网段内,mysql服务器同时起着LVS负载均担作用。
三:搭建WEB服务器
本次WEB服务器采用编译安装服务,编译过程请参考LAMP平台编译。接下来配置WEB服务器主配置文件。
vim /etc/httpd24/extra/httpd-vhosts.conf #前面的路径为编译时指定的路径。 ifconfig eth0 192.168.1.16/24 up #修改主机的IP地址 ifconfig eth0:0 192.168.1.17/24 up route add defauit gw 192.168.1.1 #添加默认路由 <VirtualHost 192.168.1.16:80> #虚拟主机一 DocumentRoot "/mnt/web" ServerName www.llhdiscuz.com ProxyRequests Off ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.1.2:9000/nfs/web/$1 #指向PHP服务器 ErrorLog "logs/pma_error_log" CustomLog "logs/pma_access_log" common <Directory "/mnt/web"> Options none AllowOverride none Require all granted </Directory> </VirtualHost> <VirtualHost 192.168.1.17:80> #虚拟主机二 DocumentRoot "/mnt/web" ServerName www.llhdiscuz.com ProxyRequests Off ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.1.2:9000/nfs/web/$1 #指向PHP服务器 ErrorLog "logs/pma_error_log" CustomLog "logs/pma_access_log" common <Directory "/mnt/web"> Require all granted </Directory> </VirtualHost>
2)要想启用web服务器的虚拟主机功能需要打开主配置文件相应的模块。
vim /etc/httpd24/httpd.conf Include /etc/httpd24/extra/httpd-vhosts.conf #启用此模块
四:搭建PHP服务器
因为此次编译安装的PHP服务器是在单独的一台主机上,所以编译安装的模块选择中要把--enable-fpm模块编译上去。如果使用PHP5.3以上版本,为了链接MySQL数据库,可以指定mysqlnd,这样在本机就不需要先安装MySQL或MySQL开发包了。mysqlnd从php 5.3开始可用,可以编译时绑定到它(而不用和具体的MySQL客户端库绑定形成依赖),从PHP 5.4开始它就是默认设置了。其他的编译过程请参考LAMP平台编辑博客。
由于本次编译启动了fpm模块,要提供fpm配置文件。
1)配置php-fpm 为php-fpm提供SysV init脚本,并将其添加至服务列表: # cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm # chmod +x /etc/rc.d/init.d/php-fpm # chkconfig --add php-fpm # chkconfig php-fpm on 2)为php-fpm提供配置文件: # cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf 编辑php-fpm的配置文件: # vim /usr/local/php/etc/php-fpm.conf 3)配置fpm的相关选项为你所需要的值,并启用pid文件(如下最后一行): pm.max_children = 50 pm.start_servers = 5 pm.min_spare_servers = 2 pm.max_spare_servers = 8 pid = /usr/local/php/var/run/php-fpm.pid listen = 192.168.1.2:9000 #修改Mysql的监听IP地址 ifconfig eth0 192.168.1.2/24 up #修改主机的IP地址 route add default gw 192.168.1.1/24 #添加默认路由
五:提供NFS服务器
打开NFS主配置文件
vim /etc/exports /nfs/web192.168.1.16(no_root_squash,rw,no_all_squash)192.168.1.17(no_root_squash,rw,no_a ll_squash) 172.16.16.3(no_root_squash,rw,no_all_squash) #172.16.16.3 为NFS文件服务器 #在web服务器上和PHP服务器上挂载NFS文件服务 mount -t nfs 172.16.16.2:/nfs/web /mnt/web 在web服务器上挂载 mount -t nfs 172.16.16.2:/nfs/web /nfs/web 在NFS服务器上挂载
六:搭建mysql服务器
mysql搭建请参考编译安装LAMP博客
七:提供LVS服务
yum -y install ipvsadm #安装ipvs ipvsadm -A -t 172.16.16.2:80 -s rr ipvsadm -a -t 172.16.16.2:80 -r 192.168.1.16 -m ipvsadm -a -t 172.16.16.2:80 -r 192.168.1.17 -m 查看配置信息 [root@localhost ~]# ipvsadm -l -n IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 172.16.16.2:80 rr -> 192.168.1.16:80 Masq 1 0 0 -> 192.168.1.17:80 Masq 1 0 0
本文出自 “slayer” 博客,请务必保留此出处http://slayer.blog.51cto.com/4845839/1548503
标签:lvs
原文地址:http://slayer.blog.51cto.com/4845839/1548503