CentOS7.6 HAproxy-7层负载均衡集群——实施方案

news2024/11/13 18:09:06

目录

1、前期环境准备

1.准备4台主机

1. 设置主机名

2. 设置IP地址然后重启网卡

3. 关闭防火墙和selinux

4. 全部的服务器完成时间统一

二、配置haproxy(192.168.200.11)服务器

1. 安装haproxy

2. haproxy 配置中分成五部分内容

3. 配置HAproxy(192.168.200.11)

配置文件内容注释(详细内容还请自行查询)

4. 设置HTTP服务器IP地址映射主机名

三、配置HTTP服务器

1. 两台服务器安装httpd服务并启动(192.168.200.23web1  192.168.200.34web2)

2. 设置默认主页

四、测试结果

1. 客户端(192.168.200.10)安装elinks( 是一个基于文本的网页浏览器)

2. 使用elinks访问haproxy服务器


1、前期环境准备

1.准备4台主机
IP地址主机名角色内存
192.168.200.10clinent客户端2G
192.168.200.11serverHAproxy服务器2G
192.168.200.23web1web服务12G
192.168.200.34web2web服务22G
1. 设置主机名
hostnamectl set-hostname +主机名
 
su
2. 设置IP地址然后重启网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33
 
systemctl restart network
3. 关闭防火墙和selinux
systemctl stop firewalld
systemctl disable firewalld
 
 
setenforce 0
 
 
vim /etc/selinux/config 
 
注释加'#' SELINUX=enforcing
 
添加      SELINUX=disabled
4. 全部的服务器完成时间统一
ntpdate cn.ntp.org.cn

二、配置HAproxy(192.168.200.11)服务器

1. 安装HAproxy
yum install haproxy -y

2. haproxy 配置中分成五部分内容

global: 设置全局配置参数,属于进程的配置,通常是和操作系统相关。

defaults:配置默认参数,这些参数可以被用到frontend,backend,Listen组件。

frontend:接收请求的前端虚拟节点,Frontend可以更加规则直接指定具体使用后端的。backend;

backend:后端服务集群的配置,是真实服务器,一个Backend对应一个或者多个实体服务器。

Listen :frontend和backend的组合体。

3. 配置HAproxy(192.168.200.11)

vim /etc/haproxy/haproxy.cfg

删除文件里所有的内容
添加新的配置内容
global
        log 127.0.0.1 local3 info
        maxconn 4096
        uid nobody
#       uid 99
        gid nobody
#       gid 99
        daemon
        nbproc 1
        pidfile /run/haproxy.pid
defaults
        log                global
        mode       http
        maxconn 2048
        retries         3
        option  redispatch
        contimeout      5000
        clitimeout          50000
        srvtimeout          50000
#timeout connect 5000
#timeout client 50000
#timeout server 50000
    option abortonclose

    stats uri /admin?stats
    stats realm Private lands
    stats auth admin:password
    stats hide-version

frontend http-in
        bind 0.0.0.0:80
        mode http
        log global
        option httplog
        option httpclose
     acl html url_reg  -i  \.html$
     use_backend html-server if  html
     default_backend html-server

backend html-server
        mode http
        balance roundrobin
        option httpchk GET /index.html
        cookie SERVERID insert indirect nocache
        server html-A web1:80 weight 1 cookie 3 check inter 2000 rise 2 fall 5
        server html-B web2:80 weight 1 cookie 4 check inter 2000 rise 2 fall 5


重启haproxy服务
systemctl start haproxy.service
配置文件内容注释(详细内容还请自行查询)

# 全局设置(global)
global
    # 日志配置,发送到本地的 syslog 服务
    log 127.0.0.1 local3 info
    # 最大连接数
    maxconn 4096
    # 运行用户和用户组
    uid nobody
    gid nobody
    # 守护进程模式运行
    daemon
    # 进程数
    nbproc 1
    # PID 文件位置
    pidfile /run/haproxy.pid

# 默认设置(defaults)
defaults
    # 使用全局日志配置
    log global
    # 工作模式为 HTTP
    mode http
    # 前端最大连接数
    maxconn 2048
    # 请求重试次数
    retries 3
    # 启用请求重新分发
    option redispatch
    # 连接超时时间(毫秒)
    contimeout 5000
    # 客户端超时时间(毫秒)
    clitimeout 50000
    # 服务器超时时间(毫秒)
    srvtimeout 50000
    # 断开连接选项
    option abortonclose

    # 统计页面配置
    stats uri /admin?stats
    stats realm Private lands
    stats auth admin:password
    stats hide-version

