DNS HTTPD PHP NFS ----综合应用

                        DNS HTTPD PHP NFS ----综合应用

 

工作模型简述:


利用DNS服务器的域名解析实现简单的轮询,利用两台httpd服务器实现简单的负载均衡。NFS作为网站资源的根目录。两个httpd共享一个mysql服务存储

 

 

实验拓扑图:

编译安装bind9
软件包为bind-9.9.6b1.tar.gz
解压:tar -xf bind-9.9.6b1.tar.gz
   Cd bind-9.9.6b1
./configure --prefix=/usr/local/bind9
         --sysconfdir=/etc/named/name.conf
         --disable-ipv6
         --enable-threads
         --disable-chroot
编译安装:make && make install
编辑配置文件:


 

hefeng.com域提供解析文件

Vim /var/named/hefeng.com.zone内容如下:


DNS配置完成

测试是否能完成轮询

 

安装httpd服务器并整合php模块
软件包为httpd-2.4.10.tar.gz
    apr-1.5.1.tar.gz
    apr-util-1.5.3.tar.gz
首先安装apache可移植运行环境
./configure --prefix=/usr/local/apr-1.5
Make && make install
 
./configure --prefix=/usr/local/apr-util-1.5 --with-apr-util=/usr/local/apr-1.5
Make && make install 
解压:tar -xf httpd-2.4.10.tar.gz
    cd httpd-2.4.10
      ./configure 
      --prefix=/usr/local/apache1
      --sysconfdir=/etc/apache1
      --enable-so 
      --enable-modules=most
      --enable-mpms=all
      --enable-mpm-share=all 
      --enable-mpm=event
      --enable--ssl 
      --enable-cgi
      --enable-rewrite
      --with-zlib
      --with-pcre 
      --with-apr=/usr/local/apr-1.5
      --with-apr-util=/usr/local/apr-util-1.5
      Make && make install
安装php
软件包为:php-5.4.26.tar.bz2
解决依赖关系: yum install gd-devel --libmcrypt-devel
编译配置为
 
    
./configure
 --prefix=/usr/local/php1
 --with-config-file-path=/etc/php1
 --with-config-scan-dir=/etc/php1.d
 --enable-mbstring
 --with-freetype
 --with-jpeg-dir
 --with-png-dir
 --writh-zlib
 --with-libxml-dir=/usr
 --enable-xml
 --with-apxs2=/usr/local/apache1/bin/apxs
 --enable-maintainer-zts
 --with-mysql=mysqlnd
 --with-mysqli=mysqld
 
Make && make install
 
编辑配置文件:vim /etc/apache1/httpd.conf
 
添加如下内容
php模块会在安装完成后自动添加
ServerName www.hefeng.com
Listen 172.16.101.35:80
Addtype application/x-httpd-php .php
AddType application/x-httpd-source .phps
安装完成第一个主机
测试如下:
由于客户端主机会有DNS缓存所以这里直接用ip地址测试




 同样的方法在同一台主机安装另一个httpd+php只不过将apache1改成apache2 php1改成php2 注意在同一主机安装apache2aprapr-util 要重新安装一份否则第二台主机无法启动监听进程 这里不再赘述

  另外要编辑vim /etc/apache2/httpd.conf监听第二块网卡端口如下图:

测试如下图:



准备安装mariadb服务器:
软件包为二进制版本:mariadb-5.5.36-linux-x86_64.tar.gz
安装步骤如下:
首先创建系统用户mysql
Useradd -r -s /sbin/nologin  -d  /mydata
解压安装包
Tar -xf  mariadb-5.5.36-linux-x86_64.tar.gz -C /usr/local/
创建软链接:
Ln -sv mariadb-5.5.36-linux-x86_64  mysql
进入mysql目录修改属组和属主
Chown -R mysql:mysql  ./*
运行如下命令
 
./scripts/mysql_install_db --user=mysql --datadir=/mydata
 
而后修改文件属主
 
Chown -R root ./*
 
为mysql创建配置文件
 
cp support-files/my-large.cnf /etc/my.cnf
 
修改配置文件vim /etc/my.cnf


创建sysv启动脚本
cp support-files/mysql.server /etc/init.d/mysqld
Chkconfig -add mysqld
导出二进制文件
Vim /etc/profile.d/mysqld.sh


执行命令使其生效
source !$
为root账号穿件密码
Mysqladmin -uroot password  ‘hzm132’
 
启动mysql
 
Service mysqld start并测试

至此mariadb安装成功
 
下面创建NFS共享:
Vim /etc/exports 内容如下:
共享目录为/myweb
创建目录mkdir /myweb

将Discuz安装文件upload放入此目录
并修改权限因为apache以daemon用户运行所以
Chown -R daemon:daemon /myweb
Chmod -R 755 /myweb
NFS及安装文件准陪完毕。
创建安装站点的数据库
mysql -uroot -p -e "create databse myweb"
mysql -uroot -p -e "grant all on myweb.* to ‘myweb‘@‘172.16.101.35‘ identified by ‘hzm132‘"
mysql -uroot -p -e "grant all on myweb.* to ‘myweb‘@‘172.16.101.36‘ identified by ‘hzm132‘"
mysql -uroot -p -e "flush privileges"
查看


好了数据准备完毕

现在到apache服务器挂在NFS共享的文件到站点根目录

 

mount -t nfs 172.16.101.100:/myweb /usr/local/apache2/htdocs/

mount -t nfs 172.16.101.100:/myweb /usr/local/apache1/htdocs/

开始安装过程选任意主机都可安装过程不再赘述 详情参考上篇博客

 

测试:

上传数据通过任意主机都可访问

注册一个账户


登陆成功


现在换另一主机看能否登陆

登陆成功实现数据的共享


      DNS HTTPD PHP NFS ----综合应用,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。