全网最最最详细的haproxy详解!!!

1 什么是负载均衡

负载均衡(Load Balancing)是一种将网络请求或工作负载分散到多个服务器或计算机资源上的技术,以实现优化资源使用、提高系统吞吐量、增强数据冗余和故障容错能力、以及减少响应时间的目的。在分布式系统、云计算环境、Web服务等领域中,负载均衡是一项至关重要的技术。

负载均衡的基本原理是将进入系统的请求或数据流量按照一定的规则分配到后端的多个服务器或资源上进行处理。这些规则可以是基于请求的源IP地址、目标IP地址、端口号、协议类型、URL路径、请求内容等信息的,也可以是基于服务器当前的负载状况、响应时间、健康状况等动态信息的。

负载均衡器(Load Balancer)是实现负载均衡功能的硬件或软件设备。它可以是一个独立的物理设备,也可以是在服务器上运行的软件程序。负载均衡器负责接收来自客户端的请求,然后根据配置的负载均衡策略将请求转发给后端服务器集群中的一台或多台服务器进行处理。同时,负载均衡器还需要监控后端服务器的健康状况,确保只将请求转发给正常工作的服务器。

负载均衡可以带来以下好处:

  1. 提高系统吞吐量:通过并行处理请求,可以显著提高系统的处理能力,减少用户等待时间。
  2. 优化资源使用:根据服务器的实际负载情况动态分配请求,避免某些服务器过载而其他服务器空闲的情况。
  3. 增强数据冗余和故障容错能力:通过将数据分布在多个服务器上,可以提高数据的可用性和容错性,即使某些服务器出现故障,也不会影响整个系统的正常运行。
  4. 减少响应时间:通过减少单个服务器的负载,可以缩短请求的处理时间,提高用户体验。

常见的负载均衡算法包括轮询(Round Robin)、最少连接(Least Connections)、源地址哈希(Source Hashing)、加权轮询(Weighted Round Robin)等。这些算法各有优缺点,适用于不同的应用场景和需求。

在实际应用中,负载均衡通常与反向代理(Reverse Proxy)、内容分发网络(CDN)、微服务架构等技术结合使用,以提供更高效、可靠、可扩展的系统解决方案。

 2 haproxy简介

HAProxy(High Availability Proxy)是一款由法国人Willy Tarreau开发的高性能、开源的TCP和HTTP负载均衡器。它使用C语言编写,具备高并发处理能力和丰富的功能特性,广泛应用于各种需要高负载和高可用性的Web站点和应用程序中。以下是对HAProxy的详细介绍:

2.1 基本概述

  • 开发者:Willy Tarreau
  • 类型:高性能的TCP和HTTP负载均衡器
  • 特点:免费、快速、可靠
  • 主要功能:负载均衡、健康检查、会话保持、SSL/TLS支持、HTTP重写、压缩等

2.2 主要特性

  1. 高性能:HAProxy采用事件驱动模型,能够处理大量并发连接,支持数以万计的并发连接,特别适合高负载的Web站点。
  2. 灵活性强:支持多种负载均衡算法和调度策略,如轮询、最少连接、源地址哈希等,适应不同的应用场景。
  3. 高可用性:通过健康检查和故障转移机制,确保服务的连续性。当后端服务器出现故障时,HAProxy会自动将其从负载均衡池中移除,并在服务器恢复后重新添加。
  4. 丰富的功能:支持SSL终止、HTTP重写、压缩等多种功能,提升应用的性能和安全性。
  5. 易于集成:HAProxy可以简单地集成到现有的架构中,同时保护Web服务器不被直接暴露在网络上。

2.3 工作原理

HAProxy的工作流程主要包括以下几个步骤:

  1. 客户端请求:客户端发送请求到HAProxy的前端。
  2. 前端处理:前端根据配置的规则(如负载均衡算法、ACL规则等)选择合适的后端。
  3. 后端转发:前端将请求转发到选定的后端服务器进行处理。
  4. 服务器响应:后端服务器处理请求并返回结果给前端。
  5. 返回客户端:前端将处理结果返回给客户端。

2.4 负载均衡算法

