[转帖]使用Red Hat Enterprise Linux的实时内核

使用,red,hat,enterprise,linux,实时,内核 · 浏览次数 : 0

小编点评

**实时内核** 实时内核是一种经过优化的内核,旨在满足不同的业务或系统要求。它与标准内核不同,专注于保持低延迟、一致响应时间和确定性。 **关键功能:** * 降低延迟 * 提高响应速度 * 确保任务优先级 * 使用调度策略进行任务执行 * 提供测量和配置响应时间的机会 **安装 RHEL 实时内核:** 1. 从 Red Hat 客户门户网站下载并配置名为 RHEL 的 ISO 实时映像。 2. 执行群组安装,以同时安装所有 RT 特定软件包。 3. 验证所有相关软件包。 4. 重启系统,然后从启动控制台中选择 kernel-rt。 **与标准 RHEL 的比较:** | 特征 | 实时内核 |标准 RHEL | |---|---|---| | 目标 | 满足不同业务或系统要求 | 面向吞吐量的操作和任务调度 | | 延迟 | 低 | 高 | | 响应时间 | 高 | 低 | | 优先级 | 低 | 高 | |调度策略 | SCHED_FIFO 或 SCHED_RR | 默认使用 SCHED_FIFO 或 SCHED_RR | | 中断 | 使用专用 CPU 将进程彼此隔离 | 使用调度机制进行任务执行 | **结论:** 运行实时内核可以显著提高应用程序的性能,并改善系统响应能力。对于许多应用程序来说,实时内核是一个值得考虑的优化选择。

正文

运行实时内核并评估其对应用程序的潜力和性能优势是值得的。

https://www.redhat.com/sysadmin/real-time-kernel

目录

什么是实时内核?

实时安装RHEL

Wrap up


 

实时内核功能在开源生态系统中已经存在了十多年。同样,红帽企业Linux(RHEL)对实时内核的支持已经使用了几年。但是,许多系统管理员仍然误解了其核心概念和实际操作行为。在本文中,我描述了它的一些关键功能,与标准内核的区别以及快速安装步骤。

最初,红帽推出了一种名为“红帽企业MRG”的产品,其中MRG代表消息传递,实时和网格。MRG 2基于RHEL 5和RHEL 6版本,而MRG 3完全基于RHEL6。从RHEL 7开始,不推荐使用MRG产品,并且将“ RHEL for Real-Time ”作为单独的产品推出。

 

什么是实时内核?


实时内核不一定优于或优于标准内核。相反,它满足不同的业务或系统要求。它是经过优化的内核,旨在维持低延迟,一致的响应时间和确定性。通过比较,标准RHEL内核专注于面向吞吐量的操作和任务的合理调度。实时内核也称为kernel-rtpreempt-rt

标识实时内核的最简单方法是uname -r在终端上执行命令,然后在内核版本中查找rt关键字。如果缺少rt,则系统使用标准内核。

以下输出是一个示例:

  1. #uname -r
  2. 3.10.0-1127.10.1.rt56.1106.el7

一些重要的kernel-rt机制包括:

  • 在重负载下检查任务的优先级(1-99)。
  • 高优先级(99)的任务将优先执行CPU。
  • 不使用完全公平调度(CFS)策略。
  • 使用中的调度策略为SCHED_FIFO或SCHED_RR。
  • 保持低延迟执行时间。
  • 提供测量,记录和配置响应时间的机会。

为了进一步了解kernel-rt与标准内核有何不同,下图说明了使用可以kernel-rt在系统中保持较低的延迟和响应时间。

在上图中,蓝色曲线表示已调整的标准RHEL7内核上的响应时间(ms),而绿色点表示已调整的RHEL7上的响应时间(ms)kernel-rt。绿色部分显示一致性,低延迟和低响应时间。要进一步研究该图和相关测试,请参考Red Hat官方指南“为何使用Red Hat Enterprise Linux实时优化延迟”

下面,我列出了一些其他差异,这些差异对于将RHEL for Real Time与标准RHEL进行比较至关重要:

  • Kexec和vmcore-安装和配置与标准RHEL相同。
  • 第三方模块-所有模块在使用kernel-rt前都必须重新编译。
  • irqbalance 守护程序-默认情况下禁用。
  • 调度策略-仅使用SCHED_FIFO或SCHED_RR。
  • 中断(IRQ)-使用专用CPU将进程彼此隔离。

 

实时安装RHEL


让我们进行快速安装,并观察安装中的其他软件包kernel-rt。单独的ISO映像kernel-rt可用于全新配置。用户/管理员还可以kernel-rt在现有的标准RHEL系统上安装RPM软件包,然后重新引导。

第1步:从Red Hat客户门户网站下载和配置名为RHEL的ISO实时映像。您也可以使用现有的标准RHEL框并启用rhel-7-server-rt存储库以获取kernel-rt软件包。

步骤2:执行群组安装,以同时安装所有RT特定软件包。

步骤3:验证所有相关软件包。

步骤4:重新启动系统,然后kernel-rt从启动控制台中选择。

用户应执行RT组安装,因为它提供了所有必需的kernel-rt依赖程序包。下表显示了简短的从属软件包详细信息:

  • kernel-rt-实时内核
  • rt-setup-RT环境设置的最关键软件包。
  • rtctl-配置内核线程的调度优先级。
  • rt-test,rt-checks,rteval-用于测试系统功能和负载。

