負載均衡一個PHP應用

負載均衡一個PHP應用

1、mariadb、nfs服務器的設置 (centos 7)

[root@localhost ~]# rpm -q rpcbind
rpcbind-0.2.0-32.el7.x86_64
[root@localhost ~]# rpm -q nfs-utils (默認nfs已經安裝的)
nfs-utils-1.3.0-0.21.el7.x86_64

[root@localhost ~]# yum -y install mariadb-server 
[root@localhost ~]# systemctl start mariadb
[root@localhost ~]# mysql  (創建一個數據庫給web服務器使用)
    MariaDB [(none)]> CREATE DATABASE wordpress;
    MariaDB [(none)]> GRANT ALL ON wordpress.* TO 'wordpress'@'192.168.116.%' IDENTIFIED BY '123456';
    MariaDB [(none)]> FLUSH PRIVILEGES;

[root@localhost ~]# systemctl start nfs 
[root@localhost ~]# mkdir /wordpress  
[root@localhost ~]# vim /etc/exports  (創建共享目錄)
    /wordpress      192.168.116.0/24(rw,no_root_squash)

[root@localhost ~]# tar xf wordpress-4.5.3-zh_CN.tar.gz 
[root@localhost ~]# cd wordpress/
[root@localhost wordpress]# mv ./* /wordpress/
[root@localhost wordpress]# cp wp-config-sample.php wp-config.php (此目錄為/wordpress)
[root@localhost wordpress]# vim wp-config.php 修改如下配置
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', '123456');
define('DB_HOST', '192.168.116.114');
define('DB_CHARSET', 'utf8');
[root@localhost ~]# chown -R apache:apache /wordpress

2、web1的配置(centos6)

(1)網卡配置

1)修改內核參數來限制arp響應和通告

先限制通告再設置ip
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce

2)網卡配置

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1 
網卡名和MAC地址每臺虛擬機都不同的,可使用 ip a 命令查看再設置
DEVICE=eth1
HWADDR=00:0c:29:9f:12:63 
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.116.6
NETMASK=255.255.255.0

先重啟網絡服務再配置下面lo0網絡
[root@localhost ~]# ifconfig lo:0 192.168.116.254 netmask 255.255.255.255 broadcast 192.168.116.254 up
[root@localhost ~]# route add -host 192.168.116.254 dev lo:0

3)掛載nfs共享目錄

[root@localhost ~]# mkdir /web
[root@localhost ~]# mount -t nfs 192.168.116.114:/wrodpress /web

4)安裝httpd php php-mysql

[root@localhost ~]# yum -y install httpd php php-mysql
[root@localhost ~]# vim /etc/httpd/conf.d/web.conf
    NameVirtualHost *:80
    <Virtualhost *:80>
            ServerName www.wordpress.com
            DocumentRoot "/web"
    </Virtualhost>
[root@localhost ~]# service httpd start

3、web2的配置(centos7)

1)修改內核參數來限制arp響應和通告

先限制通告再設置ip
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
[root@localhost ~]# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
[root@localhost ~]# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce

2)網卡配置

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eno33554984 

DEVICE=eno33554984
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.116.7
NETMASK=255.255.255.0
HWADDR=00:0c:29:e8:7c:c6

先重啟網絡服務再配置下面lo0網絡
[root@localhost ~]# ifconfig lo:0 192.168.116.254 netmask 255.255.255.255 broadcast 192.168.116.254 up  (臨時設置網卡,重啟網絡服務時效)
[root@localhost ~]# route add -host 192.168.116.254 dev lo:0

3)掛載nfs共享目錄

[root@localhost ~]# mkdir /web
[root@localhost ~]# mount -t nfs 192.168.116.114:/wrodpress /web

4)安裝httpd php php-mysql

[root@localhost ~]# yum -y install httpd php php-mysql
[root@localhost ~]# vim /etc/httpd/conf.d/web.conf 

    <Virtualhost *:80>
            DocumentRoot "/web"
            ServerName www.wrodpress.com
            <Directory "/web">
                    AllowOverride none
                    Options none
                    Require all granted
            </Directory>
    </Virtualhost>