HAProxy支持多种负载均衡算法,以满足不同的需求:

  • 轮询(Round Robin):将请求依次分配给每个后端服务器。
  • 最少连接(Least Connections):将请求分配给当前连接数最少的服务器。
  • 源地址哈希(Source Hashing):根据客户端的IP地址分配请求,确保同一客户端的请求总是分配到同一台服务器。
  • 加权轮询(Weighted Round Robin):根据服务器的权重分配请求,权重高的服务器分配更多的请求。

2.5 健康检查机制

为了确保请求只被分配到正常工作的服务器,HAProxy提供了健康检查机制。健康检查可以定期检测后端服务器的状态,并根据检测结果动态调整服务器的可用性。常见的健康检查类型包括TCP连接检查、HTTP请求检查等。

2.6 应用场景

HAProxy特别适用于那些负载特大的Web站点,这些站点通常又需要会话保持或七层处理。此外,HAProxy还可以用于数据库负载均衡、API网关、微服务架构中的服务发现与负载均衡等场景。

3 配置haproxy实验环境

搭建三个红帽9镜像的虚拟机并关闭防火墙

3.1 haproxy

配置IP 

3.2 webserver1

配置IP

安装nginx

3.3 webserver2

配置IP

安装nginx

4 haproxy的基本部署方法及负载均衡的实现

haproxy

安装haproxy

haproxy配置文件

4.1 配置文件结构

HAProxy的配置文件通常包含五个主要部分:

  1. global:参数是进程级的,通常是和操作系统相关。这些参数一般只设置一次,如果配置无误,就不需要再次进行修改。
  2. defaults:配置默认参数,这些参数可以被用到frontend、backend、listen组件。
  3. frontend:接收请求的前端虚拟节点,Frontend可以基于规则直接指定具体使用的后端backend。
  4. backend:后端服务集群的配置,是真实服务器,一个Backend对应一个或者多个实体服务器。
  5. listen:Frontend和backend的组合体。

4.2 关键配置项

1. global部分
  • 日志记录:定义日志记录的地址和级别,如log 127.0.0.1 local0 info
  • chroot:将进程的根目录更改为指定目录,提高安全性。
  • 用户和用户组:指定运行HAProxy的用户和用户组。
  • 最大连接数:设置HAProxy可以处理的最大连接数。
  • 其他系统级配置:如daemon使HAProxy在后台运行,stats socket定义统计信息的Unix套接字位置等。
2. defaults部分
  • 日志类型:如option httplog启用HTTP日志。
  • 连接配置:设置最大连接数、连接超时时间等。
  • 负载均衡算法:如balance roundrobin设置默认负载均衡方式为轮询。
  • 健康检查:配置健康检查的相关参数,如重试次数、检查间隔等。
3. frontend部分
  • 绑定地址和端口:定义HAProxy监听的地址和端口,如bind 0.0.0.0:80
  • 协议:设置处理请求的协议,如HTTP或TCP。
  • ACL和过滤器:配置访问控制列表(ACL)和过滤器,以决定如何处理请求。
4. backend部分
  • 服务器列表:定义后端服务器列表,包括服务器的IP地址、端口号、权重等。
  • 健康检查:配置对后端服务器的健康检查,确保只有健康的服务器才能接收请求。
5. listen部分
  • 组合配置:将frontend和backend的配置组合在一起,形成一个完整的监听器配置。

4.3 示例配置

以下是一个简单的haproxy配置示例:

 

4.4 注意事项

  • 在配置HAProxy时,需要根据实际的应用场景和需求来选择合适的配置参数。
  • 配置完成后,需要仔细检查配置文件是否有误,并测试HAProxy是否能够正常工作。
  • 在生产环境中,建议对HAProxy进行监控和日志记录,以便及时发现和解决问题。

5  haproxy的配置参数及日志分离

5.1 haproxy的配置参数

HAProxy的全局配置(global section)是其配置文件中的重要部分,它包含了影响HAProxy进程及其操作的全局性设置。这些参数通常是进程级别的,并且与操作系统相关。以下是对HAProxy全局配置的一些详细说明:

