LVS的DR模式部署
目录
一、引言:高并发场景下的流量调度方案
二、LVS-DR 集群核心原理与架构设计
(一)工作原理与数据流向
数据包流向步骤3:
(二)模式特性与53网络要求
三、实战配置:从9环境搭建到参数调整
(一)案例环境规划
(二)负载调度器配置步骤
1. 绑定 VIP 地址(虚接口方式)
2. 关闭内核重定向参数
3. 配置负载均衡策略(轮询算法)
(三)真实服务器配置要点
1. 通过 lo 接口配置 VIP(回环接口)
2. 禁用 ARP 响应更新
3. 部署 Web 服务与 NFS 共享
四、集群验证与状态监控
(一)功能测试
(二)状态查看与11策略验证
五、总结与应用场景建议
六、常见问题排查与解决方案
(一)集群无响应或请求丢失
1. IP 配置冲突
2. ARP 广播冲突
3. iptables 防火墙拦截
(二)负载分配不均
1. 调度算法配置错误
2. Real Server 性能差异
七、性能优化与扩展策略
(一)内核参数调优
1. TCP 连接优化
2. IPVS 连接超时设置
(二)高可用扩展
1. 主备调度器(Keepalived)
2. 横向扩展 Real Server
八、LVS-DR 与其他负载均衡方案对比
九、总结与实践建议
(一)最佳实践清单
(二)学习路径推荐
一、引言:高并发场景下的流量调度方案
在数字化业务爆发式增长的今天,如何应对海量用户访问带来的系统压力成为关键挑战。负载均衡技术通过将流量合理分配至多个服务器,有效避免单点故障并提升系统扩展性。其中,LVS-DR(Direct Routing)模式凭借高性能、低延迟、流量分离处理的特性,成为构建大规模负载均衡集群的核心方案。本文将结合文档《部署 LVS-DR 群集_扫描版.pdf》内容,详细解析其工作原理、配置流程及实战验证方法。
二、LVS-DR 集群核心原理与架构设计
(一)工作原理与数据流向
LVS-DR 模式由Director Server(负载调度器)和Real Server(真实服务器)组成,两者需位于同一物理网络并共享VIP(虚拟 IP 地址)。其核心逻辑为:
请求入口:客户端通过 VIP 访问集群,请求由 Director Server 接收。
数据转发:Director Server 通过二层链路(MAC 地址重写)将请求分发至 Real Server,源 IP 与目标 IP 保持不变,仅修改 MAC 地址。
响应直连:12Real Server 直接将响应报文通过 lo 接口返回客户端,无需经过 Director Server,实现流量 “入站分发、出站直连”。
数据包流向步骤3:
客户端发送请求(源 IP=CIP,目标 IP=VIP)至 Director Server。
Director4 Server 通过 IPVS 判断为集群服务,修改 MAC 地址(源 MAC=Director,目标 MAC=Real Server)后转发。
Real Ser2ver 接收报文,封装响应(源 IP=VIP,目标 IP=CIP)并通过物理网卡直接返回客户端。
(二)模式特性与53网络要求
物理网络限制:Director 与 Real Server 必须处于同一局域网,依赖二层通信(如 VLAN 或交换机直连)。
- *IP 配置规则6*:
- Real Server 通过 lo 接口配置 VIP(仅作响应源地址,不监听请求)。
- Real Se7rver 网关不可指向 Director IP,避免响应报文绕行。
- *流量效率优势8*:响应报文无需经过 Director,大幅降低调度器负载,提升吞吐量。
三、实战配置:从9环境搭建到参数调整
(一)案例环境规划
主机角色 | 操作系统 | 主 IP 地址 | VIP 地址 | 核心组件 |
---|---|---|---|---|
负载调度器(LVS) | openEuler 24.03 | 192.168.10.101 | 192.168.10.100 | ipvsadm |
真实服务器 1(Web1) | openEuler 24.03 | 192.168.10.102 | 192.168.10.100 | Apache、NFS |
真实服务器 2(Web2) | openEuler 24.03 | 192.168.10.103 | 192.168.10.100 | Apache、NFS |
NFS 共享服务器 | openEuler 24.03 | 192.168.10.104 | - | NFS |
(二)负载调度器配置步骤
1. 绑定 VIP 地址(虚接口方式)
通过ens33:0
虚接口为调度器配置 VIP,子网掩码设为255.255.255.255
(全 1 掩码),确保 VIP 仅本地可见:
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33:0 # 复制主网卡配置
vim ifcfg-ens33:0 # 修改为VIP地址,NETMASK=255.255.255.255
IPADDR=192.168.10.100
systemctl restart NetworkManager # 生效配置
2. 关闭内核重定向参数
避免调度器向客户端发送错误路由重定向,修改/etc/sysctl.conf
并生效:
echo "net.ipv4.conf.all.send_redirects=0" >> /etc/sysctl.conf
echo "net.ipv4.conf.default.send_redirects=0" >> /etc/sysctl.conf
echo "net.ipv4.conf.ens33.send_redirects=0" >> /etc/sysctl.conf
sysctl -p # 应用配置
3. 配置负载均衡策略(轮询算法)
使用ipvsadm
添加集群服务,将请求分发至 Real Server(-g
表示 DR 模式):
ipvsadm -C # 清除原有策略
# 添加集群服务(TCP 80端口,轮询算法rr)
ipvsadm -A -t 192.168.10.100:80 -s rr
# 添加真实服务器(权重均为1)
ipvsadm -a -t 192.168.10.100:80 -r 192.168.10.102 -g -w 1
ipvsadm -a -t 192.168.10.100:80 -r 192.168.10.103 -g -w 1
ipvsadm-save > /etc/sysconfig/ipvsadm # 保存策略
systemctl enable ipvsadm # 开机自启
(三)真实服务器配置要点
1. 通过 lo 接口配置 VIP(回环接口)
VIP 仅作为响应报文源地址,通过lo:0
接口绑定并限制路由:
vip="192.168.10.100"
# 临时配置(重启失效)
ip addr add ${vip}/32 dev lo label lo:0
ip route add local ${vip}/32 dev lo
# 永久配置(写入rc.local)
echo "ip addr add ${vip}/32 dev lo label lo:0" >> /etc/rc.local
echo "ip route add local ${vip}/32 dev lo" >> /etc/rc.local
chmod +x /etc/rc.local
2. 禁用 ARP 响应更新
防止 Real Server 广播 VIP 的 MAC 地址,避免与 Director 冲突:
vim /etc/sysctl.conf
# 添加以下参数
net.ipv4.conf.all.arp_ignore=1 # 忽略非本地目标IP的ARP请求
net.ipv4.conf.all.arp_announce=2 # 限制ARP公告仅发送主IP
net.ipv4.conf.lo.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
sysctl -p # 生效配置
3. 部署 Web 服务与 NFS 共享
以 Apache 为例,挂载 NFS 共享实现内容一致性(文档建议参考第 1 章配置 NFS):
yum -y install httpd # 安装Web服务
mount 192.168.10.104:/var/www/html /var/www/html # 挂载NFS共享
echo "<h1>LVS负载均衡群集--测试网页</h1>" > /var/www/html/index.html # 创建测试页
systemctl start httpd && systemctl enable httpd # 启动服务
四、集群验证与状态监控
(一)功能测试
通过浏览器访问http://192.168.10.100
,刷新页面观察请求是否轮询分发至 Web1 和 Web2。若 Real Server 配置不同测试内容(如不同 HTML 标题),可直观验证负载均衡效果。
(二)状态查看与11策略验证
使用ipvsadm -ln
命令查看当前集群状态,确认调度算法、Real Server 列表及连接统计:
ipvsadm -ln
# 示例输出(轮询算法rr,两台Real Server)
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.10.100:80 rr-> 192.168.10.102:80 Route 1 0 3-> 192.168.10.103:80 Route 1 0 2
五、总结与应用场景建议
LVS-DR 模式通过二层转发 + 响应直连的设计,显著提升了高并发场景下的流量处理效率,适用于电商平台、视频网站等需要低延迟、高吞吐的业务场景。但需注意:
网络局限性:依赖同一局域网,跨网段部署需结合其他模式(如 LVS-TUN)。
配置关键点:VIP 路由限制、ARP 参数调整是避免集群冲突的核心。
通过本文的原理剖析与710实战操作,可快速掌握 LVS-DR 集群的搭建与调优方法,为构建稳定的分布式系统提供技术支撑。
以下是对 LVS-DR 集群的进一步扩展内容,涵盖常见问题排查、性能优化方向及与其他负载均衡方案的对比,帮助读者更全面掌握该技术:
六、常见问题排查与解决方案
(一)集群无响应或请求丢失
1. IP 配置冲突
- 现象:客户端无法访问 VIP,或 Real Server 响应报文未走 lo 接口。
- 排查:
- 检查 Director 与 Real Server 的 VIP 是否均通过正确接口(调度器 ens33:0,Real Server lo:0)配置。
- 确保 Real Server 的网关未指向 Director IP(执行
route -n
查看默认网关)。
- 解决:修正网关配置,确保 Real Server 直接通过本地网关访问外网。
2. ARP 广播冲突
- 现象:客户端 ping VIP 返回 Real Server 的 MAC 地址,导致请求未到达 Director。
- 排查:在 Real Server 执行
arp -a
,查看是否错误广播 VIP 的 MAC 地址。 - 解决:
- 确认
arp_ignore=1
和arp_announce=2
已生效(sysctl net.ipv4.conf.all.arp_ignore
查看值是否为 1)。 - 重启网络服务或服务器使配置生效。
- 确认
3. iptables 防火墙拦截
- 现象:请求到达 Director 后未被转发,
ipvsadm
日志无记录。 - 排查:检查调度器的 iptables 规则是否拦截了 VIP 流量。
- 解决:
- 开放 VIP 的 HTTP/HTTPS 端口:
iptables -A INPUT -d 192.168.10.100 -p tcp --dport 80 -j ACCEPT
- 关闭 iptables(测试环境适用):
systemctl stop firewalld && systemctl disable firewalld
- 开放 VIP 的 HTTP/HTTPS 端口:
(二)负载分配不均
1. 调度算法配置错误
- 现象:
ipvsadm -ln
显示某台 Real Server 连接数远高于另一台。 - 排查:确认调度算法是否正确(如轮询
rr
、加权轮询wrr
),权重配置是否一致。 - 解决:
- 重置策略并重新添加 Real Server:
ipvsadm -C ipvsadm -A -t VIP:80 -s wrr # 使用加权轮询 ipvsadm -a -r RealServer1 -g -w 2 # 权重设为2 ipvsadm -a -r RealServer2 -g -w 1 # 权重设为1
- 重置策略并重新添加 Real Server:
2. Real Server 性能差异
- 现象:高性能节点负载低,低性能节点负载高。
- 解决:根据服务器配置调整权重(
-w
参数),性能强的节点分配更高权重。
七、性能优化与扩展策略
(一)内核参数调优
1. TCP 连接优化
在 Director Server 和 Real Server 中调整以下参数,提升 TCP 处理效率:
vim /etc/sysctl.conf
# 快速回收TIME_WAIT连接
net.ipv4.tcp_fin_timeout=30
# 允许重用TIME_WAIT连接的端口
net.ipv4.tcp_tw_reuse=1
# 增加TCP半连接队列长度
net.ipv4.tcp_max_syn_backlog=8192
sysctl -p
2. IPVS 连接超时设置
缩短空闲连接超时时间,释放资源:
ipvsadm -E -t VIP:80 -s rr -p 60 # 设置连接保持时间为60秒
(二)高可用扩展
1. 主备调度器(Keepalived)
为避免 Director 单点故障,引入 Keepalived 实现双机热备:
- 配置要点:
- 主备调度器共享虚拟 IP(VIP)。
- 通过 VRRP 协议监控主节点状态,故障时自动切换。
- 参考命令:
yum install keepalived # 安装Keepalived # 主节点配置(/etc/keepalived/keepalived.conf) vrrp_instance VI_1 {state MASTERinterface ens33virtual_router_id 51priority 100virtual_ipaddress {192.168.10.100} }
2. 横向扩展 Real Server
当集群负载超过现有节点处理能力时,可直接添加新的 Real Server 至ipvsadm
策略,无需停机:
ipvsadm -a -t VIP:80 -r 192.168.10.105 -g -w 1 # 添加新节点
八、LVS-DR 与其他负载均衡方案对比
方案 | 核心原理 | 优势 | 局限性 | 适用场景 |
---|---|---|---|---|
LVS-DR | 二层转发 + MAC 重写 | 高性能、低延迟、流量分离 | 依赖同一局域网 | 大规模高并发集群 |
Nginx | 七层代理(HTTP/HTTPS) | 支持 URL 路由、缓存、动态负载均衡 | 单机性能有限(万级连接) | 应用层负载均衡(如 Web) |
HAProxy | 四层 / 七层代理 | 支持 TCP/UDP、健康检查、会话保持 | 配置复杂度较高 | 混合协议场景 |
云厂商 SLB | 托管式负载均衡 | 自动扩展、高可用 | 依赖云平台、成本较高 | 云原生架构 |
九、总结与实践建议
(一)最佳实践清单
- 网络规划:确保 Director 与 Real Server 在同一 VLAN,使用交换机而非路由器连接(避免三层转发)。
- 配置验证:
- 部署后通过
arp -n
检查客户端是否获取 Director 的 MAC 地址(正常应为调度器 MAC)。 - 使用
tcpdump
抓包分析请求 / 响应路径,确认响应报文直接由 Real Server 发出。
- 部署后通过
- 监控体系:
- 监控 Director 的 CPU / 内存使用率(避免成为瓶颈)。
- 监控 Real Server 的负载、连接数及健康状态(可结合 Nagios 或 Prometheus)。
(二)学习路径推荐
- 基础巩固:深入理解 IPVS 内核模块原理(参考《Linux 内核源代码情景分析》)。
- 实战进阶:在测试环境中尝试混合使用 LVS-DR 与 Nginx(LVS 负责四层分发,Nginx 处理七层逻辑)。
- 前沿探索:研究 Kubernetes 中 LVS 的应用(如 kube-proxy 的 IPVS 模式)。
相关文章:
LVS的DR模式部署
目录 一、引言:高并发场景下的流量调度方案 二、LVS-DR 集群核心原理与架构设计 (一)工作原理与数据流向 数据包流向步骤3: (二)模式特性与53网络要求 三、实战配置:从9环境搭建到参数调整…...

