[转帖]openeuler22.03实时系统安装及部署

openeuler22,实时,系统,安装,部署 · 浏览次数 : 0

小编点评

## 内容生成指南 **主题**: openEuler 22.03 LTS Preempt_RT 内核实时补丁 **目标**: 用户能够了解 openEuler 22.03 LTS Preempt_RT 内核实时补丁的功能和操作方法,并能够按照步骤进行安装和配置。 **内容**: * ** Introduction** * 介绍 openEuler 22.03 LTS Preempt_RT 内核实时补丁的功能。 * 介绍 Preempt_RT 内核实时补丁的技术优势。 * ** 功能** * 详细介绍 Preempt_RT 内核实时补丁的功能包括: * 实时监控 CPU 核心负载。 * 预先抢占 CPU 核心资源。 * 避免系统被 CPU 核心资源抢占。 * 展示 Preempt_RT 内核实时补丁的操作步骤。 * ** 安装和配置** * 说明如何安装和配置 Preempt_RT 内核实时补丁。 * 展示安装和配置过程中需要需要注意的步骤。 * ** 测试** * 介绍如何测试 Preempt_RT 内核实时补丁的功能。 * 展示测试结果。 * ** FAQ** * 回答常见问题。 **排版**: * 使用简单的排版,方便用户阅读。 * 将内容与官方知识档案匹配,方便用户学习相关知识网络技能树首页概览23346 人正在系统学习中。 * 使用图片和视频等辅助材料,帮助用户更加理解内容。 **其他**: * 使用标题和关键词,帮助用户快速找到内容。 * 使用图片和视频等辅助材料,帮助用户更加理解内容。 * 将内容与官方知识档案匹配,方便用户学习相关知识网络技能树首页概览23346 人正在系统学习中。

正文

openEuler预言

openEuler特性

  • 融进了中科院软件所贡献的 RISC-V 新指令集架构支持
  • 内核的多核扩展性能力大大增强,提升了 CPU 多核的并行度,性能提升 20%
  • 采用轻量级虚拟化引擎 StratoVirt,一套架构支持虚机、安全容器、Serverless 三种场景,单虚机启动时间小于 50ms
  • 可通过Preempt_RT内核补丁支持实时系统
  • 进程调度优化:优化进程负载均衡算法,减少负载均衡过程中的开销,提升性能
  • 内核动态抢占:新增启动选 preempt=none/voluntary/full,允许内核动态切换抢占模式
  • mremap 性能优化:通过移动 PMD/PUD 级别的表项,加速映射大块内存的速
  • TLB 并发刷新支持:本地 TLB 和远端 TLB 刷新并行,优化 TLB shootdown 流程加速 TLB 刷新,提升业务性能
  • 大页 vmalloc 性能优化:对于超过 huge page 的最小 size 的空间进行 vmalloc() 分配时,将会尝试使用 huge
    page 而不是 base page 来映射内存,改善 TLB 的利用,降低 TLB miss
  • SVA(Shared Virtual Addressing)支持:进程虚拟地址在主机进程和设备间共享,实现资源跨主机与设备免拷
    贝复用,提升跨主机和设备业务通讯性能
  • XDP(eXpress Data Path)支持:基于 ebpf 的一种高性能、用户可编程的网络数据包传输路径,在网络报文还未
    进入网络协议栈之前就对数据进行处理,提升网络性能。可用于 DDOS 防御、防火墙、网络 QOS 等场景
  • OOM 内存回收算法:在发生 OOM 时,优先对低优先级的进程组进行内存回收,保障在线业务的正常运行
  • 支持 PAC (Pointer Authentication Code)特性:在使用寄存器的值作为指针访问数据或代码之前验证其内容,抵
    御 ROP/JOP 攻击
  • 内存可靠性分级技术:通过对不同可靠性等级的内存分级管理,可以支持内核、关键进程、内存文件系统、文件缓
    存使用高可靠内存,避免内存多 bit 故障引起内核复位
  • 动态大页技术:支持对大页进行拆分和合并的功能,从而使得绑定到 memcg 的进程可以使用 1G/2M/4K 三种页。
    当大页资源不足时,可以动态配置大页资源,避免系统重启,减少业务中断时间
  • 内存 RAS 容错增强:支持 copy_from_user 读操作时,发生内存多 bit 错误,系统不复位。可以通过杀掉受影响
    的进程,而避免内核复位
  • per memcg lru lock:采用 per memcg lru_lock,减少云原生容器实例锁竞争,提升系统性能
  • 大页内存管理优化:通过共享映射方式将 HugeTLB 管理页中无实际作用的 tail 页释放掉,降低大页内存管理结构的
    开销
  • 内存分级扩展: 内存分级扩展通过 DRAM 和低速内存介质,如 SCM、AEP,以及 RDMA 远端内存等形成多级内存,通过内存自动调度
    让热数据在 DRAM 高速内存区中运行,让冷数据交换到低速内存区,从而增加内存容量,保证核心业务高效平稳运行。
  • 友好桌面环境 UKUI

安装方式