1. 进程管理及安全相关参数

  • chroot:将HAProxy的工作目录更改到指定的目录,并在放弃权限之前执行chroot()操作。这可以提升HAProxy的安全级别,但需要注意的是,指定的目录必须为空且任何用户都不能有写权限。
  • daemon:使HAProxy以守护进程的方式在后台运行。这等同于命令行中的"-D"选项。
  • gid 和 group:分别以指定的GID(组ID)或组名运行HAProxy。建议使用专为运行HAProxy创建的GID或组名,以减少权限风险。
  • log:定义全局的日志服务器和日志级别。可以指定最多两个日志服务器,并设置日志的级别(如info、warning、error等)。
  • nbproc:指定启动的HAProxy进程数。默认情况下,只启动一个进程。但在某些情况下,可能需要启动多个进程以提高性能或进行调试。
  • pidfile:指定HAProxy进程的PID文件位置,该文件包含HAProxy主进程的进程ID。
  • uid 和 user:分别以指定的UID(用户ID)或用户名运行HAProxy。

2. 性能调整相关参数

  • maxconn:设置每个HAProxy进程所能接受的最大并发连接数。这是一个重要的性能参数,需要根据服务器的实际负载进行调整。
  • ulimit-n:设置每个HAProxy进程可以打开的最大文件描述符数。默认情况下,HAProxy会自动计算这个值,但在某些情况下,可能需要手动调整以优化性能。

3. 超时时长相关参数

  • timeout connect:定义HAProxy将客户端请求转发到后端服务器所等待的超时时长。
  • timeout client:客户端非活动状态的超时时长。
  • timeout server:客户端与服务器端建立连接后,等待服务器响应的超时时长。
  • timeout http-keep-alive:定义HTTP持久连接的超时时长。
  • timeout check:健康检查时的超时时长。

4. 调试相关参数

  • debug:启用调试模式,提供更详细的日志信息。这通常只在调试过程中使用,不建议在生产环境中启用。
  • quiet:减少日志信息的输出量,使日志更加简洁。

5. 其他参数

  • stats socket:定义一个UNIX域套接字,用于通过命令行工具(如socat)与HAProxy进行交互,获取实时统计信息。
  • node:定义节点的名称,这在HA场景中特别有用,当多个HAProxy进程共享同一个IP地址时。

5.2 haproxy的日志分离

打开配置日志文件

在配置文件里打开UDP协议

配置haproxy日志位置

6 proxies中的常用配置参数

6.1 前端配置(frontend)

  • bind:定义前端监听的地址和端口,例如bind 0.0.0.0:80
  • mode:设置前端运行的协议(tcp或http)。
  • option httplog:启用http日志(如果前端处理的是HTTP请求)。
  • acl:定义访问控制列表(ACL),用于根据特定条件路由请求,例如acl php_web path_end .php
  • use_backend:根据ACL的匹配结果,将请求转发到指定的后端服务器组,例如use_backend php_server if php_web

6.2 后端配置(backend)

  • mode:设置后端运行的协议(tcp或http)。
  • balance:定义后端服务器的负载均衡算法,如轮询(roundrobin)、最少连接(leastconn)等。
  • server:定义后端服务器的地址、端口和其他参数,例如server web1 192.168.1.1:80 check
  • option httpchk:开启对后端服务器的健康检查,通常通过HTTP请求完成,例如option httpchk GET /index.html

6.3 监听配置(listen)

  • bind:定义监听的地址和端口,与frontend中的bind类似。
  • mode:设置监听的协议(tcp或http)。
  • stats:配置监控页面的相关参数,如启用监控、设置监控页面的URL和刷新间隔等。

6.4 server配置

6.4.1 基本参数

  • name:为此服务器指定一个标识名称,这个名称将出现在日志文件中,用于区分不同的后端服务器。
  • address:填写后端服务器的IP地址,也支持使用可解析的主机名称。
  • port:指定将连接发往后端服务器的目标端口,如果未设定,则通常使用客户端请求的端口。

6.4.2 健康检查参数

  • check:启用对此服务器的TCP健康状态检查。默认情况下,HAProxy会尝试连接到后端服务器的指定端口来检查其可用性。
  • inter:设置健康状态检查的时间间隔(单位为毫秒),默认为2000毫秒。
  • rise:设置后端服务器从离线状态转换为正常状态需要成功检查的次数。
  • fall:设置后端服务器从正常状态转换为不可用状态需要检查的失败次数。