TRS收益互换平台开发实践:从需求分析到系统实现
一、TRS业务概述 TRS(Total Return Swap)收益互换是一种金融衍生工具,允许投资者通过支付固定或浮动利息,换取标的资产(如股票、指数)的收益权。典型应用场景包括: 跨境投资ÿ…...

测试Bug篇
本节概要: 软件测试的生命周期 bug的概念 buh要素 bug等级 bug生命周期 对于bug的定级与开发发生冲突如何解决 一、 软件测试的⽣命周期 软件测试贯穿于软件的整个生命周期,针对这句话我们⼀起来看⼀下软件测试是如何贯穿软件的整个生命周期。 软…...

【Linux系统移植】Cortex-A8 Linux系统移植(超详细)
目录 前言 一、ARM开发板ARM简介RISC和CISCARM产品分布核心板S5pv210 SOC嵌入式系统开发方式 二、嵌入式系统组成为什么要系统移植内核移植框图 三、嵌入式开发环境搭建搭建开发环境总流程设置ubuntu与windows共享目录修改用户为root用户安装NFS服务器安装tftp服务器安装交叉编…...

第十五届蓝桥杯大赛软件赛国赛Python 大学 C 组试做【本期题单: 设置密码、栈】
早上好啊大伙,这一期依旧是蓝桥杯备赛刷题的记录。 本期题单:设置密码、栈 前言 前段时间准备省赛,运气好进国赛了。所以就开始准备6月份的国赛。但是近期还有别的比赛要准备,所以刷题的速度比较慢,可能每一期就会有一…...

