LVS负载均衡wrrdpress

项目要求:
(1) lvs 调度两台 nginx+php-fpm real-server,采用 dr 模型,调度算法为 rr
(2) mariadb 为 real-server 提供数据库,nfs 挂载至 2 台 real-server 提供文件
服务
项目环境:
LVS-SERVER( CentOS 7 )
DIP:172.18.99.6
VIP:172.18.99.66
PHP+REAL-SERVER1( CentOS 7 )
RIP:172.18.99.10
VIP:172.18.99.66
PHP+REAL-SERVER2( CentOS 7 )
RIP:172.18.99.11
VIP:172.18.99.66
MariaDB+NFS-SERVER( CentOS 6 )
IP:172.18.99.7
项目步骤:
一、配置 MariaDB+NFS-SERVER
(1)安装所需软件包
[root@node1 ~]# yum install -y nfs-utils rpcbind mysql-server nginx
[root@node1 ~]# mysql ## 创建数据库和授权用户
mysql> create database wpdb;
mysql> grant all on wpdb.* to ‘wpuser’@’172.18.99.%’ identified by ‘wppass’
mysql> exit
[root@node1 ~]# mkdir /data/
[root@node1 ~]# cd /data/
wget ftp://172.18.0.1/pub/Sources/sources/httpd/wordpress-4.3.1-zh_CN.zip
[root@node1 data]# unzip wordpress-4.3.1-zh_CN.zip
[root@node1 data]# chown -R nginx.nginx /data/wordpress
[root@node1 data]# vim /etc/exports
/data/wordpress 172.18.99.101
[root@node1 ~]# service nfs start
[root@node1 ~]# showmount -e 172.18.99.7 ## 查看 nfs 共享目录
二、配置 PHP+REAL-SERVER1
[root@centos7 ~]# yum install -y nginx php-fpm php-mysql nfs-utils
[root@centos7 ~]# mkdir -p /data/wordpress
[root@centos7 ~]# vim /etc/nginx/conf.d/wps.conf
server {
listen 80 default_server;
server_name www.magedu.com;
root /data/wordpress/;
index index.php index.html index.html;
location / {
}
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
/data/wordpress/$fastcgi_script_name;
include fastcgi_params;
}
}
[root@centos7 nginx]# vim nginx.conf

default server ##注释或删除主配置文件里的 default server

[root@centos7 conf.d]# nginx
[root@centos7 conf.d]# systemctl start php-fpm
[root@centos7 conf.d]# mount 172.18.99.7:/data/wordpress /data/wordpress
[root@centos7 conf.d]# scp wps.conf 172.18.99.11:/etc/nginx/conf.d/wps.conf
[root@centos7 ~]# vim dr.sh ## 为 real-server 配置 vip

!/bin/bash

VIP=172.18.99.66
case “$1” in
start)
echo “配置 lvs Real Server 开始…”
ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up ## 配置 VIP
route add -host $VIP dev lo:0 ## 添加主机路由

限制响应和通告级别

echo “1” >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo “1” >/proc/sys/net/ipv4/conf/all/arp_ignore
echo “2” >/proc/sys/net/ipv4/conf/lo/arp_announce
echo “2” >/proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
echo “正在关闭 lvs Real server”
ifconfig lo:0 down
echo “0” >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo “0” >/proc/sys/net/ipv4/conf/all/arp_ignore
echo “0” >/proc/sys/net/ipv4/conf/lo/arp_announce
echo “0” >/proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo “用法:$0 {start|stop}”
exit 1
esac
[root@centos7 ~]# bash dr.sh start
配置 lvs Real Server 开始…
[root@centos7 ~]# scp dr.sh 172.18.99.11:/root/
[root@centos7 ~]# ip a
三、配置 PHP+REAL-SERVER2
[root@centos7 ~]# yum install -y nginx php-fpm php-mysql nfs-utils
[root@centos7 ~]# mkdir -p /data/wordpress
[root@centos7 ~]# mount 172.18.99.7:/data/wordpress /data/wordpress
[root@centos7 ~]# vim /etc/nginx/nginx.conf

default server ##注释或删除主配置文件里的 default server

[root@centos7 ~]# systemctl start php-fpm nginx
[root@centos7 ~]# bash dr.sh start
配置 lvs Real Server 开始…
四、配置 LVS-SERVER
[root@node2 ~]# yum install ipvsadm -y
[root@node2 ~]# ip addr add 172.18.99.66/16 dev eno16777736
[root@node2 ~]# ip a
[root@node2 ~]# ipvsadm -A -t 172.18.99.66:80 -s rr ##新增一个集群服务
[root@node2 ~]# ipvsadm -a -t 172.18.99.66:80 -r 172.18.99.10:80 -g

为集群添加 real-server

[root@node2 ~]# ipvsadm -a -t 172.18.99.66:80 -r 172.18.99.11:80 -g
[root@node2 ~]# ipvsadm -Ln ## 查看集群规则

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

(0)
mujianguomujianguo
上一篇 2017-05-16 19:42
下一篇 2017-05-16 22:51

相关推荐

  • linux基础学习-网络基础

    一、OSI七层模型 二、TCP/IP模型         三次握手原理 三、常见服务的默认端口 四、IP地址、子网划分基础知识     通信原理:一般数据的交互产生是在应用层(TCP/IP模型),应用层以下可以看成是搬运工,不同层的协议定义了不同的搬运工的工作内容,直到最后,把数…

    Linux干货 2016-09-05
  • 权限管理

    linux文件权限:     在linux系统中,每个文件或目录都包含有相应的权限,这些权限决定了哪些用户或组能够对此文件做哪些操作,如读取、删除、写入等操作 文件权限分为三类:r,w,x     应用于文件:      &nbs…

    Linux干货 2016-08-07
  • wk_02 作业

    Linux 文件管理命令 cp命令 功能 Linux 系统中cp命令是用来复制目录/文件的。 概要 单源复制 cp [OPTION]… [-T] SOURCE DEST DEST不存在则事先创建此文件,并复制源文件的数据流至DEST中; DEST存在 DEST是非目录文件:则覆盖目标文件; DEST是目录文件:则先…

    Linux干货 2016-12-11
  • sed 和 vim 的 用法

    处理文本的工具 三剑客之 sed sed是一种流编辑器,它一次处理一行内容。处理时,把 当前处理的行存储在临时缓冲区中,称为“模式空间”( pattern space),接着用sed命令处理缓冲区中的内容 ,处理完成后,把缓冲区的内容送往屏幕。接着处理下一 行,这样不断重复,直到文件末尾。文件内容并没有改变 ,除非你使用重定向存储输出。Sed主要用来自动编辑…

    Linux干货 2016-08-12
  • Apache、nginx 、lighttpd性能比较

    1. web服务器简介 1. lighttpd      Lighttpd是一个德国人领导的开源软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的Web server环境         Lighttpd是一个具有非常低的…

    Linux干货 2015-04-10
  • class-7 积累应用

    1、当天课程内容笔记 2、当天练习 3、预习 4、取本机ip地址 [root@6 ~]#  ip addr|egrep -o '(\b([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\b\.)(\b([1-9]|[1-9][0-9]|1[0-…

    Linux干货 2016-08-08