让我给您一个非常简短的实际场景,说明为什么RT组安装至关重要。领先的电信客户之一是在HP ProLiant BL460c Gen9计算机上运行实时RHEL内核(3.10.0-693.11.1.rt56.632.el7)作为三刀片集群环境。他们观察到群集环境中的流量延迟和超时。丢失或丢弃了大量UDP自检测信号(HB)数据包。我们观察到,有与网卡或群集模块上没有任何问题,一旦我们分析 pcapstrace数据包。进一步的诊断表明,该rt-setup包装丢失了,因为kernel-rt没有任何从属包装就强行安装了该包装。

环境在7天内错过了HB使用rt设置在7天内错过了HB
主机名-a121380
主机名-a131130
主机名-a141185

 

 

 

 

 

rt-setup程序包负责配置和运行 rt-entsk守护程序,以防止IPI生成和实时任务延迟。

以下项目要点显示了rt-setup(v2.0-6)的一些关键功能 :

  • 创建实时组。
  • 添加PAM的实时限制配置。
  • 添加/usr/bin/rt-setup-kdump以在RT中配置kdump。
  • 为线程irq和/dev/rtc访问添加udev特定的规则。
  • 添加/usr/bin/slub_cpu_partial_offcpu_partials在SLUB中关闭。
  • 添加网络套接字时间戳静态密钥守护程序(rt-entsk)。

 

Wrap up


运行实时内核并评估其潜力是值得的,因为许多应用程序都可以从中受益。Kernel-rt可以进行调整以进一步减少性能问题。ftraceRHEL提供了诸如Real-Time的工具,这些工具对于分析和调试延迟问题非常有用。但是,这些详细信息不在本文的讨论范围之内。

实时内核已经存在很长时间了,但是许多系统管理员不确定如何使用它。在本文中,我定义了实时内核的功能。我还为您提供了有关如何安装它的信息。也许实时内核将帮助您的组织实现更高的Linux性能!

https://www.redhat.com/sysadmin/real-time-kernel

文章知识点与官方知识档案匹配,可进一步学习相关知识
CS入门技能树Linux入门初识Linux25539 人正在系统学习中

与[转帖]使用Red Hat Enterprise Linux的实时内核相似的内容:

[转帖]使用Red Hat Enterprise Linux的实时内核

运行实时内核并评估其对应用程序的潜力和性能优势是值得的。 https://www.redhat.com/sysadmin/real-time-kernel 目录 什么是实时内核? 实时安装RHEL Wrap up 实时内核功能在开源生态系统中已经存在了十多年。同样,红帽企业Linux(RHEL)对实

[转帖]Linux系统下rpm命令使用详解

简介 rpm命令是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。 rpm命令十分

[转帖]IO虚拟化——SR-IOV 原理

摘要: 介绍SR-IOV 的概念、使用场景、VMware 和 KVM 中的配置方法。 第一部分:虚拟化通信延迟: 第二部分:IO 虚拟化 第三部分:SR-IOV 第四部分:Intel网卡在VMware 环境 实现 SR-IOV 需要的条件和配置方法 第五部分:SR-IOV 在Red Hat Virt

[转帖]Linux操作系统使用RPMBUILD命令打包RPM的详细步骤

https://www.cnblogs.com/zhangxinglong/p/11904922.html 首先,我们需要了解一些预备知识,在旧版本的CentOS中,rpmbuild工具默认的工作路径是/usr/src/redhat,因为权限原因,一般用户身份不能制作rpm软件包,只能切换到root

[转帖]openGauss单机部署

作者:可达 openGauss单机部署 一、安装环境 1.操作系统:虚拟机VMware、CentOS7.9 2.环境设置: (1)虚拟机内存3G、磁盘100G (2)系统版本修改 一开始使用了centos8,无法安装,因此降低版本,选用7.9后依然存在一些问题,因此修改/etc/redhat-rel

[转帖]Redhat、CentOS添加静态路由的方法

https://www.diewufeiyang.com/post/1174.html 我们经常遇到需要在系统默认路由的基础上,额外添加静态路由的需求。为了使得下次系统启动这些静态路由依旧生效,我们可能采取在rc.loal里加入route命令追加静态路由的方法。 现在给大家推荐Redhat建议的方法

[转帖]Redis SCAN命令详解

https://www.jb51.net/article/257083.htm 处理一下.. SCAN 命令是一个基于游标的迭代器,每次被调用之后, 都会向用户返回一个新的游标, 用户在下次迭代时需要使用这个新游标作为 SCAN 命令的游标参数, 以此来延续之前的迭代过程,这篇文章给大家介绍了Red

[转帖]使用JMX服务监控Java程序性能

https://www.jianshu.com/p/3c3c836c1c20?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation 背景 单机收集服务器需要性能监控和测试。 JMX

[转帖]使用 tc netem 模拟网络异常

https://cizixs.com/2017/10/23/tc-netem-for-terrible-network/ 在某些情况下,我们需要模拟网络很差的状态来测试软件能够正常工作,比如网络延迟、丢包、乱序、重复等。linux 系统强大的流量控制工具 tc 能很轻松地完成,tc 命令行是 ipr

[转帖]使用 sysdig 进行监控和调试 linux 机器

https://cizixs.com/2017/04/27/sysdig-for-linux-system-monitor-and-analysis/ sysdig 简介 sysdig 官网 上对自己的介绍是: Open Source Universal System Visibility With