报错SvelteKitError: Not found: /.well-known/appspecific/com.chrome.devtools.json
报错信息 SvelteKitError: Not found: /.well-known/appspecific/com.chrome.devtools.json 解决方案一 更新所有依赖 npm update解决方案二(不一定成功) src\lib\hooks.server.ts,每次请求服务器时执行 import type { Handle } from &…...

word添加页眉
问题一: 为word文档添加页眉。 方法: 1、在要添加页眉的第一页页面顶端双击页眉区域,如果添加页眉页上面还有其他页或者与上一页添加页眉内容不同,记得取消“链接到前一节”(点击使其上面没有灰色即可)&…...
JavaScript 中的 BigInt:当普通数字不够“大“时的救星
前言 大家好!今天我们要聊一聊 JavaScript 中那个"大"到不行的数据类型 —— BigInt。如果你曾经因为 JavaScript 的数字精度问题而抓狂,或者好奇为什么 9007199254740992 9007199254740993 会返回 true,那么这篇文章就是为你准备…...
通过mailto:实现web/html邮件模板唤起新建邮件并填写内容
一、背景 在实现网站、html邮件模板过程中,难免会遇到需要通过邮箱向服务提供方发起技术支持等需求,因此,我们需要通过一个功能,能新建邮件并提供模板,提高沟通效率 二、mailto协议配置说明 参数描述mailto:nameema…...

