ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
>[info] 负载均衡nginxSLB开通管理流程 **负载均衡NginxSLB构架:**         前端一台调度器,后端三台或以上web服务器,一台文件服务器(文件服务器上存放web和数据库)。<span style='color:red;'>注意:所有服务器要开在同一个机房,同一个集群。</span> ***** **推荐服务器配置:**        一、前端调度器(一台):4核cpu、4G内存、20M带宽、硬盘50G。(负载均衡所有使用带宽都在调度器上,所以调度器需要足够的带宽,其他服务器保证最少1M带宽即可,后期根据使用情况可随时增加)        二、web服务器(三台或者以上):4核cpu、4G内存、1M带宽(使用内网IP作为数据交换,所以需要1M带宽即可)、硬盘100G         三、文件服务器(一台):4核cpu、4G内存、1M带宽(使用内网IP作为数据交换,所以需要1M带宽即可)、硬盘100G(SSD,根据数据决定硬盘大小) ***** **负载均衡NginxSLB运行原理:**         前端使用nginx做负载均衡,域名解析到调度器IP,用户输入域名访问首先到调度器》然后由调度器分配到后端web服务器上处理》web服务器调用文件服务器上web文件和         数据库内容》处理完之后再通过调度器反馈数据给用户。所以所有的带宽都在调度器上面,调度器到web服务器,web服务器到文件服务器都使用内网通信。 ***** **1. 开通调度器** 1. 调度器服务器选择安装系统为 **“负载均衡NginxSLB”** ![](https://img.kancloud.cn/3a/46/3a4663c156e1e7d8def5595634f53f43_1019x447.png) 2. <span style='color:red;'>注意:服务器开通以后需要将他们加入到虚拟交换机,并设置好内网</span>,[虚拟交换机VPC配置说明(弹性云内网通信)](https://www.west.cn/faq/list.asp?unid=2347) 登录管理中心 -> 业务管理 -> 服务器管理 -> 虚拟交换机 -> 添加交换机 ![](https://img.kancloud.cn/b2/e3/b2e3b3362b081d6b595f868b36afcb1d_1737x801.png) **2. 调度器设置** 登录管理中心 -> 业务管理 -> 服务器管理 -> 点击调度服务器 -> 点击**管理** 进入管理页面 ![](https://img.kancloud.cn/8b/fd/8bfd6a85f1e58987b834ee21d3a97839_1768x374.png) **3. 配置添加负载均衡站点** 3.1 添加 “负载均衡组” ![](https://img.kancloud.cn/0c/10/0c10f531c989eb1291eb201bf3e3d8d8_1279x439.png) 3.2 为 **"负载均衡组"** 中添加 web 节点IP ,<span style='color:red;'>文件服务器IP 不需要加入负载均衡,这里只加web服务器</span> ![](https://img.kancloud.cn/f4/e3/f4e32297dc379dd83661d0f3c179b74b_1224x319.png) ![](https://img.kancloud.cn/e2/fe/e2fef20a20377f23d230763bad6f1708_1128x560.png) 3.3 在 **“负载均衡组”** 中 添加 站点 ![](https://img.kancloud.cn/e1/e2/e1e2d9002328b2771443e1ceedddd037_1308x344.png) 3.4 域名请自己先解析,添加即可 ![](https://img.kancloud.cn/7c/6f/7c6fa912db369ebb89dfa43ebfae45b8_1128x428.png) ![](https://img.kancloud.cn/ee/21/ee21750bc52e0a11ab4b508c51e7945a_1129x362.png) **4. 到此负载均衡配置完成,"同步服务器"** ![](https://img.kancloud.cn/be/c6/bec6ad4d87bc25f3254955bb73bbf5a7_1235x355.png) **5. 设置文件共享(文件服务器)** <span style='color:red;'>注意:关闭文件服务器防火墙(systemctl stop firewalld systemctl stop iptables),web 服务器创建 mkdir -p /home/wddata/vhost </span> **1. NFS服务器端:** 1.1 安装 ``` yum -y install nfs-utils rpcbind  chkconfig nfs on  chkconfig rpcbind on ``` 1.2 安装 centos7使用下面命令设置服务开机自动启动 ``` systemctl enable rpcbind systemctl enable nfs-server systemctl enable /usr/lib/systemd/system/rpc-statd.service systemctl enable /usr/lib/systemd/system/nfs-idmapd.service ``` 1.3 配置 ``` vim /etc/exports # 注意:文件内容请根据实际情况写入,主要是ip地址要填写web服务器的内网ip /home/wwwroot 192.168.82.235(rw,async,root_squash) 192.268.82.6(rw,async,root_squash) 192.168.83.146(rw,async,root_squash) /home/wddata/vhost 192.168.82.235(rw,async,root_squash) 192.268.82.6(rw,async,root_squash) 192.168.83.146(rw,async,root_squash) ``` 1.4 启动NFS服务程序 ``` service rpcbind  start service nfs start # 注意:centos7使用下面命令启动服务 systemctl restart rpcbind systemctl start nfs-server systemctl start nfs-lock systemctl start nfs-idmap ``` **2. **NFS****客户端****(****即****web****服务器****):**** 1. 安装 ``` yum -y install nfs-utils rpcbind # centos7中请使用systemctl 操作服务 systemctl restart rpcbind systemctl start nfs-idmap systemctl enable rpcbind systemctl enable /usr/lib/systemd/system/nfs-idmapd.service ``` 1.2 自动挂载 ``` vim /etc/fstab # 注意:这里填入 文件服务器内网ip # nfsvers=3,这里用v3版本,v4存在一个seq id序列号瓶颈问题,会导致load升高,但cpu不高的情况出现 192.168.155.247:/home/wwwroot /home/wwwroot nfs defaults,_netdev,nodiratime,noatime,nfsvers=3 0 0 192.168.155.247:/home/wddata/vhost /home/wddata/vhost nfs defaults,_netdev,nodiratime,noatime,nfsvers=3 0 0 # 保存以后执行下面命令 mount -a # 查看是否挂载成功 df -h ``` ***** **6. 在(文件服务器)建站** **1. 建站** <span style='color:red;'>说明:域名解析 到 调度服务器上</span> 1.1 在web1 web2 ... 建站,站点目录为挂载的 /home/wwwroot 目录 ![](https://img.kancloud.cn/03/63/0363e3d10e9c7320d4baa69eba07c6f2_979x370.png) ***** **其他:** **1. 调度器配置** Nginx 配置文件地址:/opt/nginx/conf/ ``` # 根据 ip 自动分发(删除 ip_hash; 重启Nginx 即可实现轮询) upstream Nginx_SLB_1 { ip_hash; server 192.168.82.235:80 weight=5 max_fails=3 fail_timeout=5000; server 192.168.82.6:80 weight=5 max_fails=3 fail_timeout=5000; server 192.168.83.146:80 weight=5 max_fails=3 fail_timeout=5000; } ``` **2. 文件服务器测试文件:x.php** ``` <?php echo '服务器地址 : '; echo $_SERVER['SERVER_ADDR']; echo '</br>远程地址 : '; echo $_SERVER['REMOTE_ADDR']; echo '</br>服务器域名 : '; echo $_SERVER['HTTP_HOST']; ?> ```