十七周

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

相关推荐

  • 软raid实现raid5

    现在Linux系统有磁盘情况如下 现在从sda,sdb,sdc,sdd 分区取出10G 的空间做raid5. 第一步:建立分区 现在执行fdisk  /dev/sd* 命令分区冲这四个磁盘划分10G分区 分别是sda6,sdb1,sdc1,sdd1。 具体操作如下: 分区完之后,执行#partx -a /dev/sd*  让分区生效。具体效果如下: 分区完成…

    2017-12-06
  • PXE自动化安装系统

    PXE自动化安装的流程: 开机自检 > 加载ROM中的bios代码 > 检查设备启动顺序,由于PXE自动安装是基于网卡作引导的,所以,会选择网卡 > 网卡中会有PXE的模块,从dhcp服务器获取ip地址 掩码 网关 dns 重要的是tftp服务器的地址 从tftp服务器需要获取的bootloder的文件名的信息 > 从tftp中加载p…

    Linux干货 2015-08-11
  • 用一条命令’pwd’判断并证明系统命令的执行顺序。

    一、命令分类        在Linux系统中命令分为两类:            1.内部命令:shell buildin 每次启动系统都会重新加载入内存。        2.外部命令:即某目录下的…

    Linux干货 2017-09-03
  • bash数据类型探秘

    数组 变量:存储单个元素的内存空间数组:存储多个元素的连续的内存空间,相当于多个变量的在调用变量时最好加双引号,对于字符串中含有空格等字符的能更好的调用集合。数组名和索引索引:编号从0开始,属于数值索引( 偏移量从默认0开始 )注意:索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引, bash4.0版本之后开始支持。bash的数组支持稀疏格式(索引…

    Linux干货 2016-08-24
  • rpm程序包管理器

    linux程序包管理器: 协作用户管理应用程序:安装、升级、查询、校验、卸载等 软件程序包生成过程:     源代码——》目标二进制格式–》组织成为一个或有限几个包文件     源代码:程序员写好的纯文本文档格式的代码     …

    Linux干货 2016-08-19
  • 【社招】【小米-北京】linux内核工程师

    【社招】【小米-北京】内核工程师 【工作地点】北京市海淀区安宁庄东路72号科利源大厦 【薪酬福利】20k-40k 期权奖励、六险一金、水果花茶、班车、健身房、食堂 【投递方式】邮件主题“岗位+姓名”发送至lipengcheng3@xiaomi.com   岗位职责: 1.      负责内…

    Linux干货 2017-07-28