2025推客系统小程序开发:独立部署源码交付,高性价比裂变增长引擎
在私域流量争夺白热化的今天,源码独立部署的推客系统小程序已成为企业构建自主分销体系、降低获客成本的核心利器。基于成熟案例与技术沉淀,我们提供安全可控、高性价比的一站式解决方案,助力企业快速搭建专属推客生态,实现长效增…...
【Python零基础入门系列】第6篇:Python 的数据结构世界(列表、字典、集合、元组)
欢迎来到 Python 零基础入门系列的第六篇! 前面我们学会了写 Hello World、掌握了变量与数据类型、学会了控制程序流程,还能写写函数、读读文件。现在,我们要走进 Python 的数据结构世界,这也是写程序时最核心的一环之一。 你可以把“数据结构”理解成放数据的容器,或者是…...
MVCC 原理与并发控制实现
MVCC 原理与并发控制实现 1. MVCC 基本概念 MVCC(Multi-Version Concurrency Control,多版本并发控制)是现代数据库系统中实现并发控制的核心技术之一。与传统的锁机制不同,MVCC通过维护数据的多个版本来实现非阻塞读取。 关键结论:MVCC的核…...

CentOS 7.0重置root密码
文章目录 版本:CentOS 7.0内核版本:CentOS Linux, with Linux 3.10.0-123.el7.x86_64 服务器重启后,等待进入上述页面,按⬆⬇键,中断正常启动。在此页面按E,进入编辑模式 继续按⬇,找到linux16…...