6.4.3 其他参数

  • backup:将此服务器设置为备用服务器。在负载均衡场景中,当所有正常服务器均不可用时,此备用服务器将顶替提供服务。
  • maxconn:指定此服务器接受的最大并发连接数。这有助于防止单个服务器过载,影响整体服务的稳定性。

7 haproxy热更新方法

7.1 安装socat

7.2 查看haproxy帮助

7.3 查看haproxy状态

7.4 更改权重

7.5 查看servers状态

7.6 关闭一台主机

7.7 打开一台主机

7.8 haproxy多进程热处理

在配置文件里

 

8 haproxy中的算法

8.1 静态算法

8.1.1 static-rr

不支持运行时利用socat进行权重的动态调整(只支持0和1,不支持其它值)
不支持端服务器慢启动
其后端主机数量没有限制,相当于LVS中的 wrr

8.1.2 first

根据服务器在列表中的位置,自上而下进行调度
其只会当第一台服务器的连接数达到上限,新请求才会分配给下一台服务
其会忽略服务器的权重设置
不支持用socat进行动态修改权重,可以设置0和1,可以设置其它值但无效

8.2 动态算法

8.2.1 roundrobin

1.基于权重的轮询动态调度算法

2.支持权重的运行时调整,不同于Ivs中的rr轮训模式

