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 11:54
下一篇 2018-06-04 18:57

相关推荐

  • Linux根文件系统和目录结构及bash特性

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 cp命令:copy 源文件;目标文件; 单源复制:cp [OPTION]… [-T] SOURCE DEST 多源复制:cp [OPTION]… SOURCE… DIRECTORY cp [OPTION]… -t DIRECTORY S…

    2018-06-29
  • 第十一周作业

    1、搭建php-fpm工作方式的LAMP环境,实现wordpress正常访问 1、 先安装数据库mariadb [root@bogon ~]# yum install mariadb-service 配置数据库主文件 [root@bogon ~]# vim /etc/my.cnf.d/server.cnf 启动数据库 [root@bogon ~]# syst…

    Linux笔记 2018-06-10
  • Linux上如何管理文件以及创建目录的简便方法

    linux中的文件管理类命令;bash的两个基本特性

    2018-05-23
  • 日常——sed练习

    1、删除centos7系统/etc/grub2.cfg文件中所有以空白开头的行行首的空白字符# sed -i.bak ‘s/^[[:space:]]*//’ /data/grub2.cfg2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符# sed -i.bak ‘s@^#[[:…

    2018-04-13
  • 用户管理练习

    用户管理练习: 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut -d’ ‘ -f1 | sort -u liulian root 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# last | h…

    2018-05-28
  • Linux运维命令以及概念整理总结(3)

    1.用户权限设置以及更改
    2、特殊权限suid、sgid、sticky
    3、ACL权限设置
    4、cat命令、head命令、tail命令、cut命令、paste命令
    5、sort命令、uniq命令、diff命令

    2018-04-14