基于nginx实现负载均衡

该文介绍了如何搭建NFS服务并配置Apache、MariaDB,然后通过Nginx进行负载均衡,最后利用Keepalived实现高可用。步骤包括安装和配置相关软件,设置共享目录,授权数据库,配置Nginx的上游服务器,安装并配置Keepalived以创建虚拟IP。
摘要由CSDN通过智能技术生成

基于nginx实现负载均衡

  1. 搭建NFS服务。

安装软件:yum install -y nfs-utils*

  yum install -y httpd*

启动软件:先启动守护进程systemctl start rpcbind,再启动运行进程systemctl start nfs

创建共享目录:mkdir /luntan

修改配置文件:vi /etc/exports   --->文件内容例:/luntan  *(rw,no_root_squash)

上传前端页面(wget下载):wgethttp://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_UTF8.zip

关闭防火墙:systemctl stop firewalld

关闭selinux:setenforce 0

重启服务:systemctl restart nfs

  1. 搭建Apache服务(两台apache配置一样)

安装软件:Apache:两台主机安装apache+php+php-mysql

yum install -y httpd*

yum install -y php

yum install -y php-mysql

yum install -y nfs*

挂载NFS共享目录到/var/www/html:mount -t nfs 服务器IP:/luntan /var/www/html/

启动服务,关闭防火墙和selinux

  1. 搭建数据库服务。

Mariadb: 主机安装服务:yum install -y mariadb*

启动服务:systemctl start mariadb

配置密码:mysql_secure_installation  本机登录验证:mysql -uroot -p

登录授权:grant all privileges on *.* to ‘root’@’%’ identified by ‘123456’;

关闭防火墙和selinux

  1. 在浏览器上输入http://主机IP/install/index.php
  2. 添加负载均衡服务(两台nginx:一主一辅)

NGINX:配置网络源安装:vi nginx.repo

文件内容:

[nginx-stable]

name=nginx stable repo

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

gpgcheck=0

enabled=1

gpgkey=https://nginx.org/keys/nginx_signing.key

安装:yum install -y nginx*

修改配置文件①:vi /etc/nginx/nginx.conf  

内容:

http {

...

    upstream backend {

        server 192.168.100.102:80;     apache1主机IP

        server 192.168.100.103:80;     apache2主机IP

    }

}

修改配置文件②:vi /etc/nginx/conf.d/default.conf

文件内容:

server {

...

location / {

        proxy_pass http://backend;

        proxy_redirect default;

        #设置代理

        proxy_set_header Host $host;       

        proxy_set_header X-Real-IP $remote_addr;

    }

}

重启服务

使用浏览器访问 http://nginx主机IP,确认是否自动跳转到apache主机上

关闭apache1,刷新浏览器页面,看是否切换到apache2主机主页

  1. 在两个NGINX主机上安装keepalived

#yum install -y keepalived

修改配置/etc/keepalived/keepalived.conf

清空内容后,添加以下内容

global_defs {  

   router_id 1

}

vrrp_instance VI_1 {   

    state MASTER

    interface ens33

    virtual_router_id 1

    priority 100

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 123456

    }

    virtual_ipaddress {    

        192.168.100.200      --->(虚拟IP)

    }

}

辅调度器上要稍作修改:

将  router_id 1  改为  router_id 2   --->(可随便写,不能和主调度器相同)

将  state MASTER  改为  state BACKUP   --->(state是默认,master是主的意思,backup是辅)

将  priority 100  改为  priority 99    --->(小于主调度器)

其他一致即可

  1. reboot 重启主ngnix调度器
  2. 浏览器访问虚拟IP。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值