wordpress和discuz的负载均衡(lvs-dr)

wordpressdiscuz的负载均衡

wordpress和discuz的负载均衡(lvs-dr)

实验目的:利用lvs-dr模型实现wordpressdiscuz的负载均衡

实验要求:客户端访问wordpressdiscuz服务器时,无论被调度至哪台RS上,其会话和访问的页面都应保持一致;

实验环境:一台server用作VS,两台server用作RS,一台server用于部署mysqlNFSwordpressdiscuz服务;

注意:由于使用dr模型,因此在配置ipVSRS上都需要配置两个IPdip配置在网卡上、vip配置在回环网卡的别名上),而在配置vip之前须先修改内核参数arp_announcearp_ignore

操作步骤:

一、配置IP

1.配置A主机的IP及别名IP

# ip addr add dev eth0 192.168.10.2/24

# ip addr add dev eth0 192.168.10.254/32 label eth0:0 broadcast 192.168.10.254

2.配置B主机的IP,修改内核参数和回环的IP

# ip addr add dev eth0 192.168.10.3/24

# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore

# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce

# ip addr add dev lo 192.168.10.254/32 label lo:0 broadcast 192.168.10.254

3.配置C主机的IP,修改内核参数和回环的IP

# ip addr add dev eth0 192.168.10.4/24

# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore

# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

# echo 2 > /proc/sys/net/ipv4/conf/all/apr_announce

# ip addr add dev lo 192.168.10.254/32 label lo:0 broadcast 192.168.10.254

4.配置D主机的IP

# ip addr add dev eth0 192.168.10.5/24

二、配置集群

A主机上操作

1.安装ipvsadm工具

# yum -y install ipvsadm

2.配置VS,调度算法为sh

# ipvsadm -A -t 192.168.10.254:80 -s sh

3.配置RSLVS类型为DR

# ipvsadm -a -t 192.168.10.254:80 -r 192.168.10.3 -g

# ipvsadm -a -t 192.168.10.254:80 -r 192.168.10.4 -g

三、部署NFSmysql

D主机上操作

1.安装所需软件包

# yum -y install nfs-utils mysql-server

2.准备用户apache(访问NFS服务时映射为的用户)

# useradd -u 48 apache

3.准备需要导出的目录,且其属主、属组为apahce

# install -o apache -g apache -d /data/application/web

4.下载wordpress程序包并解压至/data/application/web目录下,并将其属主、属组改为apachewordpress目录下的wp-content目录的权限改为777(上传图片时需要写权限)

# unzip wordpress-4.3.1.-zh_CN.zip

# mv wordpress /data/application/web

# cd /data/application/web

# chown -R apache.apache wordpress

# chmod 777 wordpress/wp-content

5.下载Discuz程序包并解压至/data/application/web目录下,并将其属主、属组改为apache # tar xvf Discuz-tar.xz

# mv upload /data/applicatiion/web

# cd /data/application/web

# chown -R apache.apache upload

6.编辑nfs配置文件,/data/application/web目录导出,允许192.168.10.0/24网段连接,导出属性为rw,async,用户映射为apache

# vim /etc/exports

    /data/application/web 192.168.10.0/24(rw,async,anonuid=48,anongid=48)

7.启动mysql服务,创建数据库wpdbdzdb,并分别授权用户wpuserwpdb数据库下的所有表拥有所有权限,dzuserdzdb数据库下的所有表拥有所有权限;

# systemctl start mariadb

# mysql

mysql>CREATE DATABASE wpdb;

mysql>CREATE DATABASE dzdb;

mysql>GRANT ALL ON wpdb.* TO ‘wpuser’@’192.168.10.%’ IDENTIFIED BY ‘wppasswd’;

mysql>GRANT ALL ON dzdb.* TO ‘dzuser’@’192.168.10.%’ IDENTIFIED BY ‘dzpasswd’;

mysql>FLUSH PRIVILEGES;

8.关闭selinux和清除防火墙规则

# setenforce 0

# iptables -F

9.启动nfs服务

# systemctl start nfs

四、部署lamp

BC主机上操作

1.D主机上导出的目录挂载至/var/www/html目录下

# mount.nfs 192.168.10.5:/data/application/web /var/www/html

2.安装httpdphpphp-mysql

# yum -y install httpd php php-mysql

3.启动http服务

# service httpd start

验证(由于没有路由,因此从Client不能访问。可在服务器网段任意选择一台主机测试)

五、安装wordpress

1.Client主机上打开浏览器输入地址:192.168.10.254/wordpress

数据库名:wpdb

用户名:wpuser

密码:wppasswd

数据库主机:192.168.10.5

六、安装Discuz

1.Client主机上打开浏览器输入地址:192.168.10.254/upload/install/index.php,根据提示安装即可。

2.访问管理中心,在浏览器中输入地址:192.168.10.254/upload/uc_server,选择“管理员”,随后输入管理员帐号和密码即可访问。

原创文章,作者:人字拖,如若转载,请注明出处:http://www.178linux.com/75476

(3)
人字拖人字拖
上一篇 2017-05-13 22:10
下一篇 2017-05-13 22:33

相关推荐

  • linux 基础3

    linux 基础3

    Linux干货 2018-03-25
  • magedu_20160804

    文本处理工具和grep过滤工具以及正则表达式    一.文本处理工具相关命令    前面课程中曾经使用过cat,head,tail命令查看相关文件,head,tail分别查看文件开头、结尾的行信息。对于特定想要显示的信息则需要特定的文本查看指令,比如cut,sort,paste,uniq等。如下内容分别对每个…

    Linux干货 2016-08-08
  • Find命令以及解压与压缩文件的相关指令

    1,find   实时查找,通过遍历指定路径完成文件的查找 查找路径:指定具体目标路径,默认为当前目录 查找条件:指定的查找标准,可以文件名,大小,类型,权限等标准进行,默认为找出指定路径下的所有文件 处理动作:对符合条件的文件做操作,默认输出至屏幕 find -maxdepth level  最大搜索目录深度 -mindept…

    2017-08-12
  • 磁盘分区管理

    进行磁盘分区之前首先要了解什么是磁盘分区:         磁盘分区是在磁盘上划分几个逻辑部分,盘片一旦划分成数个分区,不同类的目录与文件可以存储进不同的分区。越多分区,也就有更多不同的地方,可以将文件的性质区分得更细,按照更为细分的性质,存储在不同的地方以管理文件;但太多分区就…

    2017-08-21
  • btrfs管理和应用

    一、btrfs概念        在btrfs中存在三种类型的数据,data, metadata和system。它们表示:        DATA           数据块。       &nbsp…

    系统运维 2016-04-12
  • Python

    Python中os和shutil模块
    csv文件和ini文件简介

    Linux干货 2017-10-30