[root@localhost ~]# systemctl start httpd

4、director的設置

1)網卡配置

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 
DEVICE=eno16777736
HWADDR= 00:0c:29:0e:27:cd
IPADDR=192.168.116.1
NETMASK=255.255.255.0
BOOTPROTO=none
ONBOOT=yes

先重啟網絡服務再配置下面lo0網絡
[root@localhost ~]# ifconfig eno16777736:0 192.168.116.254 netmask 255.255.255.255 broadcast 192.168.116.254 up

2)ipvs的配置

[root@localhost ~]# yum -y install ipvsadm
[root@localhost ~]# ipvsadm -A -t 192.168.116.254:80 -s rr
[root@localhost ~]# ipvsadm -a -t 192.168.116.254:80 -r 192.168.116.6 -g -w 1
[root@localhost ~]# ipvsadm -a -t 192.168.116.254:80 -r 192.168.116.7 -g -w 1

5、客戶端測試

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
DEVICE=eno16777736
HWADDR= 00:0c:29:0e:27:cu
IPADDR=192.168.116.110
NETMASK=255.255.255.0
BOOTPROTO=none
ONBOOT=yes

[root@localhost ~]# vim /etc/hosts
    192.168.116.254   www.wordpress.com

在瀏覽器中輸入www.wordpress.com,按提示安裝WordPress并登陸。

負載均衡一個PHP應用

新建一個網頁,并上傳一個圖片,發布后多次刷新,如果顯示頁面都一樣,則實驗完成

負載均衡一個PHP應用

原創文章,作者:pao,如若轉載,請注明出處:http://www.www58058.com/56455

(0)
paopao
上一篇 2016-10-31
下一篇 2016-10-31

相關推薦

  • vim編輯器

    一、vim編輯器簡介     文本:ASCII,Unicode     文本編輯種類:     行編輯器:sed     全屏編輯器:nano,vi     v…

    Linux干貨 2016-08-10
  • 用戶和組相關的配置文件總結

    包括:/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow,/etc/login.defs,/etc/dufaults/useradd,/etc/skel/.*,/etc/gdm/custom.conf,   /etc/passwd 用戶信息庫文件;用于保存用戶賬號信息; 各字段含義依次為: 用戶名:用戶密…

    Linux干貨 2016-10-25
  • 筆記四、Linux基礎入門-上半部

    前言 直接已經教大家如何創建虛擬機和安裝CentOS 操作系統了,那么今天就來開始入門吧。linux對于新手來說并不難,linux的構造 http://www.www58058.com/68853 這篇博客里我已經講解了,有興趣最好看一下llinux下每個目錄的作用。還有Linux的哲學思想。 這里我就開始介紹了。 一、用戶登陸   &n…

    2017-02-23
  • 第十八周作業

    1.LNMP架構添加Memcached支持,并驗證其緩存結果 Memcache是一個高性能的分布式的內存對象緩存系統,通過在內存里維護一個統一的巨大的hash表,它能夠用來存儲各種格式的數據,包括圖像、視頻、文件以及數據庫檢索的結果等。簡單的說就是將數據調用到內存中,然后從內存中讀取,從而大大提高讀取速度。 Memcached是以守護程序(監聽)方式運行于一…

    2017-07-07
  • 網絡這塊一些有趣的感想

    還記的那天老師讓我們做兩臺主機的nexthop就是自己的ip地址,然后互相ping測試能否互相聯通的實驗,昨晚之后我就在想能不能進行一些改進,因為在我看來這種級別的互相ping的前面一個網絡段相同太沒意思了。 接著我就嘗試了幾種IP地址 主機A 主機B 192.0.0.1 192.1.0.1 192.1.1.1 192.2.2.2 192.2.1.1 192…

    Linux干貨 2016-09-13
欧美性久久久久