服务器安装要求

安装 openEuler 22.03-LTS 所需的最小硬件要求如下所示

部件名称最小硬件要求
CPU鲲鹏 920(架构为AArch64)x86-64(Skylake以上)
内存不小于8GB
硬盘不小于120GB

通过USB盘安装

  • 下载openEuler 22.03 LTS镜像,进入https://repo.openeuler.org/openEuler-22.03-LTS/ISO/x86_64/下载以下文件

    1. openEuler-22.03-LTS-x86_64-dvd.iso
    2. openEuler-22.03-LTS-x86_64-dvd.iso.sha256sum
  • 使用sha256sum命令校验iso文件的完整性

    sha256sum openEuler-22.03-LTS-x86_64-dvd.iso
    cat openEuler-22.03-LTS-x86_64-dvd.iso.sha256sum //对比哈希值是否相同
    
    • 1
    • 2
  • 使用UltraISO软件制作镜像,建议使用版本uiso9_cn版本进行制作,插入U盘,格式化U盘后,打开软件

    打开镜像文件
    在这里插入图片描述

    依次点击启动->写入硬盘映像
    在这里插入图片描述

  • 启动盘制作完成后,进入U盘,打开isolinux/isolinux.cfg文件, 将openEuler-22.03-LTS-x86_64替换成openEluler-2(启动盘制作完成后的盘名称)

  • 修改完成后,插入服务器,重启服务器,按F2进入BIOS,然后设置U盘优先启动,保存退出

  • 进入安装引导界面,按e键进入编辑页面,将 vmlinuz initrd=initrd.imginst.stage2=hd:LABEL=… quiet 改为:vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 quiet,然后按下F10键保存进入安装界面,如下图所示:

在这里插入图片描述

  • 进入安装图像界面后,按照官网文档操作即可,https://docs.openeuler.org/zh/docs/22.03_LTS/docs/Installation/%E5%AE%89%E8%A3%85%E6%8C%87%E5%AF%BC.html 注意:

    1:软件选择时,选择服务器,选中所有软件,安装即可。

    2: 网络和主机名中选择默认网络,配置IP及其它信息。

  • 系统安装完成, 拔出U盘

网络配置

cd /etc/sysconfig/network-scripts目录,打开ifcfg-eth0网络配置文件,添加或者修改信息,按照如下配置进行修改

TYPE="Ethernet"
DEVICE="eth0"
UUID="6ed6a6f2-8538-42fc-9a00-7cedb666c49c"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR="10.156.4.234"
NETMASK="255.255.255.0"
GATEWAY="10.156.4.254"
IPV6INIT="yes"
DNS1="10.151.6.6"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

修改完成后,一次执行如下命令

nmcli c reload
nmcli d connect  eth0
  • 1
  • 2

安装UKUI图像界面

UKUI是麒麟软件团队历经多年打造的一款Linux 桌面,主要基于 GTK 和 QT开发。与其它UI界面相比,UKUI更加注重易用性和敏捷度,各元件相依性小,可以不依赖其它套件而独自运行,给用户带来亲切和高效的使用体验。

  • 首先执行
sudo dnf update
  • 1
  • 然后执行
sudo dnf install ukui
  • 1
  • 最后以图形界面启动配置, 重启系统,之后就可以看到界面。
systemctl set-default graphical.target
  • 1

在这里插入图片描述

实时系统

openEuler 22.03 LTS 版本新增了 Preempt_RT 内核实时补丁,提供软实时特性。该特性由 Industrial-Control SIG 引入,并得到 Kernel SIG、Embedded SIG 和 Yocto SIG 配合与支持,已经被集成到openEuler 22.03 LTS Server 和 openEuler 22.03 LTS Embedded 中

当前 Preempt_RT 主要特性

  • 临界区可抢占
  • 中断处理程序可抢占
  • 关中断代码序列可抢占
  • 带有优先级继承机制的内核自旋锁和信号量
  • 线程化处理 RCU
  • 降低延迟措施

部署方法

二进制部署

二进制部署可以安装 openEuler 22.03 LTS 官方源中 rpm 包,需要 root 权限,命令如下:

#yum install kernel-rt
  • 1

完成安装后重启设备,在 GRUB 引导界面选择 Preempt_RT 内核openEuler (5.10.0-60.18.0.rt62.52.oe2203.aarch64) 22.03 LTS即可。启动后查看内核,即完成 openEuler 22.03 LTS Preempt_RT 二进制部署。

#uname -r
5.10.0-60.18.0.rt62.52.oe2203.aarch64
  • 1
  • 2

实时性能测试

  • 测试环境
版本名称来源
openEuler 22.03 LTS kernel 内核openEuler 22.03 LTS 官方源
openEuler 22.03 LTS kernel-rt 内核openEuler 22.03 LTS 官方源
  • 测试硬件环境
硬件型号硬件配置信息备注
飞腾 D2000CPU:8 核 内存:8GB 存储设备:SSD台式机
树莓派 4BCPU:Cortex-A72 * 4 内存:8GB 存储设备:SanDisk Ultra 16GB micro SD开发板
飞腾 2000CPU:4 核 内存:16GB 存储设备:SSD台式机
  • 测试软件
