CentOS部署双web服务器+单mysql服务器
时间:2014-09-12 12:06 来源:blog.51cto.com 作者:老广 的BLOG
前言:对于一个站点来说,查询静态页面的量显然多与动态页面的量,所以我们以配置两个web服务器,一个mysql服务器来组成简单的负载均衡站点,当然这显然还是不够的,因为php解析服务也与web服务在一起,不过由于php与web的分离还有些难度,暂时先不考虑,下面就以两个web服务器与一个mysql服务器为例。
客户端访问web服务器,需要DNS的解析,从DNS服务器那里查询得到web服务器的地址,我们在DNS服务器设置一个域名对应两个IP地址,实现web的轮询访问。A为主服务器,它部署了Apache与php,而数据库则独立在C服务器中,B通过NFS同步A中的数据,实现AB中数据一致,它的数据库服务器也指向C。
实验环境:RedHat5.8, A,B中安装部署系统自带的httpd-2.2.3,php-5.5.3,php-mysql,NFS-utils的RPM包,C中用自带的bind-9.7.0,mysql-5.0部署了DNS与mysql服务。 A的地址为172.16.1.20/16,B的地址为172.16.1.21/16,C的地址为172.16.1.1 (注,所有SELINUX,iptables已关闭),域名为www.test.com
##yum安装mysql
yum -y install mysql
##启动mysqld服务端
service mysqld start
##为web服务器建立简单的库,与账号
mysql ##启动客户端
mysql> create database web; ##创建数据库
mysql> grant all on web.* to 'web'@'172.16.1.20' identified by 'redhat'; ##为web1建立账号
mysql> grant all on web.* to 'web'@'172.16.1.21' identified by 'redhat'; ##为web2建立账号
二,建立web服务器器A
1,安装httpd,php,php-mysql,NFS-utils
yum -y install httpd php53 php53-mysql nfs-utils ##redhat5.8自带了两个版本的php,我们用5.3的
DocumentRoot "/var/www/html" ##由此可知文档目录
##把下载的wordpress包解压到/var/www/html中
wget http://cn.wordpress.org/wordpress-3.4.2-zh_CN.tar.gz ##下载wordpress
tar xvf wordpress-2.4.2-zh_CN.tar.gz ##解压
cp -R wordpress-3.4.2-zh_CN.tar.gz/* /var/www/html ##拷贝到/var/www/html中、
chown -R apache:apache /var/www/html ##更改属主属组
cd /var/www/html/
cp wp-config-sample.php wp-config.php ##拷贝实例配置文件
vim wp-config.php
define('DB_NAME', 'web'); ##修改数据库名字
define('DB_USER', 'web'); ##修改用户名
define('DB_PASSWORD', 'redhat'); ##修改密码
define('DB_HOST', '172.16.1.1'); ##mysql服务器地址
4,启动httpd服务器,然后访问web服务器,安装wordpress
service httpd start ##启动服务
##在浏览器中访问172.16.1.20进入安装界面,简单设置即可
5,启动NFS,共享/var/www/html
##编辑配置文件共享/var/www/html
vi /etc/exports
/var/www/html 172.16.1.21(rw)
servie nfs start ##启动NFS
6,检查是否共享成功
showmount -e 172.16.1.20 ##查看是否共享成功
Export list for 172.16.1.20: ##出现以下字样代表成功了
/var/www/html 172.16.1.21
###到此web1设置完毕
三,建立web2服务器
1,同步骤二第一步一致
2,挂载web1的共享目录到/var/www/html
mount -t nfs 172.16.1.20:/var/www/html /var/www/html ##挂载
##访问 172.16.1.21测试是否能正常访问 如果能则正常
四,在mysql中建立DNS服务器
1,安装bind
yum -y install bind97 ##安装RedHat5.3中版本较高的bind-5.3
options {
directory "/var/named";
}
zone "." IN {
type hint;
file "named.ca";
};
zone "test.com" IN {
type master;
file "test.com.zone";
};
/etc/named/test.com.zone ##修改
$TTL 9000
@ IN SOA ns admin (
2012102801
2H
5M
7D
2H )
IN NS ns
ns IN A 172.16.1.1
www IN A 172.16.1.21
www IN A 172.16.1.20
4,测试DNS服务器是否正常
dig -t A www.test.com @127.0.0.1 如能正确解析则代表正常
五,把测试客户端xp的本地连接的DNS改为 172.16.1.1,在浏览器中访问www.test.com测试访问,然后查看各自web服务器的access日志文件。如果都有记录代表一切正常。
(责任编辑:IT)
前言:对于一个站点来说,查询静态页面的量显然多与动态页面的量,所以我们以配置两个web服务器,一个mysql服务器来组成简单的负载均衡站点,当然这显然还是不够的,因为php解析服务也与web服务在一起,不过由于php与web的分离还有些难度,暂时先不考虑,下面就以两个web服务器与一个mysql服务器为例。
客户端访问web服务器,需要DNS的解析,从DNS服务器那里查询得到web服务器的地址,我们在DNS服务器设置一个域名对应两个IP地址,实现web的轮询访问。A为主服务器,它部署了Apache与php,而数据库则独立在C服务器中,B通过NFS同步A中的数据,实现AB中数据一致,它的数据库服务器也指向C。
实验环境:RedHat5.8, A,B中安装部署系统自带的httpd-2.2.3,php-5.5.3,php-mysql,NFS-utils的RPM包,C中用自带的bind-9.7.0,mysql-5.0部署了DNS与mysql服务。 A的地址为172.16.1.20/16,B的地址为172.16.1.21/16,C的地址为172.16.1.1 (注,所有SELINUX,iptables已关闭),域名为www.test.com ##yum安装mysql yum -y install mysql ##启动mysqld服务端 service mysqld start ##为web服务器建立简单的库,与账号 mysql ##启动客户端 mysql> create database web; ##创建数据库 mysql> grant all on web.* to 'web'@'172.16.1.20' identified by 'redhat'; ##为web1建立账号 mysql> grant all on web.* to 'web'@'172.16.1.21' identified by 'redhat'; ##为web2建立账号 二,建立web服务器器A 1,安装httpd,php,php-mysql,NFS-utilsyum -y install httpd php53 php53-mysql nfs-utils ##redhat5.8自带了两个版本的php,我们用5.3的DocumentRoot "/var/www/html" ##由此可知文档目录 ##把下载的wordpress包解压到/var/www/html中 wget http://cn.wordpress.org/wordpress-3.4.2-zh_CN.tar.gz ##下载wordpress tar xvf wordpress-2.4.2-zh_CN.tar.gz ##解压 cp -R wordpress-3.4.2-zh_CN.tar.gz/* /var/www/html ##拷贝到/var/www/html中、 chown -R apache:apache /var/www/html ##更改属主属组cd /var/www/html/ cp wp-config-sample.php wp-config.php ##拷贝实例配置文件 vim wp-config.php define('DB_NAME', 'web'); ##修改数据库名字 define('DB_USER', 'web'); ##修改用户名 define('DB_PASSWORD', 'redhat'); ##修改密码 define('DB_HOST', '172.16.1.1'); ##mysql服务器地址 4,启动httpd服务器,然后访问web服务器,安装wordpressservice httpd start ##启动服务 ##在浏览器中访问172.16.1.20进入安装界面,简单设置即可 5,启动NFS,共享/var/www/html##编辑配置文件共享/var/www/html vi /etc/exports /var/www/html 172.16.1.21(rw) servie nfs start ##启动NFS6,检查是否共享成功 三,建立web2服务器 1,同步骤二第一步一致2,挂载web1的共享目录到/var/www/htmlmount -t nfs 172.16.1.20:/var/www/html /var/www/html ##挂载 ##访问 172.16.1.21测试是否能正常访问 如果能则正常 四,在mysql中建立DNS服务器 1,安装bindyum -y install bind97 ##安装RedHat5.3中版本较高的bind-5.3 options { directory "/var/named"; } zone "." IN { type hint; file "named.ca"; }; zone "test.com" IN { type master; file "test.com.zone"; };/etc/named/test.com.zone ##修改 $TTL 9000 @ IN SOA ns admin ( 2012102801 2H 5M 7D 2H ) IN NS ns ns IN A 172.16.1.1 www IN A 172.16.1.21 www IN A 172.16.1.20 4,测试DNS服务器是否正常dig -t A www.test.com @127.0.0.1 如能正确解析则代表正常 五,把测试客户端xp的本地连接的DNS改为 172.16.1.1,在浏览器中访问www.test.com测试访问,然后查看各自web服务器的access日志文件。如果都有记录代表一切正常。(责任编辑:IT) |