十七周

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

相关推荐

  • nfs 共享实验

    nfs全称为:network file system    网络文件系统 在Linux里可以理解为将一个文件夹变成共享文件夹,让其他用户都可以访问。而访问的主机其本地磁盘是没有存储文件的 创建方法如下 :     准备两台机器,一台当 client  另一台当server    &nbsp…

    Linux干货 2017-06-07
  • ☞Nginx 代理与缓存

    Nginx 代理与缓存 代理、缓存、集群概述 缓存控制(ngx_http_proxy_module) 配置nginx代理的URI资源类型 增加X-Forwarded-For值 启用proxy缓存URL资源 封装首部(ngx_http_headers_module) 响应报文首部添加代理信息 代理调度模块(ngx_http_upstream_module) R…

    Linux干货 2016-10-30
  • 实战:ansible自动化部署nginx+keepalived+mysql负载均衡集群

    一、目的 使用ansible自动化部署nginx+keepalived+mysql负载均衡集群。 二、拓扑规划 三、详细步骤 1、环境的搭建         (1)安装ansible,同时配置私钥免密码进行通信 [root@localhost ~]# ssh-keygen &nb…

    Linux干货 2016-11-11
  • MongoDB复制集及数据分片详解

    前言 MongoDB是一个由C++语言编写的基于分布式文件存储的数据库,是当前NoSQL数据库中比较热门的一种,旨在为Web应用提供可扩展的高性能数据存储解决方案。本文介绍MongoDB复制集及数据分片。 MongoDB 简介 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。支持的数据结构非常松散,…

    Linux干货 2015-07-15
  • LAMP部署之NFS共享网络存储

    LAMP部署之NFS共享网络存储 架构图: 说明:     当一个网站的访问量上来之后,一台WebServer服务器无法应付那么高的并发,需要横向扩展Web服务器数量,     当我们访问网页,向Web服务器请求资源时,资源主要分为静态资源和动态资源(程序处理),  &…

    Linux干货 2016-06-20
  • 马哥教育网络21期+第十二周练习博客下

    6、在LAMP架构中,请分别以php编译成httpd模块形式和php以fpm工作为独立守护进程的方式来支持httpd,列出详细的过程。 # LAMP编译安装 # LAMP编译安装,目前CentOS7操作系统上可以使用yum进行安装,在CentOS6上需要编译安装 CentOS6 http-2.2主要安装的,编译安装LAMP需要h…

    Linux干货 2016-10-17