测试软件功能软件版本
rt-test(cyclictest)通过 cyclictest 工具,每项测试 1000 万次,输出平均延迟(Avg)和最大延迟(MAX)1.00
stress压力测试工具,用于模拟测试 CPU 负载,内存负载,IO 负载等1.0.4
iperf3网络测试工具,用于模拟测试网络负载3.6
memtester内存测试工具,用于模拟测试内存负载4.5.1
shell 脚本用于轮询测试,测试信息的收集整理
  • 测试结果
平台CPU 负载内存负载IO 负载网卡负载
飞腾 D2000(非 RT 内核)5.243.1212.82.7
树莓派 4B(非 RT 内核)0.82.71.00.7
飞腾 2000(非 RT 内核)0.81826.81.9
飞腾 D2000(RT 内核)1.019.226.220.6
树莓派 4B(RT 内核)0.91.24.21.0
飞腾 2000(RT 内核)1.02.24.51.7

由上表可知,在有负载的情况下,RT内核实时性较为稳定(值越小越稳定)

FAQ

安装时,其它问题FAQ, 可参考官网FAQ说明,FAQ网址:

https://docs.openeuler.org/zh/docs/22.03_LTS/docs/Installation/FAQ.html

文章知识点与官方知识档案匹配,可进一步学习相关知识
网络技能树首页概览23346 人正在系统学习中

与[转帖]openeuler22.03实时系统安装及部署相似的内容:

[转帖]openeuler22.03实时系统安装及部署

openEuler预言 openEuler特性 融进了中科院软件所贡献的 RISC-V 新指令集架构支持内核的多核扩展性能力大大增强,提升了 CPU 多核的并行度,性能提升 20%采用轻量级虚拟化引擎 StratoVirt,一套架构支持虚机、安全容器、Serverless 三种场景,单虚机启动时间小

[转帖]openEuler 22.03 LTS 新特性解读 | Preempt_RT

https://www.modb.pro/db/392580 来自 Industrial-Control SIG的郭皓 将在 openEuler Developer Day 2022 分享 《openEuler在嵌入式和实时性方面的思考与实践》 欢迎大家观看直播 openEuler 22.03 LT

[转帖]国产操作系统openEuler22.03配置yum源

https://www.modb.pro/db/600208 本文选用的操作系统版本是openEuler22.03-LTS。openEuler是指操作系统的品牌英文名,中文名“欧拉”;22.03是指版本号(openEuler以年月为版本号,22.03表示2022年03月发布的版本),LTS(Long

[转帖]openEuler 22.03 LTS 版本发布,已有 8 家伙伴计划推出商业发行版

https://zhuanlan.zhihu.com/p/500525072 4 月 13 日-15 日,欧拉开发者大会(openEuler Developer Day 2022)在线上和线下同步举行。大会以“一起创未来,欧拉更精彩”为主题,旨在推动 openEuler 在服务器、云计算、边缘计算和

[转帖]OpenEuler的简单使用.

RPM安装 本章节主要介绍在openEuler 22.03 LTS操作系统上,通过yum命令一键安装openGauss数据库。 支持的架构和操作系统版本 x86-64 openEuler 22.03 LTS ARM64 openEuler 22.03 LTS 仅在openEuler 22.03 LT

[转帖]SUSE Euler Linux 2.0 正式发布

https://blog.51cto.com/u_15127420/5592039 2022 年 6 月 16 日,SUSE 正式发布 SUSE Euler Linux 2.0。它是基于 openEuler 22.03 LTS 构建的企业级 Linux 操作系统,完全由中国团队打造,能够为中国本土企

[转帖]华为OpenEuler欧拉系统添加epel源方法

https://blog.whsir.com/post-7002.html 由于国产华为OpenEuler欧拉系统的版本命名是22.03、22.03这种,并且在查看版本的路径中是/etc/openEuler-release这种,这样就导致OpenEuler系统无法通过常规的epel源命令安装。 如果

[转帖]记录自己安装内存带宽测试工具——Stream过程

测试环境: CPU:Kunpeng 920 8Core MEM:16G Storage:200G OS:openEuler 20.03 (LTS-SP3) 1 服务器资源监控工具——Stream 1.1 编译安装——Stream 源码编译安装 ​ 下载源码: wget http://www.cs.v

[转帖]linux 查看CPU 内存的信息

https://bbs.huaweicloud.com/blogs/302929 【摘要】 ECS信息规格:2vCPUs | 4GiB | kc1.large.2镜像:openEuler 20.03 64bit with ARM | 公共镜像 linux 查看CPU 内存 硬盘的信息 查看CPU的信

[转帖]openGauss_3.1.0 企业版_x86_64安装教程

https://www.cnblogs.com/cjnlll/p/16849620.html 1. 安装环境 VMware、Xshell、Xftp openeuler操作系统 openEuler-20.03-LTS-x86_64安装教程:https://www.cnblogs.com/cjnlll/