当前位置: 首页 > article >正文

haproxy+nginx网站架构,实现负载均衡实验笔记

 前提准备:

  1. 两台nginx,一台haproxy
  2. nginx1:192.168.180.120
  3. nginx2:192.168.180.130,NFS
  4. haproxy:192.168.180.110

nginx(两台nginx的操作是一样的)

1. 安装nginx

#先安装这个
yum install -y epel-release
yum install -y nginx

2. 分别编写网页

echo "server1 192.168.180.120" >/usr/share/nginx/html/index.html
echo "server2 192.168.180.130" >/usr/share/nginx/html/index.html

3. 开启nginx

systemctl start nginx

4. 关闭防火墙

systemctl stop firewalld
setenforce 0

haproxy:

1. 安装haproxy(通过源码包安装)

yum install -y gcc gcc-c++ make lrzsz
tar zxf haproxy-2.9.9.tar.gz
cd haproxy-2.9.9
make TARGET=linux-glibc && make install

2. 移动主配置文件

mkdir /etc/haproxy
cp addons/ot/test/sa/haproxy.cfg /etc/haproxy/

3. 修改主配置文件

vim /etc/haproxy/haproxy.cfg
#将端口改为8080

#注释

#添加内容
frontend http_front
        bind *:80
                 default_backend servers-backend

backend servers-backend
    mode http
    server inst1 192.168.180.120:80 check inter 80 fall 3
    server inst2 192.168.180.130:80 check inter 80 fall 3 backup

4. 创建自启动脚本

cp ~/haproxy-2.9.9/examples/haproxy.init /etc/init.d/haproxy
ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
chmod +x /etc/init.d/haproxy
chkconfig --add /etc/init.d/haproxy
/etc/init.d/haproxy start

5. 关闭防火墙

systemctl stop firewalld
setenforce 0

NFS-192.168.180.130:

1. 在nginx上均安装

yum install -y nfs-utils rpcbind

2. 创建共享目录

mkdir -p /opt/wwwroot
vim /etc/exports
/opt/wwwroot    192.168.180.0/24(rw,sync,no_root_squash)

3. 分别启动

systemctl start nfs
systemctl start rpcbind

4. 查看NFS共享了什么目录

showmount -e 192.168.180.130

5. nginx均挂载NFS共享目录

mount 192.168.180.130:/opt/wwwroot /usr/share/nginx/html/

6. 创建测试页面

echo "nginx-NFS" > /usr/share/nginx/html/index.html

7. 访问测试


http://www.kler.cn/a/506857.html

相关文章:

  • C++ 的 CTAD 与推断指示(Deduction Guides)
  • Linux 进程前篇(冯诺依曼体系结构和操作系统)
  • Unity-Mirror网络框架-从入门到精通之RigidbodyPhysics示例
  • 核密度估计(Kernel Density Estimation, KDE)是一种非参数统计方法
  • 【网络 MAC 学习专栏 -- 如何理解 PHY 的 Link Up】
  • SuperMap iClient3D for Cesium立体地图选中+下钻特效
  • 对比学习方法(1)——SimCLR
  • 要将Git仓库的master分支回滚到上一版本
  • python学opencv|读取图像(三十三)阈值处理-灰度图像
  • Myeclipse最新版本 C1 2019.4.0
  • 直播预告丨Arxiv Insight:用 AI 重新定义论文检索
  • CES Asia 2025科技创新奖:AI点亮科技盛宴
  • 02、Redis从入门到放弃 之 常用命令和基本数据类型操作
  • 【零基础租赁实惠GPU推荐及大语言模型部署教程01】
  • springboot口腔管理平台
  • css hover样式调试
  • 【2024年华为OD机试】(A卷,100分)- 密室逃生游戏 (Java JS PythonC/C++)
  • 读《SQL经典实例》学数据库(系列一)
  • jenkins-系统配置概述
  • 疫苗预约小程序ssm+论文源码调试讲解
  • leetcode279.完全平方数
  • 「刘一哥GIS」系列专栏《GRASS GIS零基础入门实验教程(配套案例数据)》专栏上线了
  • WPF 如何添加系统托盘
  • 堆的实现【C++】
  • 解决 Error: Invalid or corrupt jarfile day04_studentManager.jar 报错问题
  • 利用平面进行位姿约束优化