Haproxy+LNMP+NFS+Memcache上线电商

准备工作
准备四台虚拟机:一台Haproxy服务器(192.168.18.129)
               两台web服务器  (192.168.18.130   192.168.18.136)
               一台memcache和NFS服务器   (192.168.18.137)
关闭防火墙和SELinux
service iptables stop
setenforce 0


LNMP服务器上的操作:
1.安装Haproxy
   yum -y install haproxy
2.编辑Haproxy的配置文件
   vim /etc/haproxy/haproxy.cfg
    #---------------------------------------------------------------------
 frontend  ds *:80

     default_backend             webs

 #---------------------------------------------------------------------
 # static backend for serving up images, stylesheets and such
 #---------------------------------------------------------------------
 backend webs
     balance     roundrobin
     server      web1 192.168.18.130:80 check
     server      web2 192.168.18.136:80 check

 #---------------------------------------------------------------------
3.重启Haproxy
   service haproxy restart


两台web服务器上的操作
1.安装nginx
  tar -zxf nginx-1.16.1.tar.gz  //解压nginx的安装包
  cd nginx-1.16.1
  yum -y install gcc gcc-c++ zlib-devel pcre-devel  //下载依赖
  ./configure && make && make install  //检查环境 && 编译  && 编译安装
2.启动nginx
     /usr/local/nginx/sbin/nginx
3.
  yum -y install php php-mysql php-gd php-fpm
4.编辑nginx的配置文件
   vim /usr/local/nginx/conf/nginx.conf
   ######################################################################
   location / {
            root   html;
            index index.php index.html index.htm;
        }
   ..........
   location ~ \.php$ {
           root           /usr/local/nginx/html;
           fastcgi_pass   127.0.0.1:9000;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
           include        fastcgi_params;
       }
    #####################################################################
5.重载nginx的配置文件
    /usr/local/nginx/sbin/nginx -s reload
6.在nginx根目录下编辑测试页面
    cd /usr/local/nginx/html
    vim info.php
    #################
    <h1>web1</h1>
 <?php
 phpinfo();
 ?>
 ################
7.开启php-fpm
    service php-fpm start
    chkconfig php-fpm on   //讲php-fpm设置为开机自启
8.查找memcache的依赖并安装
   yum search memcached
   yum -y install
9.重启php-fpm
   service php-fpm restart
10.编辑php-fpm的配置文件
     vim /etc/php-fpm.d/www.conf
     ######################################################
     php_value[session.save_handler] = memcache
  php_value[session.save_path] = tcp://192.168.18.137:11211
  ######################################################
11.再次重启php-fpm
   service php-fpm restart

12.安装
   yum -y install rpcbind
   yum -y install nfs-utils
13.启动
   service rpcbind start //一定要先开启这个
   service nfs start
14.查看nfs服务器共享目录列表
   showmount -e 192.168.18.137
15.
  暂时的挂载目录重启后就会丢失
    mount -t nfs 192.168.18.137:/opt/html /usr/local/nginx/html/
  永久挂载目录
  vim /etc/fstab
  ########################################################
  192.168.18.137:/opt/html  /usr/local/nginx/html  nfs     defaults    0 0  
     要挂载的设备                         挂载点      类型

16.可以重启虚拟机  reboot  使用mount命令查看是否挂载成功

17.上传电商包至/usr/local/nginx/html
unzip tinyshopV2.5_data.zip  //解压
chmod -R 777 html/   //给与权限

memcache上的操作
1.安装memcache
   yum -y install memcached

2.安装
   yum -y install rpcbind
   yum -y install nfs-utils
3.启动
   service rpcbind start //一定要先开启这个
   service nfs start
4.创建共享文件夹
   mkdir /opt/html
   vim /etc/exports
   ###############################
   /opt/html   192.168.18.0/24(rw,no_root_squash)
   ###############################
5.exportfs -rv
6.cd /opt/html
    vim info.php
    #############################
    <h1>NFS</h1>
    <?php
    phpinfo();
    ?>
    #############################
  测试Haproxy的服务器的IP地址/info.php
7.关于数据库的操作
   yum -y install mysql mysql-server  //安装数据库
   service mysqld start    //开启数据库
   mysql   //进入数据库

   create database ds charset utf8;   //创建数据库
   grant all on ds.* to 'tom'@'%' identified by '123';  //授权用户和账号
   flush privileges;    //刷新权限
8.优化数据库
  vim /etc/my.cfg
    skip_name_resolve

  service mysqld restart  //重启数据库

 

 

  Amoeba的读写分离
  web1服务器添加了mysql-master
  web2服务器添加了mysql-slave

 

Haproxy服务器上的操作
  1.停止haproxy
    service haproxy stop


(相当于做一个mysql主从复制)
web1-mysql-master服务器上的操作
   1. 安装myslq
    yum -y install mysql mysql-server
    service mysqld start
   2.回复之前备份的数据库
    mysql -uroot < /usr/local/nginx/html/all.sql
   3.vim /etc/my.cnf
      server-id=1
   log-bin=mysql-bin

web2-mysql-slave服务器上的操作
   1. 安装myslq
    yum -y install mysql mysql-server
    service mysqld start
   2.回复之前备份的数据库
    mysql -uroot < /usr/local/nginx/html/all.sql
   3.vim /etc/my.cnf
      server-id=2
   relay-bin=mysql-relay


在memcache服务器上的操作
  1.备份
     mysqldump -uroot -A > /opt/html/all.sql

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值