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.www58058.com/75966

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

相關推薦

  • N25期第七周作業

    創建一個10G分區,并格式為ext4文件系統   要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳 fdisk /dev/sdb # size 10G type 83 mke2fs -t ext4 -b 20…

    Linux干貨 2017-02-28
  • 磁盤文件系統基礎(一)

    磁盤的主要硬件單元有:     1、磁頭:通過電磁感應的方式對磁盤數據進行讀寫。     2、磁道:在磁盤自傳過程中磁頭劃過的圓形軌跡,這些軌跡是肉眼看不見的特色磁化區域。     3、扇區:磁盤上的每個磁道被等分為若干個圓弧,這些圓弧被稱…

    Linux干貨 2016-10-27
  • 軟鏈接和硬鏈接及兩者之間的不同

    在 Linux 上被分成兩個部分:用戶數據 (user data) 與元數據 (metadata)。用戶數據,即文件數據塊 (data block),數據塊是記錄文件真實內容的地方;而元數據則是文件的附加屬性,如文件大小、創建時間、所有者等信息。在 Linux 中,元數據中的 inode 號(inode 是文件元數據的一部分但其并不包含文件名,inode 號…

    Linux干貨 2016-12-05
  • awk用法三

      6、結構化控制語句     6.1 if語句       格式:if(條件) {body} else {else body}         實例1:判斷/etc/passwd文件中的UID如果大于500則顯示為“common user”,否則顯…

    Linux干貨 2016-02-14
  • 建立dns服務

    一 、環境 兩臺機器,一臺LINUX,機器名為LINUX,域名為tongqiang.cnIP地址為192.168.0.5,另一臺機器為WIN98,機器名為tongqiang,IP地址從LINUX上DHCP服務器上獲得。 二 、建立DNS服務器(假設你的DNS軟件包已經安裝好了,而且是在安裝LINUX是選擇安裝DNS服務器的) 建立DNS服務器只需要修改以下幾…

    2017-10-09
  • shell編寫的linux命令練習工具

    linux常用命令加選項,有成百上個,僅僅靠背誦忘記得太快,所以寫了此腳本,便于對linux命令的練習,希望能幫助到大家。 運行腳本效果如下: 上邊兩圖一個是運行腳本時的截圖,另一個為題庫的格式(@做分隔符,所以如果題目中有@一定要替換掉) 下面附上源碼 #!/bin/bash#版本號:1.0 #作者:Mr.L #WX:504498722FILE=/root…

    2017-03-19
欧美性久久久久