十七周

1、搭建一套LVS-DR模型的高性能集群,并实现以下功能:

   (1)wordpress程序通过nfs共享给各个realserver

   (2)、后端realserver中的nginxphp分离

Centos7系统

地址

安装程序

LVS主机

VIP:192.168.1.110

ipvsadm

DIP:192.168.1.106

Nginx 1

192.168.1.112

nginx,nfs-utils

Nginx 2

192.168.1.116

nginx,nfs-utils

PHP/NFS

192.168.1.114

php-fpm,php-mysql,nfs-utils

Mysql

192.168.1.117

mariadb-server

1.在两台nginx主机上安装nginx,nfs-utils,没有nginx用户、用户组时,需自行创建

yum仓库

 [my]

name=myrepo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

enabled=1

gpgcheck=0

[root@localhost ~]# yum install -y nginx

[root@localhost ~]# vim /etc/nginx/conf.d/default.conf

location / {

        root   /data/www;

        index  index.php index.html index.htm;

    }

location ~ \.php$ {

    root       /data/www;

     fastcgi_pass   192.168.1.114:9000;

     fastcgi_index  index.php;

     fastcgi_param 
SCRIPT_FILENAME 
$document_root$fastcgi_script_name;

     include        fastcgi_params;

}

创建挂载目录,修改权限

[root@localhost ~]# mkdir /data/www/ -p

[root@localhost ~]# chowm -R nginx.nginx /data/www

2.php/nfs主机

  安装PHPnfs服务

[root@ www]# yum install -y php-fpm php-mysql
nfs-utils

配置NFS服务

[root@localhost /]# mkdir -p /data/www

listen = 192.168.1.114:9000

[root@localhost /]# chowm -R nginx.nginx /data/www

[root@localhost /]# vim /etc/exports

 /data/www 192.168.1.0/24(rw,no_root_squash)


[root@localhost
/]# systemctl start nfs.service

配置php-fpm服务

[root@localhost /]# vim /etc/php-fpm.d/www.conf

listen = 192.168.1.114:9000

#listen.allowed_clients = 127.0.0.1

user = nginx

group = nginx

[root@localhost /]# systemctl start php-fpm.service

3.在两台nginx主机上挂载nfs,建立存放目录

[root@ ~]# mount -t nfs 192.168.1.114:/data/www
/data/www

4.php/nfs服务器的/data/www目录下,创建php测试

[root@localhost /]# vim /data/www/index.php

<?php

  phpinfo();

?>

5.mysql主机安装mariadb-server

[root@localhost /]# yum install -y mariadb-server

[root@localhost /]# mkdir /mydata

[root@localhost /]# chown mysql.mysql /mydata

[root@localhost /]# vim /etc/my.cnf

datadir=/mydata

innodb_file_per_table=ON

skip_name_resolve=ON

[root@l /]# mysql_install_db –user=mysql
–datadir=/mydata

[root@/]# systemctl start mariadb.service

6.测试mariadbphp联动

 mariadb主机上进行授权

MariaDB [(none)]> grant all on *.* to
‘root’@’192.168.1.%’ identified by ‘mageedu’;

php/nfs主机上创建测试页

[root@localhost /]# vim /data/www/index.php

<?php

 $conn=mysql_connect (“192.168.1.117”,’root’,’mageedu’);

   if ($conn)

     echo
“OK !!!”;

  else

     echo
“FAILURE”;

?>

7.Mysql数据库建立WordPress数据库和用户

MariaDB [(none)]> create database wpdb;

MariaDB [(none)]> grant all on *.* to
‘root’@’192.168.1.%’ identified by ‘mageedu’;

MariaDB [(none)]> flush privileges;

8.php/nfs主机上部署wordpress

[root@localhost /]# cd /data/www

[root@localhost www]# unzip wordpress-4.7.4-zh_CN.zip

[root@localhost www]# cd wordpress/

[root@wordpress]# cp wp-config-sample.php
wp-config.php

 mysql主机创建数据