3.HAProxy中的roundrobin支持慢启动(新加的服务器会逐渐增加转发数

4.其每个后端backend中最多支持4095个real server
5.支持对real server权重动态调整
6.roundrobin为默认调度算法,此算法使用广泛

8.2.2 leastconn

leastconn加权的最少连接的动态
支持权重的运行时调整和慢启动,即:根据当前连接最少的后端服务器而非权重进行优先调度(新客户端连接)
比较适合长连接的场景使用,比如:MySQL等场景。

8.3 其他算法

8.3.1 source

8.3.1.1 一致性hash

一致性哈希,当服务器的总权重发生变化时,对调度结果影响是局部的,不会引起大的变动hash(o)mod n
该hash算法是动态的,支持使用 socat等工具进行在线权重调整,支持慢启动

8.3.2 uri

基于对用户请求的URI的左半部分或整个uri做hash,再将hash结果对总权重进行取模后根据最终结果将请求转发到后端指定服务器
适用于后端是缓存服务器场景
默认是静态算法,也可以通过hash-type指定map-based和consistent,来定义使用取模法还是一致性hash

8.3.3 url_param 

url_param对用户请求的ur中的 params 部分中的一个参数key对应的value值作hash计算,并由服务器总权重相除以后派发至某挑出的服务器,后端搜索同一个数据会被调度到同一个服务器,多用与电商
通常用于追踪用户,以确保来自同一个用户的请求始终发往同一个realserver如果无没key,将按roundrobin算法

8.3.4 hdr

url_param对用户请求的ur中的 params 部分中的一个参数key对应的value值作hash计算,并由服务器总权重相除以后派发至某挑出的服务器,后端搜索同一个数据会被调度到同一个服务器,多用与电商,通常用于追踪用户,以确保来自同一个用户的请求始终发往同一个realserver如果无没key,将按roundrobin算法

9 haproxy的状态页面监控

9.1 在配置文件中编辑状态页

9.2 测试

10 基于cookie的会话保持

10.1 配置

10.2 测试

11 ip透传技术

11.1 七层穿透 

11.1.1 关闭nginx并下载httpd

11.1.2 测试页面

11.1.3 打开httpd

11.1.4 在配置文件中编辑

11.1.5 测试

11.2 四层穿透

11.2.1 在配置文件中编辑

11.2.2 在webserver2的nginx配置文件编辑

12 haproxy的访问控制列表

解析

 

12.1 ACL-name名称

12.1.1  在配置文件中编辑

12.1.2 测试 

12.2 ACL-criterion匹配规范

12.2.1 hdr_end()

12.2.1.1  在配置文件中编辑

12.2.1.2 测试

12.2.2 hdr_beg()

12.2.2.1  在配置文件中编辑

12.2.2.2 测试

12.2.3 base_sub()

12.2.3.1 在配置文件中编辑

12.2.3.2 测试

12.2.4 base_reg()

12.2.4.1 在配置文件中编辑

12.2.4.2 测试

12.2.5 path_sub()

12.2.5.1 在配置文件中编辑

12.2.5.2 测试

13 利用acl做动静分离等访问控制

13.1 基于域名

13.1.1 在配置文件中编辑

13.1.2 测试

13.2 基于网段

13.2.1 在配置文件中编辑

 13.2.2 测试

13.2.2 在配置文件中编辑

13.2.4 测试

13.3 基于浏览器 

13.3.1 在配置文件中编辑

13.3.2 测试

13.4 动静分离

13.4.1 静态分离

13.4.1.1 打开配置文件

13.4.1.2 在配置文件中编辑

13.4.1.3 测试

13.4.2 动态分离

13.4.2.1 在配置文件中编辑

13.4.2.2 测试

14 自动义错误页面内容

14.1 创建文件

14.2 在文件里编辑 

14.2 在配置文件中编辑

14.3 测试

14.4 定向到百度

14.4.1 在配置文件中编辑

14.4.2 测试

15 hapoxy的四层负载示例

15.1 webserver1

安装数据库

15.2 webserver2

与webserver1一样

15.3 haproxy安装数据库

15.4 webserver1和webserver2都做用户密码

15.5 在配置文件里编辑

15.6 测试

16 https的加密访问

16.1 可视

16.1.1 创建目录并设置证书

16.1.2 在配置文件里编辑

16.1.3 测试

16.2 全站加密

16.2.1 在配置文件里编辑

16.2.2 创建webcluster.cfg文件并配置

16.2.3 测试

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ArkUI---Swiper、Grid、List组件简单介绍

前言:ForEach ForEach语法如下: ForEach(arr: Array,itemGenerator: (item: Array, index?: number) > void,keyGenerator?: (item: Array, index?: number) : string > string ) 参数1:数据源,为Array的数组 参数2&am…

KOLA: CAREFULLY BENCHMARKING WORLD KNOWLEDGE OF LARGE LANGUAGE MODELS

文章目录 题目摘要简介KOLA 基准实验评估结论和未来工作道德声明 题目 KOLA:仔细对大型语言模型的世界知识进行基准测试 论文地址:https://arxiv.org/abs/2306.09296 项目地址:https://github.com/ranahaani/GNews 摘要 大型语言模型 (LLM) 的卓越性能要求评估方法…

Grok-2的Beta版发布

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

图论------Bellman-Ford算法求单源最短路径的优化

目录 前情回顾: 画图分析: 具体代码: 前情回顾: 大家是否还记得我们之前讲过的Bellman-Ford算法,如果忘记的话可以点击链接去复习一下:图论------贝尔曼-福德(Bellman-Ford)算法-…

8月13日学习笔记 LVS

一.描述以及工作原理 1. 什么是LVS linux virtural server的简称,也就是linxu虚拟机服务器,这是一个 由章文嵩博士发起的开源项目,官网是 http://www.linuxvirtualserver.org,现在lvs已经是linux内核标 准的一部分,使用lvs可以达…

杭州网络安全等保测评——数据守护者的金盾牌️

在数字化转型疾驰的杭州,网络疆域的每一次拓展都伴随着安全风险的增长。如何在创新与安全之间找到黄金平衡点?《杭州等保测评:守护网络安全的坚实屏障》一文,深入探索这座智慧城市如何依托等保测评体系,构建起一道道安…

【已EI检索会议】第五届新材料与清洁能源国际学术会议(ICAMCE 2024)

重要信息 会议官网:2024.icceam.com 接受/拒稿通知:投稿后1周内 收录检索:EI, Scopus 会议召开视频 见刊封面 EI检索页面 Scopus 检索页面 相关会议 第六届新材料与清洁能源国际学术会议(ICAMCE 2025) 大会官网&…

机器学习常用包numpy篇(二)数组属性与基本操作

目录 前言 数组属性 1.数组转置 2.数组元素的数据类型 3.数组元素的虚部 4.数组元素的实部 5.数组包含的元素个数 6.数组元素的字节数 7.数组元素的总字节 8.数组维度 9.数组形状 10.每个维度中步进的字节数组 11.数组维度和形状 数组基本操作 1.重设形状 2.数…

【vue3|第23期】Vite + Vue3: 深入理解public和assets文件夹的作用与使用

日期:2024年8月14日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长;如果有不对的地方&#xf…

GBJ406-ASEMI无人机专用GBJ406

编辑:ll GBJ406-ASEMI无人机专用GBJ406 型号:GBJ406 品牌:ASEMI 封装:GBJ-4 批号:2024 现货:50000 最大重复峰值反向电压:600V 最大正向平均整流电流(Vdss):4A 功率(Pd)&am…

“从零开始的HTML 表格”——WEB开发系列09

HTML 表格是一种用于在网页上组织和显示信息的结构性元素&#xff0c;它能够将数据以行和列的形式呈现&#xff0c;帮助用户更清晰地理解数据关系。表格在展示统计数据、产品列表、日程安排等方面非常实用。 一、HTML 表格的基本结构 HTML 表格用 ​​<table>​​ 标签来…

day36——homework

二、基于UDP的TFTP文件传输 1&#xff09;tftp协议概述 简单文件传输协议&#xff0c;适用于在网络上进行文件传输的一套标准协议&#xff0c;使用UDP传输 特点&#xff1a; 是应用层协议 基于UDP协议实现 数据传输模式 octet&#xff1a;二进制模式&#xff08;常用&am…

MySQL源码安装与MySQL基础学习

1、安装MySQL ​ 本次安装使用的是绿色硬盘版本&#xff0c;无需额外安装依赖环境&#xff0c;比较简单 修改相关配置文件&#xff1a; 设置环境变量&#xff0c;声明/宣告MySQL命令便于系统识别&#xff1a; 初始化数据库&#xff1a; 设置系统识别&#xff0c;进行操作&…

Java基础之隐式类型转换

类型转换 基本数据类型表示范围大小排序&#xff1a; 在变量赋值及算术运算的过程中&#xff0c;经常会用到数据类型转换&#xff0c;其分为两类&#xff1a; 隐式类型转换 显式类型转换 1 隐式类型转换 情形1&#xff1a;赋值过程中&#xff0c;小数据类型值或变量可以直…

八股文学习总结

八股文学习总结 文章目录 八股文学习总结一、总体概况二、Java基础三、集合四、JUC五、JVM六、MYSQL七、Redis八、MQ九、计网十、OS十一、附上我记的笔记 一、总体概况 八股文也看了好多天了&#xff0c;我对八股文基本上考察哪些点也都有了印象&#xff0c;主要的分为Java基础…

Spring-AOP实现后置、返回、异常和环绕通知

后置通知 在切入点的目标方法执行后&#xff08;无论有异常抛出没的&#xff09;&#xff0c;都会执行这个通知方法! 如果想要在通知方法里访问到目标方法返回的结果&#xff0c;可以用返回通知 返回通知 是在目标方法执行之后没有异常&#xff0c;并且返回结果后才执行通知…

【自用】Python爬虫学习(七):selenium网页自动化操作

Python爬虫学习&#xff08;七&#xff09; selenium介绍selenium基础用法selenium其他自动化操作selenium动作链与iframe的处理selenium无可视化界面与反检测实现 selenium介绍 selenium是一个广泛使用的开源自动化测试框架&#xff0c;主要用于Web应用程序的功能测试。它支持…

机器学习速成第二集——监督学习之分类(理论部分)!

目录 分类算法的种类 分类问题的应用场景 模型选择与评估 结论 如何在不同数据集中选择最适合的监督学习分类算法&#xff1f; 监督学习中集成模型与单一模型相比有哪些具体的优势和劣势&#xff1f; 优势&#xff1a; 劣势&#xff1a; 在处理高维稀疏数据时&#xf…

Kubernetes-K8S

Kubernetes由于单词太长&#xff0c;省略掉中间8个字母简称为K8S。它介于应用服务和服务器之间。能够通过策略协调和管理多个服务&#xff0c;只需要一个YAML文件配置。定义应用的部署顺序等信息&#xff0c;自动部署应用到各个服务器&#xff0c;还可以自动扩容缩容。 架构原理…

K8S资源之Service

概念 将一组 Pods 公开为网络服务的抽象方法。 ClientIP 模型 集群内访问类型。 命令行 # 暴露端口 kubectl expose deployment my-dep-nginx --port8000 --target-port80Yml文件 apiVersion: v1 kind: Service metadata:labels:app: my-dep-nginxname: my-dep-nginx spe…