您的位置:首页 > 运维架构 > 网站架构

基于DNS轮询和NFS实现简单的网站负载均衡

2014-08-17 20:14 435 查看
试验简述:分别在host1和host2上安装php和httpd服务器,并部署Discuz站点,在host2上安装DNS服务,用于通过轮询,向客户提供站点bbs.test.com网站的IP地址.在host3上分别提供mysql数据库用于存放站点数据.,部署LFS服务用于向用户提供附件头像等上传的空间.



1. 在各服务器上分别安装对应服务器程序

Host1: yum -y install httpd php php-mysqlHost2: yum -y install httpd php php-mysql bindHost3: yum install mysql-server mysql

2. 配置host1和host2上的httpd服务器

分别编辑两台主机的/etc/httpd/conf/httpd.conf,修改主机名,根路径以及添加对根路径的权限ServerName bbs.test.comDocumentRoot "/bbs"<Directory /bbs> Options none Order allow,deny allow from all</Directory>分别添加测试页面/bbs/index.php,内容如下<?php phpinfo();?>分别访问host1和host2,可以看到如下信息,说明网站和php已经运行成功

3. 配置mysql数据库,使账号dz可以分别从hosta和hostb访问dz数据库,并有完全访问权限

mysql> create database dz;Query OK, 1 row affected (0.00 sec) mysql> grant all on dz to 'dz'@'172.16.21.101' IDENTIFIED BY '123456';ERROR 1046 (3D000): No database selectedmysql> grant all on dz.* to 'dz'@'172.16.21.101' IDENTIFIED BY '123456';Query OK, 0 rows affected (0.00 sec) mysql> grant all on dz.* to 'dz'@'172.16.21.102' IDENTIFIED BY '123456';Query OK, 0 rows affected (0.00 sec)

4. 分别在host1和host2上添加测试页面mysql.php,内容如下:



访问指定页面,可见数据库已经连接成功

5. 在host3搭建DNS服务器,将bbs.test.com分别解析到172.16.21.101和172.16.21.102

编辑named主配置文件/etc/named.conf,添加正向区域,内容如下:

添加正向区域解析文件var/named/test.com.zone,内容如下

使用本服务器进行解析,可见每次返回的地址顺序会发生改变,利用此可以实现服务器轮询访问.

6. 配置LFS服务,配置正确的选项

在host3上编辑 /etc/exports,

使用exportfs -arv重新加载挂载项

7. 安装Discuz站点

在host1上解压站点到/bbs目录

通过访问IP地址来安装Discuz站点,根据提示安装

选择全新安装进行安装



服务器自动创建数据表

此时我们的数据库已经安装完毕

将此站点目录下所由内容压缩复制到host2一份,并在host2上解压到/bbs,通过host2 IP访问正常

8. 图片附件等数据互通

将host1上./data下的文件复制按照host1传送到host2到host3的/upload一份,

删除host1和2的data目录下的数据

分别在host1和host2上挂载host3上的upload,挂载至data目录,并加入到fatab实现开机自动挂载



9. 测试

通过域名访问并写一个帖子上传附件

分别通过两个IP访问,测试附件能否被正常访问



可见,通过两个IP均能访问附件资源,试验成功!!!

本文出自 “淡淡” 博客,请务必保留此出处http://dddbk.blog.51cto.com/6837943/1541346
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