web服务器(LAMP)通过DNS轮询功能和nfs共享实现负载均衡

web服务器(LAMP)通过DNS轮询功能和nfs共享实现负载均衡,部署discuz论坛

拓扑思路:

服务器1:mariadb+nfs;172.20.120.40

服务器2:apache+php-fpm;172.20.120.41

服务器3:apache+bind;172.20.120.42

 

服务器1:mariadb+nfs;172.20.120.40

# yum install mariadb-server nfs-utils

部署nfs共享;分别使用lvm当做数据库目录/mydata、网页文件目录/vhosts;

# yum install mariadb-server nfs-utils -y
# fdisk -l /dev/sda
# partx -a /dev/sda
# pvcreate /dev/sda3
# vgcreate vg01 /dev/sda3
# lvcreate -L 8G -n mydata vg01
# lvcreate -L 8G -n myhtdoc vg01
# mkfs -t xfs /dev/vg01/mydata
# mkfs -t xfs/dev/vg01/myhtdoc
# mkdir /mydata
# mkdir /vhosts
# vim /etc/fstab 添加如下

/dev/vg01/mydata /mydata xfs defaults 0 0
/dev/vg01/myhtdoc /vhosts xfs defaults 0 0

# mount -a
# vim /etc/exports
/vhosts 172.20.120.41(rw,no_root_squash) 172.20.120.42(rw,no_root_squash)

# cp /usr/share/mysql/my-large.cnf /etc/my.cnf
# vim /etc/my.cnf
innodb_file_per_table = on
skip_name_resolv = on
datadir = /mydata/data

# mkdir -pv /mydata/data
# chown mysql:mysql /mydata/data
# systemctl enable nfs mariadb
# systemctl start nfs mariadb
# mysql_secure_installation

下载discuz并上传网页文件到/vhosts/web1目录下

 

服务器2:apache+php-fpm;172.20.120.41

# yum install httpd php-fpm php-mysql nfs-utils -y

# vim /etc/fstab

172.20.120.40:/vhosts /vhosts nfs defaults,_netdev 0 0

# mount -a

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

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

DirectoryIndex index.php index.html

<VirtualHost *:80>
ServerName bbs.lewis.com
DocumentRoot /vhosts/web1
ProxyRequests off
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://172.20.120.41:9000/vhosts/web1/$1
<Directory “/vhosts”>
Require all granted
Options none
AllowOverride none
</Directory>
</VirtualHost>

 

# vim /etc/php-fpm.d/www.conf

listen = 172.20.120.41:9000

listen.allowed_clients = 172.20.120.41,172.20.120.42

 

# systemctl enable httpd php-fpm

# systemctl start httpd php-fpm

 

 

服务器3:apache+bind;172.20.120.42

# yum install httpd bind nfs-utils -y

# vim /etc/fstab

172.20.120.40:/vhosts /vhosts nfs defaults,_netdev 0 0

# mount -a

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

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

DirectoryIndex index.php index.html

<VirtualHost *:80>
ServerName bbs.lewis.com
DocumentRoot /vhosts/web1
ProxyRequests off
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://172.20.120.41:9000/vhosts/web1/$1
<Directory “/vhosts”>
Require all granted
Options none
AllowOverride none
</Directory>
</VirtualHost>

# vim /etc/named.conf

options {
listen-on port 53 { 172.20.120.42; };
// listen-on-v6 port 53 { ::1; };
allow-query { 172.20.120.0/16; };

# vim /etc/named.rfc1912.zones

zone “lewis.com” IN {
type master;
file “lewis.com.zone”;
allow-update { none; };
};

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

$TTL 1D
@ IN SOA ns.lewis.com. root@localhost (
2018060501
2H
20M
1W
1D
)
IN NS ns.lewis.com.
ns IN A 172.20.120.42
bbs IN A 172.20.120.41
bbs IN A 172.20.120.42
lewis.com. IN A 172.20.120.42
lewis.com. IN A 172.20.120.41

# systemctl enable httpd named
# systemctl start httpd named

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/100304

(0)
N26-深圳-城市蜗牛N26-深圳-城市蜗牛
上一篇 2018-06-04
下一篇 2018-06-04

相关推荐

  • 常用信息查询

    版本 发行版本 cat /etc/centos-releaseCentOS Linux release 7.4.1708 (Core) /*1708 17年8月发布*/ lsb_release -a /*显示上面文件内容*//*要安装工具*/ nano /etc/centos-release /*修改*//*生产中 尽量不要暴露版本号*/ 内核版本 name…

    Linux笔记 2018-04-08
  • RAID 及 LVM

    本节主要介绍软RAID的实现和LVM的创建等等

    Linux笔记 2018-04-25
  • 第二周作业

    第二周

    Linux笔记 2018-05-20
  • 基于Memcached的session server

    session server:将Tomcat的session信息保存在Memcached中,实现session server 前提: 两个Tomcat节点,两个Memcached节点,一个nginx节点;Tomcat需要使用到Memcached-session-manager这个Java类,即上面所说的调用了Memcached提供的API的模块,以达到Mem…

    Linux笔记 2018-03-31
  • 第三周作业

    第三周作业 1列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 W 命令:显示信息更加全面 第一行显示系统的汇总信息,字段分别表示系统当前时间、系统运行时间、登陆内用户总数及系统平均负载信息。 从第二行开始构成一个表格,共有8个栏目,分别显示各个用户正在做的事情及该用户所占用的系统资料。 USER:显示登陆用户帐号名。用…

    2018-07-08
  • history man info tab 的用法

    “whatis conmand =man -f cm 简单说明 centos6 安装what is 输入 make whatis centos7 创建 mandb “内部命令用 help conmand 外部命令 用 command –help 外部命令 man command (外部命令用man比较详细) 可以用/ 搜 …

    Linux笔记 2018-03-31