YOLOV11改进策略【最新注意力机制】CVPR2025局部区域注意力机制LRSA-增强局部区域特征之间的交互
1.1网络结构 1.2 添加过程 1.2.1 核心代码 import torch import torch.nn as nn import torch.nn.functional as F from einops import rearrangedef patch_divide(x, step, ps):"""Crop image into patches.Args:x (Tensor): Input feature map of shape(b, …...
3D建模的全景图谱:从55个工具到元宇宙的数字革命
3D建模已从专业工程师的工具箱演变为全民创作的数字语言。从代码驱动的精确建模到AI自动生成纹理,从开源协作到程序化生成城市,技术正重塑我们创造虚拟世界的方式。本文将系统解析55个核心3D建模工具/插件,涵盖在线编辑器、开源软件、程序化生…...
Kotlin 活动事件通讯跳转深度讲解
在 Android 开发的浩瀚海洋中,活动(Activity)间的事件通讯与跳转犹如构建复杂应用程序的桥梁与纽带,而 Kotlin 语言的加入,更是为这一过程注入了简洁、优雅与高效的活力。本文将深入剖析 Kotlin 开发中安卓活动事件通讯跳转的方方面面,从基础概念到高级技巧,从代码示例到…...
vue + ant-design + xlsx 实现Excel多Sheet页导出功能
Vue Ant Design 扩展:实现Excel多Sheet页导出功能 引言 在复杂业务场景中,单一Sheet页已无法满足数据展示需求。本文将演示如何基于Vue3 Ant Design Vue xlsx技术栈,实现以下高级导出功能: 动态多Sheet页生成复杂数据集关联…...
关于 Web 安全:6. 常见 CMS 开源系统风险点
一、WordPress 开源内容管理系统(CMS),使用 PHP MySQL 构建; 全球超过 40% 网站使用; 支持插件、主题系统,功能可扩展性极强; 也是风险点最多的系统之一,插件/主题贡献了大部分…...

DAY33 简单神经网络
你需要自行了解下MLP的概念。 你需要知道 梯度下降的思想激活函数的作用损失函数的作用优化器神经网络的概念 神经网络由于内部比较灵活,所以封装的比较浅,可以对模型做非常多的改进,而不像机器学习三行代码固定。 1. 神经网络的概念 (Th…...

OBOO鸥柏丨2025年鸿蒙生态+国产操作系统触摸屏查询一体机核心股
在信创产业蓬勃发展的当下,OBOO鸥柏积极响应纯国产化号召,推出基于华为鸿蒙HarmonyOS操作系统的触摸屏查询一体机及室内外场景广告液晶显示屏一体机上市,OBOO鸥柏品牌旗下显示产品均采用国产芯片,接入终端控制端需支持安卓Windows…...

【观成科技】Ymir勒索软件组织窃密木马RustyStealer加密通信分析
1.概述 Ymir勒索软件首次发现于2024年7月,采用ChaCha20加密算法对受害者文件进行加密,加密文件后缀为.6C5oy2dVr6。在攻击过程中,Ymir勒索组织利用名为RustyStealer的窃密木马获取受害企业的账号凭证,为后续横向移动和权限提升奠…...

Vuer开源程序 是一个轻量级的可视化工具包,用于与动态 3D 和机器人数据进行交互。它支持 VR 和 AR,可以在移动设备上运行。
一、软件介绍 文末提供程序和源码下载 Vuer开源程序 是一个轻量级的可视化工具包,用于与动态 3D 和机器人数据进行交互。它支持 VR 和 AR,可以在移动设备上运行。 二、Our features include: 我们的功能包括: light-weight and performa…...
浅谈学习(费曼学习法)
我们在学习的过程中常常会面临遗忘的问题。 欸,之前明明学过,怎么感觉模模糊糊的,忘记了,当然。。。有可能是因为当时就没有听懂。 但是我经常会有一种情况,我觉得自己当时明明听懂了,理解了呀࿰…...
高光谱成像相机:表型技术在林业育种和精确林业的应用
在林木育种和精确林业管理中,表型数据的精准获取与分析是破解基因型-环境-表型互作关系的关键。传统人工测量方式存在效率低、维度单一、破坏性强等局限,而高光谱成像技术凭借其多波段、高分辨率和非接触式的优势,成为林业表型研究的重要工具…...
iOS App启动优化(冷启动、热启动)
App启动优化是提升用户体验的关键环节,主要针对冷启动和热启动进行针对性优化。 冷启动与热启动的定义 冷启动(Cold Launch) 场景:App进程不存在,需系统创建新进程并完成完整初始化(如首次启动或进程被杀死…...

短视频一键搬运 v1.7.1|短视频无水印下载 一键去重
短视频一键搬运是一款全自动智能处理软件,专为短视频创作者设计。它自带去水印、改MD5码、视频去重、视频编辑等功能,能够高效处理大量视频,解放双手并降低成本。该软件支持从多个短视频平台无缝提取视频并去除水印,同时检测敏感词…...

海上石油钻井平台人员安全管控解决方案
一、行业挑战与需求分析 海上钻井平台面临复杂环境风险(如易燃易爆、金属干扰、极端气象)和人员管理难题(如定位模糊、应急响应延迟)。传统RFID或蓝牙定位技术存在精度不足(1-5米)、抗干扰能力差等问题&am…...
(25年5.28)ChatGPT Plus充值教程与实用指南:附国内外使用案例与模型排行
更多具体来源:查看原文 ChatGPT Plus 充值教程 由于国内卡无法直接充值 chatgpt,通常需要借助虚拟卡。目前咱们常用的方式是通过虚拟卡平台获取。因平台审核要求这里不细说,具体看原文。 ChatGPT Plus主要使用方向 ChatGPT Plus 提供了更…...
“以光惠算”走进校园,湖北大学用F5G-A全光网赋能智慧校园
SUN的联合创始人约翰盖奇,曾在1984年提出过一个大胆的猜想——“网络就是计算机”。 到了大模型时代,40多年前的猜想被赋予了新的内涵。大模型训练和推理所需的资源,远超单台计算机的承载能力,涌现出了新的网络范式:大…...
stm32cube ide如何生成LL库工程
在 STM32Cube IDE 里生成使用 LL(Low Layer)库的工程,可按以下步骤操作: 1. 新建 STM32 工程 启动 STM32Cube IDE,选择File→New→STM32 Project。依据需求挑选目标 MCU 型号,接着点击Next。 2. 配置工程…...