# 前端配置(frontend http-in)
frontend http-in
    # 监听地址和端口
    bind 0.0.0.0:80
    # 工作模式
    mode http
    # 日志配置
    log global
    # 启用 HTTP 日志
    option httplog
    # 启用 HTTP 连接关闭选项
    option httpclose
    # ACL 匹配 .html 结尾的请求
    acl html url_reg -i \.html$
    # 使用后端条件
    use_backend html-server if html
    # 默认后端
    default_backend html-server

# 后端配置(backend html-server)
backend html-server
    # 工作模式
    mode http
    # 负载均衡算法
    balance roundrobin
    # HTTP 健康检查
    option httpchk GET /index.html
    # Cookie 会话保持
    cookie SERVERID insert indirect nocache
    # 后端服务器定义:服务器ID,避免rr算法将客户机请求转发给其他服务器 ,对后端服务器的健康状况检查间隔为2000毫秒,连续2次健康检查成功,则认为是有效的,连续5次健康检查失败,则认为服务器宕机
    server html-A web1:80 weight 1 cookie 3 check inter 2000 rise 2 fall 5
    server html-B web2:80 weight 1 cookie 4 check inter 2000 rise 2 fall 5

4. 设置HTTP服务器IP地址映射主机名
vim /etc/hosts

原内容不动添加
192.168.200.23 web1
192.168.200.34 web2

三、配置web服务器

1. 两台服务器安装httpd服务并启动(192.168.200.23web1  192.168.200.34web2)
 yum install httpd -y

systemctl start httpd

设置开机自启动
systemctl enable httpd
2. 设置默认主页
web1

echo web1 > /var/www/html/index.html

web2

echo web2 > /var/www/html/index.html

四、测试结果

1..查看HAproxy状态
http://192.168.200.11/admin?stats

2. 客户端(192.168.200.10)安装elinks( 是一个基于文本的网页浏览器)
yum install -y elinks
3. 使用elinks访问HAproxy服务器
elinks --dump http://192.168.200.11

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1996793.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大家不推荐开放式耳机?开放式耳机的优缺点

你问到了一个挺有意思的问题:为什么大家在推荐耳机时,往往不太提那些在抖音上卖得火热的开放式耳机呢? 首先,咱得明白,抖音上的热门产品,很多时候是因为它们抓住了短视频的“爆款”特性——要么是颜值爆表&…

代码随想录算法训练营第十八天| 530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先

题目: 530. 二叉搜索树的最小绝对差 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 。 差值是一个正数,其数值等于两值之差的绝对值。 示例 1: 输入:root [4,2,6,1,3] 输出:…

共谱绿色物流新篇章!批量苏州金龙氢燃料牵引车交付张家港

2024年8月8日上午阳光明媚,一场别开生面的交车仪式在苏州金龙厂区内举行。张家港运昌绿色物流有限公司(以下简称“张家港运昌物流”)采购的40台苏州金龙氢燃料牵引车正式交付。江苏华昌(集团)有限公司纪委书记陈饶忠&a…

Robot Operating System——深度解析通过符号和隐式加载动态库的运行模式

大纲 运行时分析依赖文件分析汇编和符号分析 除了《Robot Operating System——深度解析自动隐式加载动态库的运行模式》中介绍的这种最终在底层依赖了RCLCPP_COMPONENTS_REGISTER_NODE来注册Node工厂类对象之外,还存在一种特殊的方式,即本文介绍的&…

仿RabbiteMq简易消息队列基础篇(gtest的使用)

TOC gtest介绍 gtest是google的一个开源框架,它主要用于写单元测试,检查自己的程序是否符合预期行为。可在多个平台上使用(包含Linux,MAC OC,Windows等)。它提供了丰富的断言,致命和非致命失败…

Spring框架的三种配置方式(二)---xml文件+注解

Spring框架有三种配置方式: 1.在spring2.5以前,用xml文件进行配置 2.在spring2.5以后,用xml文件和注解(annotation)共同进行配置 3.在spring3.0以后,用注解(annotation)和JavaConfig配置类进行配置 一、xml文件 见下一篇 二…

联通数科如何基于Apache DolphinScheduler构建DataOps一体化能力平台