MariaDB [(none)]> create database wpdb;

MariaDB [(none)]> grant all on wpdb.* to
‘wpuser’@’192.168.1.%’ identified by ‘mageedu’;

php/nfs主机修改wordpress配置文件(内容要与mysql数据库中一致)

[root@localhost wordpress]# vim wp-config.php

/** WordPress数据库的名称 */

define(‘DB_NAME’, ‘wpdb’);

/** MySQL数据库用户名 */

define(‘DB_USER’, ‘wpuser’);

/** MySQL数据库密码 */

define(‘DB_PASSWORD’, ‘mageedu’);

/** MySQL主机 */

define(‘DB_HOST’, ‘192.168.1.114’);

十七周

9.LVS主机安装lvs

[root@CentOS7 /]# yum insatll ipvsadm -y

  lvs的物理网卡配置VIP

[root@CentOS7
/]# ifconfig eno16777736:0 netmask 255.255.255.255 broadcast 192.168.1.110

[root@CentOS7
/]# route add -host 192.168.1.110 dev eno16777736:0

10.在两台nginx主机对IP进行配置,添加路由,修改内核参数,

[root@CentOS7
/]#ifconfig lo:0 192.168.1.110 netmask 255.255.255.255 broadcast 192.168.1.110

[root@CentOS7]#route add -host 192.168.1.110 dev lo:0

[root@CentOS7]#echo 1
>/proc/sys/net/ipv4/conf/all/arp_ignore

[root@CentOS7]#echo 1
>/proc/sys/net/ipv4/conf/lo/arp_ignore

[root@CentOS7]#echo 2
>/proc/sys/net/ipv4/conf/lo/arp_announce

[root@CentOS7]#echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce

LVS主机设置规则

[root@CentOS7 ]#ipvsadm -A -t 192.168.1.110:80 -s rr

[root@CentOS7/]#ipvsadm -a -t 192.168.1.110:80 -r 192.168.1.112 -g -w 1

[root@CentOS7]#ipvsadm -a -t 192.168.1.110:80 -r 192.168.1.116 -g -w 1

[root@CentOS7]# ipvsadm -Ln

[root@CentOS7]#systemctl status ipvsadm

11.浏览器测试(192.168.1.110/wordpress

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

(1)
ning407631632ning407631632
上一篇 2017-08-16 19:01
下一篇 2017-08-17 16:13

相关推荐

  • 初识Linux

    本文对计算机组成及其功能、Linux的发行版、以及Linux的哲学思想进行了简单的介绍;同时对Linux系统中常用的基础命令以及如何获取帮助信息进行了详细的说明。

    2018-01-14
  • NoSQL—mongodb常见使用和入门

    NoSQL介绍: NoSQL数据管理系统是目前非常流行的一种非关系性、分布式、不支持ACID设计规范式的数据库;NoSQL简单的数据模型、元数据和数据分离、弱一致性、高吞吐量、高水平扩展能力和低端硬件集群使其流行的主要原因,而mongodb就是NoSQL数据库一种非常流行的实现方式。   常见的NoSQL数据存储模型 列式模型 文档类型 应用场景:…

    2015-09-01
  • corosync + pacemaker搭建高可用http

    一、实验图:    二、实验环境准备:  1)时间同步(172.16.2.15是时间服务器) [root@web1 ~]# crontab  -e   */5 * * * * /usr/sbin/ntpdate&nbsp…

    Linux干货 2015-06-30
  • 第八周作业

    1. 写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;     在线的主机使用绿色显示;     不在线的主机使用红色显示; #!/bin/bash # for i in {1..254};do         pi…

    Linux干货 2017-02-24
  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。                 使用到命令chmod &nbsp…

    Linux干货 2017-02-02
  • corosync + pacemaker搭建高可用mysql

    一、实验图     二、环境准备  1)确保时间同步 [root@SQL1 ~]# crontab -e  */5 * * * * /usr/sbin/ntpdate 172.16.2.15 [root@SQL2 ~]#…

    Linux干货 2015-06-30