实现环境:

实现原理:

共四台服务器 A,B,C,D

服务器A (CentOS 6.7):

IP地址:

192.168.3.67

角色:

DNS服务

说明:

为两台web服务器做域名轮询

服务器B,C (CentOS 7.2):

IP地址:

B:192.168.3.70

C:192.168.3.77

角色:

web服务器

说明:

httpd+php模式.共享使用由服务器D通过NFS服务共享的Discuz文档.

服务器D (CentOS 6.7):

IP地址:

192.168.3.60

角色:

MySQL服务器,NFS服务器

说明:

MySQL允许服务器B,C远程连接

NFS服务为服务器B,C共享Discuz所有文档

服务器D

Mysql服务

 

安装Mysql:

# yum install -y mysql-server mysql mysql-devel

启动mysql

# service mysqld start

检查3306端口是否被mysql监听

# netstat -anp | grep 3306

检查是否开机自启动

# chkconfig --list | grep mysqld

[root@localhost ~]# chkconfig --list | grep mysqld

mysqld         0:off        1:off        2:off        3:off        4:off        5:off        6:off

设置为开机自启

# chkconfig mysqld on

[root@localhost ~]# chkconfig mysqld on

[root@localhost ~]# chkconfig --list | grep mysqld

mysqld         0:off        1:off        2:on        3:on        4:on        5:on        6:off

给mysql的root帐户设定密码为"root"

# /usr/bin/mysqladmin -u root password 'root'

登陆mysql

# mysql -u root -p

[root@localhost ~]# mysql -u root -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 3

Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

创建一个数据库dzdb

mysql> create database dzdb;

给这个数据库创建并绑定一个数据库用户dzuser,可以通过所有192.168.3网段访问,并指定密码为dzuser

mysql> grant all privileges on dzdb.* to 'dzuser'@'192.168.3.%' identified by 'dzuser';

测试中发现远程主机无法连接

[root @qt1 /web/vhosts/pma]# mysql -udzuser1 -h192.168.3.60 -p

Enter password:

ERROR 1045 (28000): Access denied for user 'dzuser'@'192.168.3.77' (using password: YES)

排除防火墙原因后,发现导致无法登陆的原因是user表中有空用户所致.

删除掉空用户即可:

mysql> delete from user where user='';

NFS服务设定

安装NFS:

# yum install nfs-utils

创建共享文件夹

# mkdir /var/www/nfs

设置权限

# setfacl -m u:apache:rwx /var/www/nfs

设定,允许服务器B和C读写

# vim /etc/exports

/var/www/nfs 192.168.3.70(rw,no_root_squash) 192.168.3.77(rw,no_root_squash)

启动服务,首先保证rpcbind服务已开启

# service rpcbind start

# service nfs start

设置开机自启

# chkconfig rpcbind on

# chkconfig nfs on

# chkconfig nfslock on

查看本机共享

# showmount -e

服务器B

创建挂载点

# mkdir /web/nfsdz

将这个目录设定主目录

# vim /etc/httpd/conf/httpd.conf

DocumentRoot "/web/nfsdz"

DirectoryIndex index.php index.html

# systemctl reload httpd

安装nfs

# yum install nfs-utils

# systemctl start rpcbind

# systemctl start nfs

挂载

# mount -t nfs -o nosuid,noexec,nodev,rw,bg,soft,rsize=32768,wsize=32768 192.168.3.60:/var/www/nfs /web/nfsdz

加入开机启动

# vim /etc/fstab

192.168.3.60:/var/www/nfs /web/nfsdz nfs defaults,_netdev 0 0

Discuz文档

将Discuz网站文档放进/web/nfsdz文件夹,步骤略.

添加权限

# cd /web/nfsdz

# chmod -R 777 *

服务器C

设置部分同服务器B

安装Discuz

浏览器输入http://192.168.3.70/install 开始安装Discuz,数据库配置填写上面刚做的配置,如图

安装完毕,分别测试访问192.168.3.70和192.168.3.77

服务器A(DNS服务器)

BIND安装步骤略

关键配置部分:

由于是本地测试,所以我自定义一个域名www.testdz.com.

# vim /etc/named.rfc1912.zones

添加以下设置

zone "testdz.com" IN{

type master;

file "testdz.com.zone";

};

保存退出

# vim /var/named/testdz.com.zone

$TTL 600

@        IN        SOA        ns1.testdz.com.         admin.testdz.com. (

2016051808

3H

15M

1W

1D

)

IN        NS        ns1.testdz.com.

IN        NS        ns2.testdz.com.

www        IN        A        192.168.3.77

www        IN        A        192.168.3.70

testdz.com.        IN        A        192.168.3.77

ns2        IN        A        192.168.3.70

ns1        IN        A        192.168.3.67

关键为黑体加粗部分,使用DNS轮询.

保存退出

重载配置

# service named reload

之后便可以通过域名www.testdz.com访问了,不同计算机第一次访问会被DNS分配到不同的主机上.

最新文章

  1. Linux服务器oraclejdk与openjdk共存并配置JavaEE开发环境
  2. C# 读取excel日期时获取到数字转换成日期
  3. SQL入门经典(六) 之视图
  4. JSON-LD
  5. 使用js使某个按钮在5秒内不能重复点击
  6. [Javascript] Chaining the Array map and filter methods
  7. 【2011 Greater New York Regional 】Problem I :The Golden Ceiling
  8. K3整理
  9. 【转】MUD教程--巫师入门教程2
  10. Hadoop技术在商业智能BI中的应用
  11. 动态规划——Frog Jump
  12. 论文笔记:Deep feature learning with relative distance comparison for person re-identification
  13. js在字符串中提取数字
  14. Vue基础进阶 之 Vue生命周期与钩子函数
  15. Android 开发 技术大纲
  16. Golang 处理 Json(一):编码
  17. Docker安装和常用命令
  18. 精品绿色便携软件 & 录制操作工具
  19. B-tree B+tree适合文件系统索引和MySQL索引
  20. VMWare虚拟机下为Ubuntu 12.04.1配置静态IP(NAT方式)

热门文章

  1. ps中的常用功能与技巧
  2. 【随笔】关于绝对定位absolute相对于父元素定位的问题
  3. 如何制作Win10系统U盘安装镜像
  4. 第4天:function对象(案例:获取当前日期属于当年第几天、arguments对象、函数类型、参数、返回值、自身调用)
  5. package.json中^符号和~符号前缀的区别
  6. Vue-Router的使用(一)
  7. Cheatsheet: 2017 04.01 ~ 04.30
  8. ZT 为什么Java中继承多数是有害的?
  9. Spring课程 Spring入门篇 5-6 introductions应用
  10. Java接口和抽象类理解(New)