各位小伙伴晚上好,我是联通数字科技有限公司数据智能事业部的王兴杰。 今天,我将和大家聊一聊联通数字科技有限公司是如何基于Apache DolphinScheduler构建DataOps一体化能力平台的。 今天的分享主要分为三个部分: 关于DataOps的一些思考&a…

视觉SLAM第五讲

本讲将讨论“机器人如何观测外部世界”,也就是观测方程部分。而在以相机为主的视觉SLAM中,观测主要是指相机成像的过程。 三维世界中的一个物体反射或发出的光线,穿过相机光心后,投影在相机的成像平面上。相机的感光器件接收到光…

主机加固是什么?主机加固与产线工控安全关系

1. 需求背景 随着工业4.0的发展,生产线日益智能化,生产网已经发展成一个复杂的计算机环境。尽管这些网络通常进行了物理隔离,但在实际操作中仍需要与外部进行数据交互。这种交互可能导致病毒和恶意软件的入侵,威胁工控主机和产线…

k8s分布式存储-ceph

文章目录 Cephdeploy-ceph部署1.系统环境初始化1.1 修改主机名,DNS解析1.2 时间同步1.3 配置apt基础源与ceph源1.4关闭selinux与防火墙1.5 **创建** ceph **集群部署用户** cephadmin1.6分发密钥 2. ceph部署2.1 **安装** ceph 部署工具2.2 **初始化** mon **节点**…

计算机毕业设计选题推荐-小型民营加油站管理系统-Java/Python项目实战

✨作者主页:IT研究室✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

使用 Java Swing 创建一个最大公约数计算器 GUI 应用

使用Java语言,设计一个程序,实现求取两个正整数的最大公约数。 比较基础的一个Java小程序。 1、效果展示 2、程序代码 package demo; import javax.swing.*; import java.awt.*;

用python连接mysql的方法

如何将个人主机上的mysql服务发布到公网:frp内网穿透 用python连接mysql的方法 方法一: 1.设置清华镜像站:从国内下载安装包,提高下载和安装速度 pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simp…

航向角、前轮转角、偏航角的区别及其在MPC中的使用

目录 前言一、概念解析二、三种角度在MPC中的应用三、总结四、MPC算法流程 前言 航向角、偏航角、前轮转角是车辆控制中描述方向的关键概念。本文将简要介绍它们的区别及在MPC(模型预测控制)中的应用。 一、概念解析 φ 为车体的航向角; δ…

[ACP云计算]组件介绍

一、IaaS、PaaS、SaaS 二、交换机 三、VPC 四、ECS 云服务器ECS(Elastic Compute Service)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。云服务器ECS免去了您采购IT硬件的前期…

jupyter项目使用Anaconda环境内核

1、创建虚拟环境 conda create --name myjupyter python3.7 2、进入虚拟环境 conda activate myjupyter 3、切换到自己jupyter notebook项目想在的目录 E: cd E:\first\project\jupyter\jupyter01 4、安装IPython内核包,这是Jupyter Notebook使用Python内核所必需的…

【MySQL 03】库的操作 (带思维导图)

前置:之后的所有的 SQL 语句中,凡是被中括号 [ ] 括起来的均为可选项。 🌈 一、创建数据库 数据库创建语句 创建数据库本质就是在 /var/lib/mysql 中创建一个目录。 if not exists:如果指定数据库不存在则创建该数据库&#xf…

[Java]面向对象-static继承

Static static表示静态,是Java中的一个修饰符,可以修饰成员方法、成员变量 静态变量: 被static修饰的成员变量,叫静态变量 特点: 被该类所有对象共享 调用方式:1.类名调用 2.对象名调用 静态方法&…

PyFluent入门之旅(8) PyFluent API 分类与区别

PyFluent提供了两种主要的API来与Ansys Fluent进行交互: Settings APITUI API 通过这两种接口方式,可以控制 Ansys Fluent 的各个方面,包括从网格生成到后处理的所有操作。 分类 Settings API pyFluent 的 Settings API类似于 Ansys Flu…

线性表——数据结构

线性表 文章目录 线性表线性表的定义和基本操作线性表的定义线性表的基本操作 线性表的顺序表示顺序表的定义顺序表的实现——静态分配顺序表的实现——动态分配顺序表的特点 线性表的定义和基本操作 线性表的定义 线性表(Linear List)的定义 ​ 线性…