diff --git a/app/.vitepress/public/img/banners/20250630-dyb-01.png b/app/.vitepress/public/img/banners/20250630-dyb-01.png new file mode 100644 index 0000000000000000000000000000000000000000..8d0754ec189e9cebe386da680d957f68902b3caa Binary files /dev/null and b/app/.vitepress/public/img/banners/20250630-dyb-01.png differ diff --git a/app/.vitepress/public/img/banners/20250704-hongkong-meetup-01.png b/app/.vitepress/public/img/banners/20250704-hongkong-meetup-01.png new file mode 100644 index 0000000000000000000000000000000000000000..6a0843a448a0b6faaa14657b5064ea3c36f1dcce Binary files /dev/null and b/app/.vitepress/public/img/banners/20250704-hongkong-meetup-01.png differ diff --git a/app/.vitepress/public/img/banners/20250704-yb-01.png b/app/.vitepress/public/img/banners/20250704-yb-01.png new file mode 100644 index 0000000000000000000000000000000000000000..bbafb27100ce039340f71e8dbbe67077e67245f2 Binary files /dev/null and b/app/.vitepress/public/img/banners/20250704-yb-01.png differ diff --git a/app/.vitepress/public/img/banners/20250718-openeuler-for-rva23-01.png b/app/.vitepress/public/img/banners/20250718-openeuler-for-rva23-01.png new file mode 100644 index 0000000000000000000000000000000000000000..e29a552a8d8052ed2ecfe560fc76d58e5d3a1030 Binary files /dev/null and b/app/.vitepress/public/img/banners/20250718-openeuler-for-rva23-01.png differ diff --git a/app/.vitepress/public/img/banners/20250808-yb-01.png b/app/.vitepress/public/img/banners/20250808-yb-01.png new file mode 100644 index 0000000000000000000000000000000000000000..8385d908337a56c85b47dc98d11bba61600f4ee9 Binary files /dev/null and b/app/.vitepress/public/img/banners/20250808-yb-01.png differ diff --git a/app/.vitepress/public/img/banners/20250819-ccf-intelligence-boom-01.png b/app/.vitepress/public/img/banners/20250819-ccf-intelligence-boom-01.png new file mode 100644 index 0000000000000000000000000000000000000000..b36334c825e9b083067046f2043243c401e5cd31 Binary files /dev/null and b/app/.vitepress/public/img/banners/20250819-ccf-intelligence-boom-01.png differ diff --git a/app/.vitepress/public/img/banners/20250819-sig-long-meetup.png b/app/.vitepress/public/img/banners/20250819-sig-long-meetup.png new file mode 100644 index 0000000000000000000000000000000000000000..f8ee4703f56ad27e98a8adb66e4e0fbd2a199713 Binary files /dev/null and b/app/.vitepress/public/img/banners/20250819-sig-long-meetup.png differ diff --git a/app/.vitepress/public/img/banners/index-01.png b/app/.vitepress/public/img/banners/index-01.png new file mode 100644 index 0000000000000000000000000000000000000000..c2e9f376b8aad09ee94186459b7b0adb550f8b82 Binary files /dev/null and b/app/.vitepress/public/img/banners/index-01.png differ diff --git a/app/.vitepress/public/img/banners/oerv-2025-riscv-china-summit.png b/app/.vitepress/public/img/banners/oerv-2025-riscv-china-summit.png new file mode 100644 index 0000000000000000000000000000000000000000..7821b4a45c2078e76123d1457482504ce5205cc9 Binary files /dev/null and b/app/.vitepress/public/img/banners/oerv-2025-riscv-china-summit.png differ diff --git a/app/.vitepress/public/img/banners/offline-technical-committee-meeting-01.png b/app/.vitepress/public/img/banners/offline-technical-committee-meeting-01.png new file mode 100644 index 0000000000000000000000000000000000000000..ea75635b7019a1e8df4a7163bb71ddb27ce9d06e Binary files /dev/null and b/app/.vitepress/public/img/banners/offline-technical-committee-meeting-01.png differ diff --git a/app/zh/blog/20250708-iSulad-brief-tutorial/20250708-iSulad-brief-tutorial.md b/app/zh/blog/20250708-iSulad-brief-tutorial/20250708-iSulad-brief-tutorial.md new file mode 100644 index 0000000000000000000000000000000000000000..6d242398b1821a13feb94bae3f677fb7fc89f92e --- /dev/null +++ b/app/zh/blog/20250708-iSulad-brief-tutorial/20250708-iSulad-brief-tutorial.md @@ -0,0 +1,211 @@ +--- +title: iSulad 简版教程 | 安装与镜像构建 +category: blog +date: 2025-07-08 +tags: + - openEuler + - iSulad +archives: 2025-07-08 +author: openEuler +summary: iSulad 简版教程 | 安装与镜像构建 +--- + +原文链接:https://blog.csdn.net/a555809067/article/details/144157583 + + +#### 安装并配置 iSulad + +输入以下命令,安装 iSulad: + +```bash +[root@localhost ~]# yum install -y iSulad +``` + +安装完 iSulad 后,输入启动 iSulad: + +```bash +[root@localhost ~]# systemctl start isulad +``` + +然后修改配置文件(这样才能在后续创建镜像时拉取到镜像): + +```bash +cp /etc/isulad/daemon.json /etc/isulad/daemon.json.origin +``` + +```bash +vim /etc/isulad/daemon.json +``` + +打开 json 配置,将 registry-mirrors 项添加镜像库 `"hub.oepkgs.net"` ,具体如下(不要忘记最后的逗号): + +```json +"registry-mirrors": ["hub.oepkgs.net"], +``` + +修改完后,先按 Esc 退出编辑模式,再输入 :wq 保存。 + +输入以下重新启动 iSulad: + +```bash +systemctl restart isulad +``` + +以上操作不需要专门设置文件,也就是不需要在自创的目录中使用,直接在 localhost 操作即可。后面如果没有特意声明,也都是在 localhost 下即可使用。 + + +测试可否拉取镜像: + +```bash +[root@localhost ~]# isula pull openeuler/openeuler:24.09 +``` + +24.09 是我下载的版本,诸位可根据自己下载的版本修改。 + + +输入以下,查看已经拉取的镜像: + +```bash +[root@localhost]# isula images +REPOSITORY TAG IMAGE ID CREATED SIZE +openeuler/openeuler 24.09 34f56f4bfb72 2024-11-30 12:27:37 506.641MB +``` + + +#### 创建容器 + +输入以下,创建 openEuler 容器: + +```bash +[root@localhost ~]# isula create -it openeuler/openeuler:24.09 +``` + +输入以上代码后,会出现该容器的 id(也就是下图的 name): + +![图片](./images/20250708-iSulad-brief-tutorial-01.png) + + +启动容器(这里的数字可以缩小到两位,系统会自动匹配容器 id): + +```bash +isula start 5753 +``` + + +进入容器: + +```bash +[root@localhost ~]# isula exec -it 5753 /bin/bash +``` + + +查看容器相关数据: + +```bash +[root@57538020c8d5 /]# cat /etc/os-release +``` + + +#### 安装 isula-build + +输入以下: + +```bash +yum --enablerepo update install -y isula-build +``` + + +查看状态: + +```bash +# systemctl status isula-build.service +``` + + +#### 安装 docker-runc + +在 24.09 版本中,安装 docker-runc 不需要带 docker-,如下。输入 docker-runc 会显示没有 docker-runc 的匹配项,在 20.09 版本应该可以输入 docker-runc。runc 将保障后面的.sh 文件的运行: + +```bash +yum install -y runc +``` + + +#### 构建自己的镜像 + +首先需要创造构建目录: + +```bash +# mkdir –p /home/test/ && cd /home/test/ +``` + +以下操作均需要在 test 目录中完成。 + + +构建 Dockerfile 文件: + +```bash +[root@localhost test]# vim Dockerfile +``` + +进入 insert 状态后输入以下(在这一步注意,如果你之前拉取镜像的时候出错,后面构建镜像时会在 step2 出错,而且注意在镜像名前加上 hub.oepkgs.net,否则也会报错): + +```dockerfile +FROM hub.oepkgs.net/openeuler/openeuler:24.09 +COPY hello.sh /usr/bin/ +CMD ["sh", "-c", "/usr/bin/hello.sh"] +``` + +按 Esc 退出编辑模式,再输入:wq 保存。 + + +构建 hello.sh 脚本: + +```bash +[root@localhost test]# vim hello.sh +``` + +输入以下: + +```bash +#!/bin/bash +echo +echo "hello, isula-build!" +``` + + +退出后修改 hello.sh 的属性: + +```bash +[root@localhost test]# chmod +x hello.sh +``` + + +查看是否完成文件的构建: + +```bash +[root@localhost test]# ls -l +``` + + +输入,构建镜像,结果如下: + +```bash +[root@localhost test]# isula-build ctr-img build -f ./Dockerfile -o isulad:hello-isula-build:v0.1 +``` + +![图片](images/20250708-iSulad-brief-tutorial-02.png) + + +输入以下,查看创建的镜像如上: + +```bash +[root@localhost test]# isula-build ctr-img images +``` + + +构建完成,下面运行构建好的镜像。结果如上: + +```bash +[root@localhost test]# isula run hello-isula-build:v0.1 +``` \ No newline at end of file diff --git a/app/zh/blog/20250708-iSulad-brief-tutorial/images/20250708-iSulad-brief-tutorial-01.png b/app/zh/blog/20250708-iSulad-brief-tutorial/images/20250708-iSulad-brief-tutorial-01.png new file mode 100644 index 0000000000000000000000000000000000000000..d20df292cff879b6723a380779397336195b874a Binary files /dev/null and b/app/zh/blog/20250708-iSulad-brief-tutorial/images/20250708-iSulad-brief-tutorial-01.png differ diff --git a/app/zh/blog/20250708-iSulad-brief-tutorial/images/20250708-iSulad-brief-tutorial-02.png b/app/zh/blog/20250708-iSulad-brief-tutorial/images/20250708-iSulad-brief-tutorial-02.png new file mode 100644 index 0000000000000000000000000000000000000000..ea48a0c06cb85ed38a4ef818e800ad539881fb3b Binary files /dev/null and b/app/zh/blog/20250708-iSulad-brief-tutorial/images/20250708-iSulad-brief-tutorial-02.png differ diff --git a/app/zh/blog/20250714-biSheng-autotuner-llvm-for-openeuler/20250714-biSheng-autotuner-llvm-for-openeuler.md b/app/zh/blog/20250714-biSheng-autotuner-llvm-for-openeuler/20250714-biSheng-autotuner-llvm-for-openeuler.md new file mode 100644 index 0000000000000000000000000000000000000000..377ab6cfad667891f1e697483fd0246e4986b515 --- /dev/null +++ b/app/zh/blog/20250714-biSheng-autotuner-llvm-for-openeuler/20250714-biSheng-autotuner-llvm-for-openeuler.md @@ -0,0 +1,199 @@ +--- +title: BiSheng-Autotuner & LLVM for openEuler 的自动调优编译流程 +category: blog +date: 2025-07-08 +tags: + - openEuler + - BiSheng-Autotuner + - LLVM for openEuler +archives: 2025-07-14 +author: openEuler +summary: BiSheng-Autotuner 是一个基于 BiSheng-opentuner 的命令行工具,与支持调优的编译器(如 LLVM for openEuler、GCC for openEuler)配合使用。它负责生成搜索空间、操作参数并驱动整个调优过程。 +--- + +BiSheng-Autotuner 是一个基于 BiSheng-opentuner 的命令行工具,与支持调优的编译器(如 LLVM for openEuler、GCC for openEuler)配合使用。它负责生成搜索空间、操作参数并驱动整个调优过程。 + +仓库地址 + +https://gitee.com/openeuler/BiSheng-Autotuner + +本文主要介绍基于 LLVM for openEuler 的自动调优编译流程。 + +### BiSheng-Autotuner 调优流程 + +调优流程(如图 1 所示)由两个阶段组成:初始编译阶段(initial compilation)和调优阶段(tuning process)。 + +![图片](./images/20250714-biSheng-autotuner-llvm-for-openeuler-01.png) + +图 1 BiSheng-Autotuner 调优流程 + +#### 初始编译阶段 + +初始编译阶段发生在调优开始之前,BiSheng-Autotuner 首先会让编译器对目标程序代码做一次编译,在编译的过程中,编译器会生成一些包含所有可调优结构的 YAML 文件,告诉开发者在这个目标程序中哪些结构可以用来调优,比如模块(module)、函数(function)、循环(loop)。例如,循环展开是编译器中最常见的优化方法之一,它通过多次复制循环体代码,达到增大指令调度空间、减少循环分支指令开销的优化效果。若以循环展开次数(unroll factor)为对象进行调优,编译器会在 YAML 文件中生成所有可被循环展开的循环作为可调优结构。 + +#### 调优阶段 + +当可调优结构顺利生成之后,调优阶段便会开始: + +1. BiSheng-Autotuner 首先读取生成好的可调优结构的 YAML 文件,从而产生对应的搜索空间,也就是生成针对每个可调优代码结构的具体的参数和范围。 +2. 调优阶段会根据设定的搜索算法尝试一组参数的值,生成一个 YAML 格式的编译配置文件(compilation config),从而让编译器编译目标程序代码产生二进制文件。 +3. 最后 BiSheng-Autotuner 将编译好的文件以开发者定义的方式运行并取得性能信息作为反馈。 +4. 经过一定数量的迭代之后,BiSheng-Autotuner 将找出最终的最优配置,生成最优编译配置文件,以 YAML 的形式储存。 + +### BiSheng-Autotuner 使用 + +#### 环境要求 + +必选: + +- 操作系统 :openEuler 24.03 LTS 系列、openEuler 25.03 及高于 openEuler 25.03 的版本 +- 架构 :AArch64、x86_64 +- Python 3.11.x +- SQLite 3.0 + +可选: + +- LibYAML:推荐安装,可提升 BiSheng-Autotuner 文件解析速度 + +#### BiSheng-Autotuner 获取 + +若开发者使用的 openEuler 系统,可以直接安装 `BiSheng-Autotuner` 和 `clang` 软件包。 + +``` +yum install -y BiSheng-Autotuneryum install -y clang +``` + +若需源码构建 `BiSheng-Autotuner` ,可以参考以下步骤。 + +1. 安装 BiSheng-opentuner + + ``` + yum install -y BiSheng-opentuner + ``` +2. 克隆并安装 BiSheng-Autotuner + + ``` + cd BiSheng-Autotuner./dev_install.sh + ``` + +#### BiSheng-Autotuner 运行 + +本文将以 coremark 为示例展示如何运行自动调优, coremark 源码请从获取。更多 llvm-autotune 的详细用法,请参阅帮助信息章节。以下为以 20 次迭代调优 coremark 的脚本示例: + +coremark仓库地址 https://github.com/eembc/coremark + +``` +export AUTOTUNE_DATADIR=/tmp/autotuner_data/CompileCommand="clang -O2 -o coremark core_list_join.c core_main.c core_matrix.c core_state.c core_util.c posix/core_portme.c -DPERFORMANCE_RUN=1 -DITERATIONS=300000 -I. -Iposix -g -DFLAGS_STR=\"\""$CompileCommand -fautotune-generate;llvm-autotune minimize;for i in $(seq 20)do$CompileCommand -fautotune ; time=`{ /usr/bin/time -p ./coremark 0x0 0x0 0x66 300000; } 2>&1 | grep "real" | awk '{print $2}'`;echo"iteration: "$i"cost time:"$time; llvm-autotune feedback $time;donellvm-autotune finalize; +``` + +以下为分步说明: + +1. 配置环境变量 + + 使用环境变量 `AUTOTUNE_DATADIR` 指定调优相关的数据的存放位置(指定目录需要为空)。 + + ``` + export AUTOTUNE_DATADIR=/tmp/autotuner_data/ + ``` +2. 初始编译步骤 + + 添加编译器选项 `-fautotune-generate` ,编译生成可调优代码结构。 + + ``` + cd examples/coremark/clang -O2 -o coremark core_list_join.c core_main.c core_matrix.c core_state.c core_util.c posix/core_portme.c -DPERFORMANCE_RUN=1 -DITERATIONS=300000 -I. -Iposix -g -DFLAGS_STR=\"\" -fautotune-generate + ``` + + > 注意:建议仅将此选项应用于需要重点调优的热点代码文件。若应用的代码文件过多(超过 500 个文件),则会生成数量庞大的可调优代码结构的文件,进而可能导致步骤 3 的初始化时间长(可长达数分钟),以及巨大的搜索空间导致的调优效果不显著、收敛时间长等问题。 +3. 初始化调优 + + 运行 `llvm-autotune` 命令,初始化调优任务。生成最初的编译配置供下一次编译使用。 + + ``` + llvm-autotune minimize + ``` + + `minimize` 表示调优目标,旨在最小化指标(例如程序运行时间)。也可使用 `maximize` ,旨在最大化指标(例如程序吞吐量)。 +4. 调优编译步骤 + + 添加毕昇编译器选项 `-fautotune` ,读取当前 `AUTOTUNE_DATADIR` 配置并编译。 + + ``` + clang -O2 -o coremark core_list_join.c core_main.c core_matrix.c core_state.c core_util.c posix/core_portme.c -DPERFORMANCE_RUN=1 -DITERATIONS=300000 -I. -Iposix -g -DFLAGS_STR=\"\" -fautotune + ``` +5. 性能反馈 + + 开发者运行程序,并根据自身需求获取性能数字,使用 `llvm-autotune feedback` 反馈。如果开发者想以 coremark 运行时间为指标进行调优,可以采用如下方式: + + ``` + time -p ./coremark 0x0 0x0 0x66 300000 2>&1 1>/dev/null | grep real | awk '{print $2}'# 返回实际执行时间 31.09 + ``` + + ``` + llvm-autotune feedback 31.09 + ``` + + > 注意:建议在使用 `llvm-autotune feedback` 之前, 先验证步骤 4 编译是否正常以及编译好的程序是否运行正确。若出现编译或者运行异常的情况,请输入相应调优目标的最差值(例如,调优目标为 minimize ,可输入 `llvm-autotune feedback 9999` ;maximize 可输入 0 或者 -9999)。 + > + > 若输入的性能反馈不正确,可能会影响最终调优的结果。 +6. 调优迭代 + + 根据开发者设定的迭代次数,重复 4 和 5 进行调优迭代。 +7. 结束调优 + + 进行多次迭代后,开发者可选择终止调优,并保存最优的配置文件。配置文件会被保存在环境变量 `AUTOTUNE_DATADIR` 指定的目录下。 + + ``` + llvm-autotune finalize + ``` +8. 最终编译 + + 使用步骤 7 得到最优配置文件,进行最后编译。在环境变量未改变的情况下,可直接使用 `-fautotune` 选项: + + ``` + clang -O2 -o coremark core_list_join.c core_main.c core_matrix.c core_state.c core_util.c posix/core_portme.c -DPERFORMANCE_RUN=1 -DITERATIONS=300000 -I. -Iposix -g -DFLAGS_STR=\"\" -fautotune + ``` + + 或者使用 `-mllvm -auto-tuning-input=` 直接指向配置文件。 + + ``` + clang -O2 -o coremark core_list_join.c core_main.c core_matrix.c core_state.c core_util.c posix/core_portme.c -DPERFORMANCE_RUN=1 -DITERATIONS=300000 -I. -Iposix -g -DFLAGS_STR=\"\" -mllvm -auto-tuning-input=/tmp/autotuner_data/config.yaml + ``` + +#### 帮助信息 + +llvm-autotune 执行格式如下所示: + +``` +llvm-autotune [-h] {minimize,maximize,feedback,dump,finalize} +``` + +可选指令: + +- `minimize` :初始化调优并生成初始的编译器配置文件,旨在最小化指标(例如运行时间)。 +- `maximize` :初始化调优并生成初始的编译器配置文件,旨在最大程度地提高指标(例如吞吐量)。 +- `feedback` :反馈性能调优结果并生成新的编译器配置。 +- `dump` :生成当前的最优配置,而不终止调优(可继续执行 `feedback` )。 +- `finalize` : 终止调优,并生成最佳的编译器配置(不可再执行 `feedback` )。 + +#### 编译器相关选项 + +llvm-autotune 需要与 LLVM 编译器选项 `-fautotune-generate` 和 `-fautotune` 配合使用。 + +- `-fautotune-generate` : + +- 在 `autotune_datadir` 目录下生成可调优的代码结构列表,此默认目录可由环境变量 `AUTOTUNE_DATADIR` 改写。 +- 作为调优准备工作的第一步,通常需要在 `llvm-autotune minimize/maximize` 命令执行前使用。 +- 此选项还可以赋值来改变调优的颗粒度(可选值为 `Other` 、 `Function` 、 `Loop` 、 `CallSite` 、 `MachineBasicBlock` 、 `Switch` 、 `LLVMParam` 、 `ProgramParam` ,其中 `LLVMParam` 和 `ProgramParam` 对应粗粒度选项调优)。例如 `-fautotune-generate=Loop` 会开启类型仅为循环的可调优代码结构,每个循环在调优过程中会被赋予不同的参数值;而 `Other` 表示全局,生成的可调优代码结构对应每个编译单元(代码文件)。 +- `-fautotune-generate` 默认等效于 `-fautotune-generate=Function,Loop,CallSite` 。通常建议使用默认值。 +- 若要启用选项调优( `LLVMParam` 和 `ProgramParam` ),需要为 llvm-autotune 指定拓展搜索空间,默认的搜索空间不包含预设调优选项。 + + ``` + llvm-autotune minimize --search-space /usr/lib64/python/site-packages/autotuner/search_space_config/extended_search_space.yaml + ``` + + `site-packages` 目录可以通过 `pip show autotuner` 指令找到。 + +- `-fautotune` : + +- 使用 `autotune_datadir` 下的编译器配置进行调优编译(此默认目录可由环境变量 `AUTOTUNE_DATADIR` 改写)。 +- 通常在调优迭代过程中, `llvm-autotune minimize/maximize/feedback` 命令之后使用。 \ No newline at end of file diff --git a/app/zh/blog/20250714-biSheng-autotuner-llvm-for-openeuler/images/20250714-biSheng-autotuner-llvm-for-openeuler-01.png b/app/zh/blog/20250714-biSheng-autotuner-llvm-for-openeuler/images/20250714-biSheng-autotuner-llvm-for-openeuler-01.png new file mode 100644 index 0000000000000000000000000000000000000000..d864a9b5aadbf13250c3629cc311ea98e82d0a0b Binary files /dev/null and b/app/zh/blog/20250714-biSheng-autotuner-llvm-for-openeuler/images/20250714-biSheng-autotuner-llvm-for-openeuler-01.png differ diff --git a/app/zh/blog/20250716-isocut-user-guide/20250716-isocut-user-guide.md b/app/zh/blog/20250716-isocut-user-guide/20250716-isocut-user-guide.md new file mode 100644 index 0000000000000000000000000000000000000000..21e3d4f66f50d96ff4f963e6f1ce529a19d93779 --- /dev/null +++ b/app/zh/blog/20250716-isocut-user-guide/20250716-isocut-user-guide.md @@ -0,0 +1,303 @@ +--- +title: 镜像裁剪工具 isocut 使用指南 +category: blog +date: 2025-07-16 +tags: + - openEuler + - isocut +archives: 2025-07-16 +author: openEuler +summary: 为满足多样化的部署需求,openEuler 提供了灵活实用的镜像裁剪定制工具 —— isocut。通过该工具,用户可以基于原始 ISO 镜像,裁剪出仅包含所需 RPM 软件包的轻量化镜像。裁剪时既可选取原镜像中的软件包,也可引入用户自定义的 RPM 包,甚至结合 Kickstart 实现自动化安装,从而打造精简高效、契合自身需求的安装介质。 +--- + +**随着 **OpenAtom openEuler(简称:“openEuler”或“开源欧拉”)** 软件生态的不断发展,光盘镜像所包含的软件包数量持续增加,镜像体积也随之变大。同时,在实际应用中,用户往往只需安装其中一部分软件包,或希望引入一些额外的个性化组件,而非全部内容。** + +**为满足多样化的部署需求,openEuler 提供了灵活实用的镜像裁剪定制工具 —— isocut。通过该工具,用户可以基于原始 ISO 镜像,裁剪出仅包含所需 RPM 软件包的轻量化镜像。裁剪时既可选取原镜像中的软件包,也可引入用户自定义的 RPM 包,甚至结合 Kickstart 实现自动化安装,从而打造精简高效、契合自身需求的安装介质。** + +**本文将详细介绍 isocut 工具的安装步骤与使用方法,帮助用户高效完成镜像裁剪定制,提升系统部署的灵活性与效率。** + +### 软硬件要求 + +使用 openEuler 裁剪定制工具制作 ISO 所使用的机器需要满足如下软硬件要求: + +- CPU 架构为 AArch64 或者 x86_64 +- 建议预留 30 GB 以上的磁盘空间(用于运行裁剪定制工具和存放 ISO 镜像) + +### 安装工具 + +1. 确认机器已安装操作系统。 + + ``` + # cat /etc/openEuler-release + ``` + +2. 下载对应架构的 ISO 镜像(必须是 everything 版本),并存放在任一目录(建议该目录磁盘空间大于 20 GB),此处假设存放在 `/home/isocut_iso` 目录。 + +3. 创建文件 `/etc/yum.repos.d/local.repo` ,配置对应 yum 源。配置内容参考如下,其中 baseurl 是用于挂载 ISO 镜像的目录。 + + ``` + [local] + name=local + baseurl=file:///home/isocut_mount + gpgcheck=0 + enabled=1 + ``` + +4. 使用 root 权限,挂载光盘镜像到 `/home/isocut_mount` 目录(请与上述 repo 文件中配置的 baseurl 保持一致)作为 yum 源。参考命令如下: + + ``` + sudo mount -o loop /home/isocut_iso/openEuler-24.03-LTS-SP1-everything-aarch64-dvd.iso /home/isocut_mount + ``` + +5. 使 yum 源生效。 + + ``` + yum clean all + yum makecache + ``` + +6. 使用 root 权限,安装镜像裁剪定制工具。 + + ``` + sudo yum install -y isocut + ``` + +7. 使用 root 权限,确认工具已安装成功。 + + ``` + $ sudo isocut -h + Checking input ... + usage: isocut [-h] [-t temporary_path] [-r rpm_path] [-k file_path] source_iso dest_iso + Cut openEuler iso to small one + positional arguments: + source_iso source iso image + dest_iso destination iso image + optional arguments: + -h, --help show this help message and exit + -t temporary_path temporary path + -r rpm_path extern rpm packages path + -k file_path kickstart file + ``` + +### 裁剪定制镜像 + +此处介绍如何使用镜像裁剪定制工具基于 openEuler 光盘镜像裁剪或添加额外 RPM 软件包制作新镜像的方法。 + +镜像裁剪定制工具通过 isocut 命令执行功能。命令的使用格式为: + +**isocut** [ --help | -h ][ -t < _temp_path_ > ] [ -r < _rpm_path_ > ][ -k < _file_path_ > ] < _source_iso_ > < _dest_iso_ > + +#### 参数说明 + +| 参数 | 是否必选 | 参数含义 | +| --- | --- | --- | +| --help \| -h | 否 | 查询命令的帮助信息。 | +| -t < _temp_path_ > | 否 | 指定工具运行的临时目录 _temp_path_,其中 _temp_path_ 为绝对路径。默认为 /tmp 。 | +| -r < _rpm_path_ > | 否 | 用户需要额外添加到 ISO 镜像中的 RPM 包路径。 | +| -k < _file_path_ > | 否 | 用户需要使用 kickstart 自动安装,指定 kickstart 模板路径。 | +| _source_iso_ | 是 | 用于裁剪的 ISO 源镜像所在路径和名称。不指定路径时,默认当前路径。 | +| _dest_iso_ | 是 | 裁剪定制生成的 ISO 新镜像存放路径和名称。不指定路径时,默认当前路径。 | + +#### 软件包来源 + +新镜像的 RPM 包来源有: + +- 原有 ISO 镜像:该情况通过配置文件 `/etc/isocut/rpmlist` 指定需要安装的 RPM 软件包,配置格式为 "软件包名.对应架构",例如:kernel.aarch64 。 +- 额外指定:执行 **isocut** 时使用 `-r` 参数指定软件包所在路径,并将添加的 RPM 包按上述格式添加到配置文件 `/etc/isocut/rpmlist` 中。 + +裁剪定制镜像时,若无法找到配置文件中指定的 RPM 包,则镜像中不会添加该 RPM 包,若 RPM 包的依赖有问题,则裁剪定制镜像时可能会报错。 + +#### kickstart 功能介绍 + +用户需要实现镜像自动化安装,可以通过 kickstart 的方式。在执行 **isocut** 时使用 -k 参数指定 kickstart 文件。 + +isocut 为用户提供了 kickstart 模板,路径是 /etc/isocut/anaconda-ks.cfg,用户可以基于该模板修改。 + +##### 修改 kickstart 模板 + +若用户需要使用 isocut 工具提供的 kickstart 模板,需要修改以下内容: + +- 必须在文件 `/etc/isocut/anaconda-ks.cfg` 中配置 `root` 和 `grub2` 的密码。否则镜像自动化安装会卡在设置密码的环节,等待用户手动输入密码。 +- 如果要添加额外 RPM 包,并使用 `kickstart` 自动安装,则在 `/etc/isocut/rpmlist` 和 `kickstart` 文件的 `%packages` 字段都要指定该 RPM 包。 + +接下来介绍 kickstart 文件详细修改方法。 + +###### 配置初始密码 + +####### 配置 root 初始密码 + +`/etc/isocut/anaconda-ks.cfg` 中 `root` 初始密码的默认配置如下,其中 `${pwd}` 需要替换成用户实际的加密密文: + +``` +rootpw --iscrypted ${pwd} +``` + +这里给出设置 `root` 初始密码的方法(需使用 `root` 权限)。 + +1. 添加用于生成密码的用户,此处假设 testUser。 + + ``` + $ sudo useradd testUser + ``` + +2. 设置 testUser 用户的密码。参考命令如下,根据提示设置密码。 + + ``` + $ sudo passwd testUser + Changing password for user testUser. + New password: + Retype new password: + passwd: all authentication tokens updated successfully. + ``` + +3. 查看 `/etc/shadow` 文件,获取加密密码(用户 `testUser` 后,两个 : 间的字符串,此处使用 *** 代替)。 + + ``` + $ sudo cat /etc/shadow | grep testUser + testUser:***:19052:0:90:7:35:: + ``` + +4. 拷贝上述加密密码替换 `/etc/isocut/anaconda-ks.cfg` 中的 `pwd` 字段,如下所示(请用实际内容替换 *** )。 + + ``` + rootpw --iscrypted *** + ``` + +####### 配置 grub2 初始密码 + +`/etc/isocut/anaconda-ks.cfg` 文件中添加以下配置,配置 grub2 初始密码。其中 `${pwd}` 需要替换成用户实际的加密密文。 + +``` +%addon com_huawei_grub_safe --iscrypted --password='${pwd}' +%end +``` + +> 说明: +> +> - 配置 grub 初始密码需要使用 root 权限。 +> - grub 密码对应的默认用户为 root。 +> - 系统中需有 grub2-set-password 命令,若不存在,请提前安装该命令。 + +1. 执行如下命令,根据提示设置 grub2 密码。 + + ``` + $ sudo grub2-set-password -o ./ + Enter password: + Confirm password: + grep: .//grub.cfg: No such file or directory + WARNING: The current configuration lacks password support! + Update your configuration with grub2-mkconfig to support this feature. + ``` + +2. 命令执行完成后,会在当前目录生成 user.cfg 文件,grub.pbkdf2.sha512 开头的内容即 grub2 加密密码。 + + ``` + $ sudo cat user.cfg + GRUB2_PASSWORD=grub.pbkdf2.sha512.*** + ``` + +3. 复制上述密文,并在 `/etc/isocut/anaconda-ks.cfg` 文件中增加如下配置。 + + ``` + %addon com_huawei_grub_safe --iscrypted --password='grub.pbkdf2.sha512.***' + %end + ``` + +###### 配置 `%packages` 字段 + +如果需要添加额外 RPM 包,并使用 kickstart 自动安装,需要在 `/etc/isocut/rpmlist` 和 kickstart 文件的 %packages 字段都指定该 RPM 包。 + +此处介绍在 `/etc/isocut/anaconda-ks.cfg` 文件中添加 RPM 包。 + +`/etc/isocut/anaconda-ks.cfg` 文件的 %packages 默认配置如下: + +``` +%packages --multilib --ignoremissing +acl.aarch64 +aide.aarch64 +...... +NetworkManager.aarch64 +%end +``` + +将额外指定的 RPM 软件包添加到 %packages 配置中,需要遵循如下配置格式: + +"软件包名.对应架构",例如:kernel.aarch64 + +``` +%packages --multilib --ignoremissing +acl.aarch64 +aide.aarch64 +...... +NetworkManager.aarch64 +kernel.aarch64 +%end +``` + +#### 操作指导 + +> **说明:** +> +> - 请不要修改或删除 `/etc/isocut/rpmlist` 文件中的默认配置项。 +> - isocut 的所有操作需要使用 root 权限。 +> - 待裁剪的源镜像可以为基础镜像,也可以是 everything 版镜像,例子中以基础版镜像 openEuler-24.03-LTS-SP1-aarch64-dvd.iso 为例。 +> - 例子中假设新生成的镜像名称为 new.iso,且存放在 `/home/result` 路径;运行工具的临时目录为 `/home/temp` ;额外的 RPM 软件包存放在 `/home/rpms` 目录。 + +1. 修改配置文件 `/etc/isocut/rpmlist` ,指定用户需要安装的 RPM 软件包(来自原有 ISO 镜像)。 + + ``` + sudo vi /etc/isocut/rpmlist + ``` + +2. 确定运行镜像裁剪定制工具的临时目录空间大于 8 GB 。默认临时目录为 `/tmp` ,也可以使用 `-t` 参数指定其他目录作为临时目录,该目录必须为绝对路径。本例中使用目录 `/home/temp` ,由如下回显可知 `/home` 目录可用磁盘为 38 GB,满足要求。 + + ``` + $ df -h + Filesystem Size Used Avail Use% Mounted on + devtmpfs 1.2G 0 1.2G 0% /dev + tmpfs 1.5G 0 1.5G 0% /dev/shm + tmpfs 1.5G 23M 1.5G 2% /run + tmpfs 1.5G 0 1.5G 0% /sys/fs/cgroup + /dev/mapper/openeuler_openeuler-root 69G 2.8G 63G 5% / + /dev/sda2 976M 114M 796M 13% /boot + /dev/mapper/openeuler_openeuler-home 61G 21G 38G 35% /home + ``` + +3. 执行裁剪定制。 + + **场景一** :新镜像的所有 RPM 包来自原有 ISO 镜像 + + ``` + $ sudo isocut -t /home/temp /home/isocut_iso/openEuler-24.03-LTS-SP1-aarch64-dvd.iso /home/result/new.iso + Checking input ... + Checking user ... + Checking necessary tools ... + Initing workspace ... + Copying basic part of iso image ... + Downloading rpms ... + Finish create yum conf + finished + Regenerating repodata ... + Checking rpm deps ... + Getting the description of iso image ... + Remaking iso ... + Adding checksum for iso ... + Adding sha256sum for iso ... + ISO cutout succeeded, enjoy your new image "/home/result/new.iso" + isocut.lock unlocked ... + ``` + + 回显如上,说明新镜像 new.iso 定制成功。 + + **场景二** :新镜像的 RPM 包除来自原有 ISO 镜像,还包含来自 `/home/rpms` 的额外软件包 + + ``` + sudo isocut -t /home/temp -r /home/rpms /home/isocut_iso/openEuler-24.03-LTS-SP1-aarch64-dvd.iso /home/result/new.iso + ``` + + **场景三** :使用 kickstart 文件实现自动化安装,需要修改 `/etc/isocut/anaconda-ks.cfg` 文件 + + ``` + sudo isocut -t /home/temp -k /etc/isocut/anaconda-ks.cfg /home/isocut_iso/openEuler-24.03-LTS-SP1-aarch64-dvd.iso /home/result/new.iso + ``` + diff --git a/app/zh/blog/20250721-oeaware-user-guide/20250721-oeaware-user-guide.md b/app/zh/blog/20250721-oeaware-user-guide/20250721-oeaware-user-guide.md new file mode 100644 index 0000000000000000000000000000000000000000..bdbda39fef63d49ab76256ed897480687ef0340c --- /dev/null +++ b/app/zh/blog/20250721-oeaware-user-guide/20250721-oeaware-user-guide.md @@ -0,0 +1,312 @@ +--- +title: oeAware 安装与使用指南 +category: blog +date: 2025-07-21 +tags: + - openEuler + - oeAware +archives: 2025-07-21 +author: openEuler +summary: oeAware 是在 OpenAtom openEuler(简称:“openEuler”或“开源欧拉”)上实现低负载采集感知调优的框架,目标是动态感知系统行为后智能使能系统的调优特性。传统调优特性都以独立运行且静态打开关闭为主,oeAware 将调优拆分采集、感知和调优三层,每层通过订阅方式关联,各层采用插件式开发尽可能复用 。 +--- + +oeAware 是在 OpenAtom openEuler(简称:“openEuler”或“开源欧拉”)上实现低负载采集感知调优的框架,目标是动态感知系统行为后智能使能系统的调优特性。传统调优特性都以独立运行且静态打开关闭为主,oeAware 将调优拆分采集、感知和调优三层,每层通过订阅方式关联,各层采用插件式开发尽可能复用 。 + +### 安装 + +配置 openEuler 的 yum 源,使用 yum 命令安装。在 openEuler 22.03 LTS SP4 的后续版本的软件镜像中都包含该软件。 + +```bash +yum install oeAware-manager +``` + +### 使用方法 + +首先启动 oeAware 服务,然后通过 `oeawarectl` 命令进行使用。 + +#### 服务启动 + +通过 systemd 服务启动。安装完成后会默认启动。 + +```bash +systemctl start oeaware +``` + +配置文件 + +配置文件路径:/etc/oeAware/config.yaml + +```yaml +# 日志存储路径 +log_path:/var/log/oeAware +# 日志等级 1:DEBUG 2:NFO 3:WARN 4:ERROR +log_level:1 +#默认使能插件 +enable_list: + #只配置插件,使能本插件的所有实例 + -name:libtest.so + #配置插件实例,使能配置的插件实例 + -name:libtest1.so + instances: + -instance1 + -instance2 + ... + ... +#可支持下载的包 +plugin_list: + #名称需要唯一,如果重复取第一个配置 + -name:test + description:helloworld + #url非空 + url:https://gitee.com/openeuler/oeAware-manager/raw/master/README.md +... +``` + +修改配置文件后,通过以下命令重启服务。 + +```bash +systemctl restart oeaware +``` + +#### 插件说明 + +**插件定义**:一个插件对应一个.so 文件,插件分为采集插件、感知插件和调优插件,[插件开发方法](https://docs.openeuler.org/zh/docs/24.03_LTS_SP2/server/performance/tuning_framework/oeaware/oeaware_user_guide.html#%E6%8F%92%E4%BB%B6%E5%BC%80%E5%8F%91%E8%AF%B4%E6%98%8E)。 + +**实例定义**:服务中的调度单位是实例,一个插件中包括多个实例。例如,一个采集插件包括多个采集项,每个采集项是一个实例。 + +#### 插件加载 + +服务会默认加载插件存储路径下的插件。 + +插件路径:/usr/lib64/oeAware-plugin/ + +另外也可以通过手动加载的方式加载插件。 + +```bash +oeawarectl -l | --load <插件名> +``` + +示例 + +```bash +[root@localhost ~]# oeawarectl -l libthread_collect.so +Plugin loaded successfully. +``` + +失败返回错误说明。 + +#### 插件卸载 + +```bash +oeawarectl -r <插件名> | --remove <插件名> +``` + +示例 + +```bash +[root@localhost ~]# oeawarectl -r libthread_collect.so +Plugin remove successfully. +``` + +失败返回错误说明。 + +#### 插件查询 + +##### 查询插件状态信息 + +```bash +oeawarectl -q #查询系统中已经加载的所有插件 +oeawarectl --query <插件名> #查询指定插件 +``` + +示例 + +```bash +[root@localhost ~]# oeawarectl -q +Show plugins and instances status. +------------------------------------------------------------ +libsystem_tune.so + stealtask_tune(available, close, count: 0) + smc_tune(available, close, count: 0) + xcall_tune(available, close, count: 0) + seep_tune(available, close, count: 0) +libpmu.so + pmu_counting_collector(available, close, count: 0) + pmu_sampling_collector(available, close, count: 0) + pmu_spe_collector(available, close, count: 0) + pmu_uncore_collector(available, close, count: 0) +libdocker_tune.so + docker_cpu_burst(available, close, count: 0) +libthread_scenario.so + thread_scenario(available, close, count: 0) +libsystem_collector.so + thread_collector(available, close, count: 0) + kernel_config(available, close, count: 0) + command_collector(available, close, count: 0) +libdocker_collector.so + docker_collector(available, close, count: 0) +libub_tune.so + unixbench_tune(available, close, count: 0) +libanalysis_oeaware.so + analysis_aware(available, close, count: 0) +------------------------------------------------------------ +format:[plugin] + [instance]([dependency status], [running status], [enable cnt]) +dependency status: available means satisfying dependency, otherwise unavailable. +running status: running means that instance is running, otherwise close. +enable cnt: number of instances enabled. +``` + +失败返回错误说明。 + +##### 查询运行实例订阅关系 + +```bash +oeawarectl -Q #查询所有运行实例的订阅关系图 +oeawarectl --query-dep= <插件实例> #查询运行实例订阅关系图 +``` + +在当前目录下生成 dep.png,显示订阅关系。 + +实例未运行,不会显示订阅关系。 + +示例 + +```bash +oeawarectl -e thread_scenario +oeawarectl -Q +``` + +img + +#### 插件实例使能 + +##### 使能插件实例 + +```bash +oeawarectl -e | --enable <插件实例> +``` + +使能某个插件实例,会将其订阅的 topic 实例一起使能。 + +失败返回错误说明。 + +推荐使能插件列表: + +- libsystem_tune.so:stealtask_tune,smc_tune,xcall_tune,seep_tune。 +- libub_tune.so:unixbench_tune。 +- libtune_numa.so:tune_numa_mem_access。 + +其他插件主要用来提供数据,可通过 sdk 获取插件数据。 + +##### 关闭插件实例 + +```bash +oeawarectl -d | --disable <插件实例> +``` + +关闭某个插件实例,会将其订阅的 topic 实例一起关闭。 + +失败返回错误说明。 + +#### 插件下载安装 + +通过 `--list` 命令查询支持下载的 rpm 包和已安装的插件。 + +```bash +oeawarectl --list +``` + +查询结果如下。 + +``` +Supported Packages: #可下载的包 +[name1] #config中配置的plugin_list +[name2] +... +Installed Plugins: #已安装的插件 +[name1] +[name2] +... +``` + +通过 `--install` 命令下载安装 rpm 包。 + +```bash +oeawarectl -i | --install #指定--list下查询得到的包名称(Supported Packages下的包) +``` + +失败返回错误说明。 + +#### 分析模式 + +```bash +oeawarectl analysis -h +usage: oeawarectl analysis [options]... + options + -t|--time set analysis duration in seconds(default 30s), range from 1 to 100. + -r|--realtime show real time report. + -v|--verbose show verbose information. + -h|--help show this help message. +``` + +示例 + +执行以下命令,输出系统分析报告。 + +```bash +oeawarectl analysis -t 10 +``` + +结果如下 + +``` +============================================================================================ + Summary Analysis Report +============================================================================================ +========================================= Suggest ========================================= +Tune Instance | Suggest | Note +stealtask_tune | No | CpuRatio(average) : 0.17% +smc_tune | No | Collecting very little network access +gazelle | No | Collecting very little network access +tune_numa_mem_access | No | No access +========================================= Network ========================================= +Local network communication distribution + Node0 Node1 Node2 Node3 + 0.00% 0.00% 0.00% 0.00% +Remote network communication distribution(receive) +matrix representation of network thread nodes to irq nodes + Node0 Node1 Node2 Node3 +Node0 100.00% 0.00% 0.00% 0.00% +Node1 0.00% 0.00% 0.00% 0.00% +Node2 0.00% 0.00% 0.00% 0.00% +Node3 0.00% 0.00% 0.00% 0.00% +======================================== Solution ======================================== +No solution. +``` + +报告分为三部分: + +- Suggest:根据系统运行状态,给出调优建议。 +- Network:网络使用情况。 +- Solution:给出具体调优方法。 + +#### 帮助 + +通过 `--help` 查看帮助。 + +```bash +usage: oeawarectl [options]... + options + -l|--load [plugin] load plugin. + -r|--remove [plugin] remove plugin from system. + -e|--enable [instance] enable the plugin instance. + -d|--disable [instance] disable the plugin instance. + -q query all plugins information. + --query [plugin] query the plugin information. + -Q query all instances dependencies. + --query-dep [instance] query the instance dependency. + --list the list of supported plugins. + -i|--install [plugin] install plugin from the list. + --help show this help message. +``` diff --git a/app/zh/blog/20250724-greenbone-openeuler/20250724-greenbone-openeuler.md b/app/zh/blog/20250724-greenbone-openeuler/20250724-greenbone-openeuler.md new file mode 100644 index 0000000000000000000000000000000000000000..d9b70ee2b9e1af8a85fcc2752d268e64674dc41a --- /dev/null +++ b/app/zh/blog/20250724-greenbone-openeuler/20250724-greenbone-openeuler.md @@ -0,0 +1,105 @@ +--- +title: Greenbone 全版本适配 openEuler,为企业的数字化转型提供另一个安全解决方案 +category: blog +date: 2025-07-24 +tags: + - openEuler + - Greenbone +archives: 2025-07-24 +author: openEuler +summary: OpenAtom openEuler(简称:openEuler或开源欧拉) 社区 与Greenbone通力合作,顺利完成Greenbone软件在openEuler的适配。Greenbone是一家全球领先的开源漏洞管理解决方案供应商,提供开源领域占主导地位的漏洞评估解决方案,旨在帮助组织识别、评估和修复其 IT 基础设施中的安全漏洞。本次适配完成将进一步丰富 openEuler在安全领域的应用解决方案,为企业的数字化转型提供了更多安全解决方案。 +--- + +近日, OpenAtom openEuler(简称:openEuler或开源欧拉) 社区 与Greenbone通力合作,顺利完成Greenbone软件在openEuler的适配。Greenbone是一家全球领先的开源漏洞管理解决方案供应商,提供开源领域占主导地位的漏洞评估解决方案,旨在帮助组织识别、评估和修复其 IT 基础设施中的安全漏洞。本次适配完成将进一步丰富 openEuler在安全领域的应用解决方案,为企业的数字化转型提供了更多安全解决方案。 + +目前Greenbone的社区版(OpenVAS)和企业版(GSM)已经完成对所有已经发布的 LTS版本(包括SP版本)的系统支持,欢迎大家参考下面的安装指南使用。 + +## 源码编译 Greenbone + +使用这种方式可以体验到最新的 Greenbone 软件特性 , Greenbone 社区版在 Github 上提供了源代码,并且在文档中提供了非常详细的上手步骤, 具体安装方式请查看 Github 和安装文档。 + +项目仓库: +https://github.com/greenbone/openvas-scanner + +文档链接: +https://greenbone.github.io/docs/latest/22.4/source-build/index.html + +## 容器安装 Greenbone + +Greenbone 推荐使用 Docker 容器 安装 OpenVAS ,具体安装方式请查看文档。 + +文档链接: +https://greenbone.github.io/docs/latest/22.4/container/index.html + +## WSL 安装 Greenbone + +使用 WSL 安装 Greenbone 的软硬件要求如下: + +- Windows 10/11 启用 WSL2功能 +- 内存最低4G,建议8G +- 磁盘空间最少20G,建议60G + +### 步骤1:安装docker并启用WSL集成 + +从 Docker 官网下载 Docker Desktop 并安装,安装好后在设置中查看 “ Use the WSL 2 based engine” 是否已经勾选( Docker 默认勾选) + +![图片](./images/20250724-greenbone-openeuler-01.png) + +### 步骤2:启用与你的 WSL发行版集成 + +选择Resources → WSL Integration,启用与你的 WSL发行版集成. + +![图片](./images/20250724-greenbone-openeuler-02.png) + +### 步骤三:打开 WSL终端,检查 docker 版本 + +```bash +docker--versiondnf install ca-certificates curl gnupg +``` + +### 步骤四:下载WSL提供配置脚本 + +```bash +cd /home/YOUR_USER_NAME +git clone https://github.com/kirigiricloud/OpenVAS-openEuler-wsl-scripts.git +cd OpenVAS-openEuler-wsl-scripts/scripts +chmod +x setup-greenbone-windows-wsl.sh +./setup-greenbone-windows-wsl.sh +``` + +这个脚本会完成以下工作: + +- 下载最新的 Greenbone docker compose文件 +- 配置 WSL +- 下载镜像(2-5G) +- 运行容器 +- 设置 Greenbone管理员密码 +- 设置网页访问端口 + +### 步骤五:设置 Windows的端口转发 + +打开 Windows PowerShell (管理员模式)运行 + +```bash +.\setup-windows-port-forwarding.ps1 +``` + +### 步骤六:访问 Greenbone并创建扫描任务 + +打开浏览器访问 http://localhost:9392, 输入之前设置的用户名和密码进入 Greenbone 。 + +![图片](./images/20250724-greenbone-openeuler-03.png) + +在 http://localhost:9392/feedstatus 页面确保所有的 feeds 状态都已经是 “Current” (大概需要 30-60 分钟),在此之前不要开启扫描任务。 + +![图片](./images/20250724-greenbone-openeuler-04.png) + +在 WSL 中 , 运行 hostname -I 获得系统 IP 地址 + +在 Greenbone 中选择 Scans → Task ,点击如图所示的图标后,在弹出的页面输入 IP 地址,点击开始扫描。 + +![图片](./images/20250724-greenbone-openeuler-05.png) + +等待扫描完成后,获取系统报告。 + +![图片](./images/20250724-greenbone-openeuler-06.png) diff --git a/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-01.png b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-01.png new file mode 100644 index 0000000000000000000000000000000000000000..5f8dc6b1d2507d7473aca1cd8c8473844c470158 Binary files /dev/null and b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-01.png differ diff --git a/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-02.png b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-02.png new file mode 100644 index 0000000000000000000000000000000000000000..58e569667e34cea96a588cd582c65179e88e0adb Binary files /dev/null and b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-02.png differ diff --git a/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-03.png b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-03.png new file mode 100644 index 0000000000000000000000000000000000000000..23574c5d7cc3b8e5c37164263d223be19bafccc5 Binary files /dev/null and b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-03.png differ diff --git a/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-04.png b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-04.png new file mode 100644 index 0000000000000000000000000000000000000000..428238d9cda7d480cad38d084d9e7bb645495655 Binary files /dev/null and b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-04.png differ diff --git a/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-05.png b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-05.png new file mode 100644 index 0000000000000000000000000000000000000000..a3d7e323a847508b73bc6cf607b8bfe5e622c7c4 Binary files /dev/null and b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-05.png differ diff --git a/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-06.png b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-06.png new file mode 100644 index 0000000000000000000000000000000000000000..563c1f54e7157a5147ec4cc1a5e1b87c744febb0 Binary files /dev/null and b/app/zh/blog/20250724-greenbone-openeuler/images/20250724-greenbone-openeuler-06.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/20250731-openeuler-install-mysql.md b/app/zh/blog/20250731-openeuler-install-mysql/20250731-openeuler-install-mysql.md new file mode 100644 index 0000000000000000000000000000000000000000..51c925b473f3c426409f8af4955be255dba5cb5f --- /dev/null +++ b/app/zh/blog/20250731-openeuler-install-mysql/20250731-openeuler-install-mysql.md @@ -0,0 +1,282 @@ +--- +title: 【转载】openEuler 安装 MySQL 的教程 +category: blog +date: 2025-07-31 +tags: + - openEuler + - MySQL +archives: 2025-07-31 +author: openEuler +summary: openEuler 安装 MySQL 的教程 +--- + +来源:猫头虎技术团队 +原文链接:https://blog.csdn.net/qq_44866828/article/details/148617642 + +## 环境准备 + +- 操作系统:OpenAtom openEuler(简称:openEuler或开源欧拉)22.03 LTS-SP2 或更新版本 +- 用户权限:需要 root 权限 +- 网络连接:确保能连接 openEuler 源或配好本地 repo + +> 提示:如果你是全新环境,可先执行 `dnf makecache` 构建本地缓存 + + + +## 查看官方源中 MySQL 支持情况 + + + +使用以下命令查看是否有 MySQL 相关包: + +``` +dnf search mysql-server +``` + +如果显示有 `mysql-server` 等包,说明已经支持 + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-00.png) + + +## 安装 MySQL + + + +``` +sudo dnf install -y mysql-server +``` + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-01.png) + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-02.png) + +等待安装完成后,启动 MySQL 服务: + +``` +sudo systemctl start mysqld +``` + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-02.1.png) + +设置开机自启: + +``` +sudo systemctl enable mysqld +``` + +查看服务状态: + +``` +systemctl status mysqld +``` + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-03.png) + +> 提示:如果出现 “Active: active (running)” 则说明安装成功 + + + +## 初始化密码和安全配置 + + + +###### 停止 mysqld 服务 + +``` +sudo systemctl stop mysqld +``` + +使用“跳过授权表”模式启动 MySQL(临时无密码) + +``` +sudo mysqld --skip-grant-tables --skip-networking --user=mysql & +``` + +> 注意:此命令将在前台运行,终端会被占用。建议 **开另一个终端窗口或使用 SSH 登录新会话** 继续后续操作。 + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-05.png) + +###### 无密码登录 MySQL + +在另一个终端输入: + +``` +mysql -u root +``` + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-06.png) + +进入 MySQL shell 后执行: + +``` +FLUSH PRIVILEGES;ALTER USER 'root'@'localhost' IDENTIFIED BY 'openEuler&2025';FLUSH PRIVILEGES;EXIT; +``` + +或者某些 MySQL 8 版本需要用下面的语法: + +``` +ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NewSecurePwd8!'; +``` + +完成后输入: + +``` +EXIT; +``` + +###### 恢复正常启动服务 + +回到原终端,按 `Ctrl + C` 停止前台 `mysqld_safe` ,然后: + +``` +sudo systemctl start mysqld +``` + +现在你可以正常使用新密码登录: + +``` +mysql -u root -p +``` + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-07.png) + +## 设置远程访问权限 + +``` +ERROR 1410 (42000): You are not allowed to create a user with GRANT +``` + +###### 登录 MySQL(已登录可跳过) + +``` +mysql -u root +``` + +###### 切换到mysql系统库 + +``` +USE mysql; +``` + +###### 查看当前 root 用户定义 + +``` +SELECT Host,User FROM user WHERE User='root'; +``` + +你应该会看到: + +``` ++-----------+------+ +| Host | User | ++-----------+------+ +| localhost | root | ++-----------+------+ +``` + +###### 修改 root 的 host 为 `%` + +``` +UPDATE user SET Host='%' WHERE User='root' AND Host='localhost'; FLUSH PRIVILEGES; +``` + +###### 重新授予权限(现在是合法的) + +``` +GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;FLUSH PRIVILEGES; +``` + +###### 验证 + +``` +SELECT Host, User FROM user WHERE User = 'root'; +``` + +应该输出: + +``` ++------+------+ +| Host | User | ++------+------+ +| % | root | ++------+------+ +``` + +![在这里插入图片描述](./images/20250731-openeuler-install-mysql-08.png) + +服务器建议(更安全做法): + +- **保留 root@localhost** (仅供本地登录) +- 新建远程用户,而不是扩展 root 权限,例如: + +``` +CREATE USER 'devadmin'@'%' IDENTIFIED BY 'StrongDev#2025';GRANT ALL PRIVILEGES ON *.* TO 'devadmin'@'%' WITH GRANT OPTION; +``` + + + +## 添加防火墙规则 + + + +如果需让外网或同网段的服务器连接 MySQL,需打开 3306 端口: + +``` +firewall-cmd --permanent --add-port=3306/tcp +firewall-cmd --reload +``` + + + +## 进入 MySQL 命令行管理器 + + + +``` +mysql -u root -p +``` + +输入新密码后即可进入 MySQL 管理界面 + +> 提示:可使用 `SHOW DATABASES;` 查看数据库列表,或创建新数据库、用户 + + + +## 可选:配置 MySQL 远程连接 + + + +修改配置文件 `/etc/my.cnf` : + +``` +[mysqld] +bind-address=0.0.0.0 +``` + +重启 MySQL 服务: + +``` +systemctl restart mysqld +``` + +授权远程用户: + +``` +CREATE USER'admin'@'%'IDENTIFIEDBY'yourpassword';GRANTALLPRIVILEGESON *.* TO'admin'@'%'WITHGRANTOPTION;FLUSHPRIVILEGES; +``` + +> 提示:生产环境不建议接受全网段连接,请配合防火墙或 VPN 系统保障 + + + +## 总结 + + + +通过上述步骤,你已经成功在 openEuler 系统上安装并启用 MySQL,同时可选配置防火墙和远程连接。 + + + +END + + diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-00.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-00.png new file mode 100644 index 0000000000000000000000000000000000000000..78afaebc2c4037b69074bfa07d8b196c0dc4ddff Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-00.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-01.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-01.png new file mode 100644 index 0000000000000000000000000000000000000000..47d1b8a9cdf95828854f6c6329bfbf43481acfd2 Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-01.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-02.1.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-02.1.png new file mode 100644 index 0000000000000000000000000000000000000000..d3b59ce4d9418e4acdd1b3b24b3513ba4bf7ee29 Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-02.1.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-02.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-02.png new file mode 100644 index 0000000000000000000000000000000000000000..f248632201f7684c9c0c4f47b309ddba14be8c4d Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-02.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-03.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-03.png new file mode 100644 index 0000000000000000000000000000000000000000..8408a80f2eae0336276ba003cb058dded1953fed Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-03.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-04.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-04.png new file mode 100644 index 0000000000000000000000000000000000000000..ff90ac2e8409a3444dea45f7e606059c1450cf82 Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-04.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-05.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-05.png new file mode 100644 index 0000000000000000000000000000000000000000..57d9fd0186da67dc3d782c250ef1380aea64bfcf Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-05.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-06.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-06.png new file mode 100644 index 0000000000000000000000000000000000000000..b8ef8b390ada69ee5cd7b8431c58b565663a5206 Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-06.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-07.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-07.png new file mode 100644 index 0000000000000000000000000000000000000000..3ec4c1b55228ddf2d3cd9e9bef1dcd427af5fc68 Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-07.png differ diff --git a/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-08.png b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-08.png new file mode 100644 index 0000000000000000000000000000000000000000..c99e6afbcb79dcf0b6b1223b2b8b69cd48428271 Binary files /dev/null and b/app/zh/blog/20250731-openeuler-install-mysql/images/20250731-openeuler-install-mysql-08.png differ diff --git a/app/zh/blog/20250812-openeuler-kserve-qwen3/20250812-openeuler-kserve-qwen3.md b/app/zh/blog/20250812-openeuler-kserve-qwen3/20250812-openeuler-kserve-qwen3.md new file mode 100644 index 0000000000000000000000000000000000000000..c60b3fb70b53f9e623ede9f81384b2fac58ba3bd --- /dev/null +++ b/app/zh/blog/20250812-openeuler-kserve-qwen3/20250812-openeuler-kserve-qwen3.md @@ -0,0 +1,194 @@ +--- +title: 在 openEuler 上使用 KServe 部署 Qwen3 +category: blog +date: 2025-07-31 +tags: + - openEuler + - MySQL +archives: 2025-07-31 +author: openEuler +summary: KServe 是一种基于 Kubernetes 的模型服务(Model Serving)平台,能够简化机器学习模型在生产环境中的部署和管理。通过标准化的接口和 CRD(自定义资源定义),KServe 支持多种主流推理后端(如 TensorFlow Serving、TorchServe、Triton Inference Server 及 Hugging Face Server),适用于各类深度学习模型的在线推理服务。本文将演示如何在 OpenAtom openEuler(简称“openEuler”)操作系统上部署并使用 KServe,进行 Hugging Face Qwen3 模型的文本生成任务。 +--- + + +## 简介 + +KServe 是一种基于 Kubernetes 的模型服务(Model Serving)平台,能够简化机器学习模型在生产环境中的部署和管理。通过标准化的接口和 CRD(自定义资源定义),KServe 支持多种主流推理后端(如 TensorFlow Serving、TorchServe、Triton Inference Server 及 Hugging Face Server),适用于各类深度学习模型的在线推理服务。 + +本文将演示如何在 OpenAtom openEuler(简称“openEuler”)操作系统上部署并使用 KServe,进行 Hugging Face Qwen3 模型的文本生成任务。 + +## 场景说明 + +在本示例中,我们将演示如何通过部署 Hugging Face Serving 运行时的 InferenceService,将 Hugging Face 上的 Llama3 模型用于文本生成任务。 + +KServe 的 Hugging Face 运行时默认采用 vLLM 作为后端来服务大语言模型(LLM),相比 Hugging Face 官方 API 能够实现更快的首 token 响应时间(TTFT)和更高的 token 生成吞吐量。 + +## 环境准备 + +### 操作系统版本 + +本指南以 **openEuler 24.03 LTS SP2** 为例,其他新版本 openEuler 亦可参考。请确保系统已更新到最新补丁,并具有 sudo 权限。 + +### 基础依赖安装 + +1. 安装必要的系统工具和依赖: + +```shell +yum update -y +yum install -y wget curl tar iptables +``` + +2. 安装 Docker + +```shell +curl -sL https://raw.githubusercontent.com/cnrancher/euler-packer/refs/heads/main/scripts/others/install-docker.sh | bash - +``` + +3. 安装 Kind + +```shell +curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.29.0/kind-linux-amd64 +chmod +x ./kind +mv ./kind /usr/local/bin/kind +``` + +4. 安装 Kubenetes CLI + +```shell +curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" +install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl +``` + +5. 安装 Helm + +```shell +wget https://get.helm.sh/helm-v3.18.4-linux-amd64.tar.gz +tar -zxvf helm-v3.18.4-linux-amd64.tar.gz +mv linux-amd64/helm /usr/local/bin/helm +``` + +## 安装步骤 + +### 安装 KServe + +1. 创建 Kubernetes 集群 + +```shell +kind create cluster +``` + +2. 切换 kubectl 上下文 + +```shell +kubectl config use-context kind-kind +``` + +3. 安装 KServe 及相关依赖 + +```shell +curl -sL "https://gitee.com/openeuler/openeuler-docker-images/raw/master/AI/kserve/controller/doc/quick_install.sh" | bash -s -- -r +``` + +### 部署 Qwen3 InferenceService + +1. 创建 Hugging Face Token 密文对象 + + ```shell + kubectl apply -f - < + EOF + ``` + +2. 创建 Hugging Face Qwen3 服务的 CRD 配置 + + ``` + kubectl apply -f - < POST /openai/v1/completions HTTP/1.1 +> Host: huggingface-qwen3-default.example.com +> User-Agent: curl/7.88.1 +> Accept: */* +> content-type: application/json +> Content-Length: 91 +> +< HTTP/1.1 200 OK +< date: Tue, 12 Aug 2025 05:36:03 GMT +< server: uvicorn +< content-length: 474 +< content-type: application/json +< +* Connection #0 to host 10.96.149.169 left intact +{"id":"cmpl-a2ead2a3246f47fe85c48b7aadbd30d5","object":"text_completion","created":1754976963,"model":"qwen3","choices":[{"index":0,"text":" in the style of a haiku, with each line containing a different color and a different season, and each line also incorporating a different sense. The","logprobs":null,"finish_reason":"length","stop_reason":null,"prompt_logprobs":null}],"usage":{"prompt_tokens":5,"total_tokens":35,"completion_tokens":30,"prompt_tokens_details":null}} +``` + diff --git a/app/zh/news/20250630-dyb/20250630-dyb.md b/app/zh/news/20250630-dyb/20250630-dyb.md new file mode 100644 index 0000000000000000000000000000000000000000..f5dd3ba3e6f4d52d28d03da0d905cdc5d9f44fa9 --- /dev/null +++ b/app/zh/news/20250630-dyb/20250630-dyb.md @@ -0,0 +1,286 @@ +--- +title: 'openEuler 社区 2025 年 5 月运作报告' +date: '2025-06-30' +category: news +tags: + - openEuler + - 社区运作报告 +banner: 'img/banners/20250630-dyb-01.png' +author: 'openEuler' +summary: 'openEuler 社区 2025 年 5 月运作报告' +--- + + +![图片](./media/20250630-dyb-01.png) + +**概述** + +2025年5月,OpenAtom openEuler(简称: openEuler)社区迎来了多项技术创新,覆盖了从开发者工具链到硬件适配的全方位发展。首先,社区推出了智能软件包自动升级工具链,利用大模型技术优化软件包维护流程,显著提升开发效率。Conda软件包的引入丰富了openEuler软件中心的生态发展。作为 openEuler DevStation 的核心组件,DevKit 为开发者提供了更智能的编译调试能力,显著提升开发效率。此外,社区发布了轻量化Distroless镜像和远程证明服务,分别提升了容器安全性和机密计算能力。 + +在应用层面,openEuler联合ST和米尔科技推出了基于STM32MP257处理器的高性能AI Demo,实现了高效的图像和视频识别。另外,openEuler LLVM RVA23 通过香山"昆明湖"RISC-V平台验证(OERV团队实施),推动RISC-V软硬件协同创新。 + +openEuler社区持续活跃,多维度推动开源生态的发展。在技术合作方面,深化多样性算力的生态合作,积极在鲲鹏开发者大会、Linaro Connect 2025、RISC-V Summit 2025等大会活跃,展示社区最新发展成果;通过开展Workshop实践及多地Meetup活动,促进技术交流与社区共建。 + +openEuler始终重视开源人才培养,积极为开发者提供成长平台。今年社区再度深度参与"开源之夏2025"活动,提供60个涵盖内核、云原生、AI等技术领域项目,报名通道将于6月9日截止,欢迎高校开发者们踊跃参加。 + +本月报阅读时长15分钟。 + +欢迎细品。 + +**社区规模** + +截至2025年5月31日,openEuler 社区用户累计超过409万。超过2.2万名开发者在 社区 持续贡献。社区累计产生 218.1K个PRs、116.5K条Issues。目前,加入openEuler社区的单位成员2052家,5月新增21家。 + +![图片](./media/20250630-dyb-02.png) + +社区贡献看板(截至2025/05/31) + +**社区事件** + +**openEuler助力鲲鹏+xPU全方位协同,加速使能AI业务生态** + +在5月23日举办的鲲鹏开发者大会上,基于openEuler 的鲲鹏+xPU 推理解决方案正式发布。 openEuler 通过与鲲鹏的协同,实现了生态、内存和算力的全方位协同。 + +大会期间,openEuler通过沉浸式Workshop和Codelab体验区,吸引了众多开发者参与。在openEuler 开发平台,开发者深度体验,验证了“开发需求口语化,系统自动解析执行”的创新模式和“对话即编程”的创新工作流,均获得了开发者的高度评价和积极反馈。 + +原文阅读: + +[openEuler 助力鲲鹏+xPU全方位协同,加速使能AI业务生态](https://www.openeuler.org/zh/news/20250530-dkadc/20250530-dkadc.html) + +![图片](./media/20250630-dyb-03.png) + +**openEuler社区亮相Linaro Connect 2025** + +5月14日-16日,Linaro Connect 2025在在葡萄牙里斯本举办。openEuler在会上展示了与Arm生态的深度合作成果。作为Linaro的重要合作伙伴,openEuler通过5场主题演讲,分享了从AI全栈支持、存储优化到大数据技术的创新突破,吸引了全球开发者的关注。相关的回放视频可在openEuler Youtube查看,欢迎感兴趣的朋友访问: https://www.youtube.com/@openeuler/community + +原文阅读: + +[openEuler社区精彩亮相Linaro Connect 2025](https://www.openeuler.org/zh/news/20250530-linaro1/20250530-linaro1.html) + +![图片](./media/20250630-dyb-04.png) + +**openEuler参加RISC-V Summit Europe 2025** + +5月12日-15日,RISC-V Summit Europe 2025 在法国巴黎举办。作为全球RISC-V领域的年度盛会,本次大会汇聚了来自全球的行业领袖、技术专家及学术研究者,共同探讨RISC-V在服务器、AI、云计算等领域的最新进展。openEuler 以黄金赞助的身份深度参与,分享社区在RISC-V生态中的多项技术突破与未来规划。 + +原文阅读: + +[openEuler参加 RISC-V Summit Europe 2025](https://www.openeuler.org/zh/news/20250530-riscv1/20250530-riscv1.html) + +![图片](./media/20250630-dyb-05.png) + +**openEuler云原生开源中间件Meetup在天津举办** + +5月27日,由东方通与openEuler社区联合主办的openEuler云原生开源中间件Meetup在天津职业技术师范大学圆满落幕。此次活动通过深入解析轻舟、云翼两大开源项目,结合实际案例演示,让更多年轻开发者接触到前沿云原生技术,吸引更多新鲜力量参与openEuler社区贡献开源力量。 + +原文阅读: + +[东方通&openEuler Meetup走进高校,携手年轻开发者解锁云原生开发效率变革](https://www.openeuler.org/zh/news/20250530-dft/20250530-dft.html) + +![图片](./media/20250630-dyb-06.png) + +**openEuler & deepin Meetup 在成都举办** + +5 月 24 日,由 openEuler社区、deepin社区联合主办,如意玲珑社区承办的openEuler & deepin Meetup在成都举办,活动以 “共建开源生态” 为核心,围绕文档生态、应用分发、AI 编程、开源工具等主题进行分享讨论,推动开源生态的发展。 + +原文阅读: + +[探索开源生态进化路径!openEuler & deepin Meetup 成都站全景回顾](https://www.openeuler.org/zh/news/20250530-deepin1/20250530-deepin1.html) + +![图片](./media/20250630-dyb-07.png) + +**开源之夏 2025 | openEuler热门项目课题招募中,欢迎报名** + +开源之夏 2025 openEuler项目申请已进入最后冲刺阶段。在6月9日之前, 学生可通过开源之夏官网注册、与导师沟通项目并提交项目申请。对 openEuler社区课题感兴趣的同学,可以提前联系导师沟通课题需求,找到最适合自己的课题方向。 + +当前,openEuler 社区累计开放60个项目任务,涵盖内核、云与云原生、编译器、嵌入式、AI等多个技术方向。学生可访问开源之夏官网,筛选“openEuler”社区,按编号或关键词查找并申请感兴趣的课题。 + +本次活动中成功结项的同学可根据项目难度获得结项成果及奖金,并有机会获选主办方优秀学生。 + +开源之夏2025: https://summer-ospp.ac.cn/ + +原文阅读: + +[1] [开源之夏2025 | openEuler社区热门项目课题招募中!快来抢占席位!](https://mp.weixin.qq.com/s?__biz=MzkyMjYzNjU0Ng==&mid=2247515316&idx=2&sn=2de19a71e7ee1996c10f2256165e0eae&scene=21&poc_token=HNeTnmijrKnJ_B0KAnmRcQP4x34WDyE7ETAfLGQJ) + +[2] [开源之夏2025学生报名启动,openEuler社区60个项目课题正式上线!](https://mp.weixin.qq.com/s?__biz=MzkyMjYzNjU0Ng==&mid=2247515222&idx=2&sn=bcd1c7fea6d37a65e0b367ec0eeff4bc&scene=21&poc_token=HOWTnmijtGDMIxRLhEgQ1W5Uk1JeWVvqf63Qiybc) + +[3] [开源之夏2025 | openEuler项目课题讲解回放一键get!](https://mp.weixin.qq.com/s?__biz=MzkyMjYzNjU0Ng==&mid=2247515249&idx=1&sn=6205fb54eb624d18691f4313d3984bf3&scene=21&poc_token=HPCTnmijW589iK6eDmTyJL57bTV0dnX6X9Z1CVIt) + +![图片](./media/20250630-dyb-08.png) + +**技术进展** + +**openEuler推出智能软件包自动升级工具链** + +为解决软件包维护中版本感知滞后、编译繁琐、日志分析复杂等痛点,openEuler推出智能软件包自动升级工具链。 这是一款基于大模型LLM技术构建的开发者效率增强系统, 聚焦于解决软件包升级全流程中的关键难点,包括"升级-编译-日志分析-修复-验证-引包"等环节,显著提升软件包维护效率。 + +**核心功能:** + +1. 上游感知升级: 实时感知上游软件包版本变化,创建自动升级PR,帮助开发; +2. 智能修复:使用大模型COT思维链自动分析编译错误日志,结合源码目录树,自动触发修改; +3. 一键重编译:联动EulerMaker一键重编译; +4. 智能Changelog:智能提取上游Changelog版本变化; +5. 智能引包分析:智能分析升级后依赖缺失,创建引包issue; +6. 对话式修改:支持自然语言交互,开发者可通过自然语言。 + +**获取与使用方式:** + +1. 工具链已集成至openEuler基础设施,开发者可通过参考以下文档快速接入 : + + 自动升级仓库配置指南: https://gitee.com/openeuler/infrastructure/blob/master/autoupgrade/readme.md +2. 查看实际应用案例: + + 智能修复示例: https://gitee.com/src-openeuler/perl-Sub-Quote/pulls/8 + + 引包分析示例: https://gitee.com/src-openeuler/perl-MooseX-Types-Common/pulls/3 + + 对话式修改示例: https://gitee.com/src-openeuler/rubygem-puma/pulls/62 +3. 如需技术支持或功能咨询,可通过openEuler社区论坛讨论交流: https://forum.openeuler.org/tag/sig-infratructure + +该工具链将持续迭代更新,欢迎开发者反馈使用体验。 + +**openEuler软件中心新增Conda生态支持** + +Conda是一个开源的跨平台环境管理和软件包管理系统,广泛应用于数据科学、人工智能等领域,其中包含了大量的科学计算、数据分析等领域的高质量软件包。 + +为方便openEuler开发者使用Conda生态软件包,社区现已支持将已验证的Conda软件包上架至openEuler软件中心。相关软件包信息统一存放在 openEuler/conda-ecopkgs 仓库。 + +**上架流程:** + +1. 向openEuler/conda-ecopkgs仓库提交新增软件包信息的PR; +2. 等待仓库门禁验证PR提供的版本支持信息; +3. 验证通过后,Maintainer将合入PR; +4. PR合入后24小时内,软件包将自动上架至openEuler软件中心。 + +欢迎开发者提交更多经过验证的Conda软件包,共同丰富openEuler的软件生态。 + +[1] openEuler/conda-ecopkgs仓库: https://gitee.com/openeuler/conda-ecopkgs + +[2] openEuler软件中心: https://easysoftware.openeuler.openatom.cn/zh + +![图片](./media/20250630-dyb-09.png) + +**openEuler推出Distroless镜像** + +近期,openEuler社区推出Distroless镜像系列,涵盖Base、Static、CC、Ruby、Python、Node.js、PHP、JRE等多个版本,旨在为开发者提供更轻量化、更高安全性的容器运行时环境。 + +Distroless镜像是移除所有非必要组件(如Shell、包管理器、系统工具)的极简容器镜像,仅保留应用运行所需的最小依赖。其核心亮点在于: + +- 安全加固:无Shell和包管理器,攻击面减少 +- 镜像瘦身:相比传统镜像体积缩小50%~90%,更利于存储和传播 + +当前,开发者可通过 Docker Hub, Quay, hub.oepkgs(中科院软件所,国内推荐)等平台获取所有Distroless镜像。 + +镜像获取: + +- Docker Hub: https://hub.docker.com/u/openeuler +- Quay: https://quay.io/organization/openeuler +- hub.oepkgs(中科院软件所): https://hub.oepkgs.net/ + +原文阅读: + +[极简安全——openEuler Distroless镜像](https://www.openeuler.org/zh/blog/20250512-openeuler-distroless/202505120-openeuler-distroless) + +**DevKit 增强 openEuler DevStation 开发体验** + +作为 openEuler DevStation 开发者工作站的核心组件,DevKit for DevStation 进一步优化鲲鹏平台的开发体验。该工具深度融入 openEuler 生态,支持从开发、编译到调试、调优的全流程,帮助开发者更高效地构建鲲鹏应用。 + +工具覆盖开发全流程,包括编译、调试、调优等环节,特别针对 x86 向鲲鹏架构迁移的场景,DevKit 提供高效、精准的源码级迁移与转换能力,显著降低迁移门槛与成本,帮助开发者平滑过渡,并更加高效地利用 openEuler 生态资源。 + +欢迎大家体验: + +https://easysoftware.openeuler.org/zh/field/detail?oepkgPkgId=openEuler-25.03extrasaarch64kunpeng-devkit1.0.0-1aarch64; + +**openEuler Embedded联合ST与米尔科技推出高性能AI Demo** + +openEuler Embedded联合ST(意法半导体)和米尔科技,经过半年多的深度合作,完成了AI Demo(目标检测与分类)的开发适配。 + +该Demo基于米尔MYD-LD25X开发板(搭载STM32MP257处理器,带NPU加速单元),支持以太网、WIFI/BT、USB、RS485/RS232、CAN、AUDIO、LVDS/HDMI以及摄像头功能,实现了AI模型部署的推理服务,对静态图片识别准确度达99.6%,对40fps视频识别达到时延25ms,准确率87%。 + +**openEuler推出远程证明服务OEAS测试版,欢迎申请体验** + +openEuler社区推出openEuler Attestation Service (OEAS)测试版,这是一项基于secGear远程证明统一框架的机密计算远程证明服务。OEAS致力于提供简单、易用的多TEE平台兼容方案,推动机密计算技术的普及与生态建设。 + +当前,OEAS-Web测试版已开放基线管理、证明策略管理、资源策略管理等功能,同时提供API接口支持远程证明验证。欢迎开发者通过社区申请体验。 + +**申请方式:** + +1. 发送申请邮件至:openeuler-security@openeuler.org +2. 邮件主题:OEAS远程证明服务使用申请 +3. 邮件正文需提供申请人信息、社区用户名及其账号。 + +openEuler远程证明服务(测试版)地址: + +https://oeas.openeuler.openatom.cn/management/home + +相关阅读: + +[openEuler secGear远程证明统一框架](https://www.openeuler.org/zh/blog/20250409-secGear/20250409-secGear.html) + +**OERV 团队完成 openEuler LLVM RVA23 在香山"昆明湖"平台的验证** + +近期,OERV 团队(openEuler on RISC-V)在香山“昆明湖” V2 FPGA 平台上成功完成了对 openEuler LLVM RVA23 最小镜像的第二轮验证工作。本轮验证完全通过软件流程执行,并成功输出了稳定的 BUG 复现报告。该成果基于团队与北京开源芯片研究院的合作,将支持 RVA23 新标准(包含向量扩展等关键特性)的 openEuler LLVM 演示版本成功移植至昆明湖处理器,并完成了操作系统及典型应用的测试验证。 + +此进展作为“LLVM 平行宇宙计划”在 RISC-V 服务器场景下的重要实践,已在 RISC-V Summit 2025 通过海报形式展示,突显了 LLVM 构建链对新硬件平台及 RVA23 标准的有效支持能力,为后续软硬件协同发展奠定了基础。 + +**软硬件兼容性测评** + +截至2025年5月31日,openEuler软硬件兼容性测评新增46个,其中北向(ISV)新增39个,南向(IHV)新增3个,OSV新增4个。 + +- 兼容性列表: https://www.openeuler.org/zh/compatibility/ +- OSV技术测评列表 https://www.openeuler.org/zh/approve/ + +**安全公告** + +2025年5月社区共发布安全公告122个,修复漏洞180个(其中 Critical 7个,High 35个,其它 138个) 。 + +- **重点漏洞提醒** + +如下漏洞评估影响较大,请重点关注。 + +OWASP ModSecurity 核心规则集(CRS)受到HTTP multipart请求的部分规则绕过影响。通过在Content-Type或已废弃的Content-Transfer-Encoding multipart MIME头字段中提交使用某种字符编码方案的有效载荷,这些有效载荷将不会被Web应用防火墙引擎解码和检查,因此multipart有效载荷将绕过检测。支持这些编码方案的后端可能存在潜在漏洞并被利用。受影响的版本包括旧版的3.0.x和3.1.x,以及目前支持的版本3.2.1和3.3.2。集成商和用户建议升级到3.2.2和3.3.3版本。针对这些漏洞的缓解措施依赖于安装最新版本的ModSecurity(v2.9.6 / v3.0.8)。 **(CVE-2022-39956)** + +CVSS评分为9.8分 + +公告链接: + +https://www.openeuler.openatom.cn/zh/security/cve/detail/?cveId=CVE-2022-39956&packageName=mod_security + +影响范围: + +- openEuler-20.03-LTS-SP4 +- openEuler-22.03-LTS-SP3 +- openEuler-22.03-LTS-SP4 + +Apache Tomcat 中存在未正确中和转义、元或控制序列的漏洞。对于一小部分不太可能的重写规则配置,特别构建的请求可能会绕过某些重写规则。如果这些重写规则有效地实施了安全限制,则这些限制可能会被绕过。此问题影响以下版本的 Apache Tomcat:从 11.0.0-M1 到 11.0.5,从 10.1.0-M1 到 10.1.39,从 9.0.0.M1 到 9.0.102。建议用户升级到修复此问题的版本[FIXED_VERSION]。 **(CVE-2025-31651)** + +CVSS评分为9.8分 + +公告链接: + +https://www.openeuler.openatom.cn/zh/security/cve/detail/?cveId=CVE-2025-31651&packageName=tomcat + +影响范围: + +- openEuler-20.03-LTS-SP4 +- openEuler-22.03-LTS-SP3 +- openEuler-22.03-LTS-SP4 +- openEuler-24.03-LTS +- openEuler-24.03-LTS-SP1 + +- **漏洞防护** + +openEuler社区针对在维版本例行修复漏洞,发布安全补丁。 建议用户关注openEuler官网安全公告,及时安装漏洞补丁进行防护。 + +openEuler 安全公告: + +https://www.openeuler.org/zh/security/security-bulletins/ + +**感谢每一位朋友、开发者的支持** + +因为大家的辛勤贡献,openEuler 的每一天都发生着好的事情。小编限于视野和能力,难免有所遗漏,在此表示歉意。同时,衷心感谢社区成员单位、SIG组和开发者朋友们的贡献: + +![图片](./media/20250630-dyb-10.png) + +* 以上不分先后顺序 \ No newline at end of file diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-01.png b/app/zh/news/20250630-dyb/media/20250630-dyb-01.png new file mode 100644 index 0000000000000000000000000000000000000000..8d0754ec189e9cebe386da680d957f68902b3caa Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-01.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-02.png b/app/zh/news/20250630-dyb/media/20250630-dyb-02.png new file mode 100644 index 0000000000000000000000000000000000000000..75f24603f29c175e0725fbabb4a902f5d2f4dc95 Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-02.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-03.png b/app/zh/news/20250630-dyb/media/20250630-dyb-03.png new file mode 100644 index 0000000000000000000000000000000000000000..07fdc99dfbbeacbfe44093c2e8cc1f87f3fc71e5 Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-03.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-04.png b/app/zh/news/20250630-dyb/media/20250630-dyb-04.png new file mode 100644 index 0000000000000000000000000000000000000000..b99a8833d6f7371c46c696f43207523f6cd4b1e4 Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-04.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-05.png b/app/zh/news/20250630-dyb/media/20250630-dyb-05.png new file mode 100644 index 0000000000000000000000000000000000000000..791747ebbbd590167dc8c79b27cbd0b7093f0af0 Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-05.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-07.png b/app/zh/news/20250630-dyb/media/20250630-dyb-07.png new file mode 100644 index 0000000000000000000000000000000000000000..beb22388552a6a42e9155944c3eeb612c590337f Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-07.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-08.png b/app/zh/news/20250630-dyb/media/20250630-dyb-08.png new file mode 100644 index 0000000000000000000000000000000000000000..3c9bc7d97eb41d10142f03b568ce78823e37a59e Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-08.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-09.png b/app/zh/news/20250630-dyb/media/20250630-dyb-09.png new file mode 100644 index 0000000000000000000000000000000000000000..b399aa20f42420a6b493d5c011e602774a77997e Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-09.png differ diff --git a/app/zh/news/20250630-dyb/media/20250630-dyb-10.png b/app/zh/news/20250630-dyb/media/20250630-dyb-10.png new file mode 100644 index 0000000000000000000000000000000000000000..66c04593320dc38c73e54c6e30b0296278e65b23 Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250630-dyb-10.png differ diff --git a/app/zh/news/20250630-dyb/media/20250639-dyb-06.png b/app/zh/news/20250630-dyb/media/20250639-dyb-06.png new file mode 100644 index 0000000000000000000000000000000000000000..5ceb57fd824d02a78fb77c89a0a4872753d5429a Binary files /dev/null and b/app/zh/news/20250630-dyb/media/20250639-dyb-06.png differ diff --git a/app/zh/news/20250703-bigdata-meetup/20250703-bigdata-meetup.md b/app/zh/news/20250703-bigdata-meetup/20250703-bigdata-meetup.md new file mode 100644 index 0000000000000000000000000000000000000000..13110c90d45690e7a3651aae72bad6cfb78b27ed --- /dev/null +++ b/app/zh/news/20250703-bigdata-meetup/20250703-bigdata-meetup.md @@ -0,0 +1,50 @@ +--- +title: 'openEuler Bigdata Meetup 回顾:大数据与 AI 时代的技术突破与实践' +date: '2025-07-03' +category: news +tags: + - openEuler + - Meetup +banner: 'img/banners/20250423-news.png' +author: 'openEuler' +summary: 'openEuler Bigdata Meetup 回顾:大数据与 AI 时代的技术突破与实践' +--- + + +2025 年 6 月 25 日,OpenAtom openEuler (简称“openEuler”或 “开源欧拉”) Bigdata SIG 在线上举办了以大数据与 AI 为主题的 Meetup 活动,这场持续近 3 小时的技术分享会通过 B 站同步直播,五位行业专家围绕实时数据库、分布式系统架构、智能查询优化及大数据生态管理等前沿议题展开深度交流,展现了 openEuler 在技术落地中的创新实践,让我们来回顾一下这场活动的高光时刻。 + +直播回放链接 + +https://www.bilibili.com/video/BV1D7KZzmEQH + +#### Apache Doris:AI 时代实时数据分析的核心引擎 + +SelectDB 架构师朱伟以 “为 AI 数据就绪” 为主题,揭开了 Apache Doris 在实时分析领域的技术演进脉络。作为 2013 年诞生于百度、2022 年成为 Apache 顶级项目的开源实时分析数据库,Doris 已在超 5000 家中大型企业落地,从腾讯、字节等互联网巨头的用户行为分析,到制造业的设备数据监控,其每秒百万行的数据写入能力与亚秒级查询性能,正成为实时决策系统的核心支撑。 + +在 AI 与 Agent 技术爆发的背景下,Doris 针对数据实时性、响应延迟与迭代速度的需求,构建了三大应用场景:面向金融反欺诈与广告推荐等场景的实时分析引擎,已在字节落地超 30 万核的部署规模;作为湖仓融合方案的统一查询引擎,较 Trino 提升 3-5 倍性能,被顺丰、网易等头部企业用于替代原有架构;以及作为可观测性平台的日志分析核心,以 1/5 的存储成本实现两倍于 Elasticsearch 的性能。朱伟透露,Doris 即将推出的混合检索特性将支持向量数据库与结构化数据的联合查询,而 AI 算子能力可直接在 SQL 中调用大模型进行文本情感分析,其中混合检索功能将于 7 月发布预览版。 + +#### 无冲突复制数据类型:异地多活系统的一致性破局之道 + +金蝶天燕研究员常智针对分布式系统中的数据一致性难题,带来了无冲突复制数据类型(CRDT)的实践探索。在异地多活架构中,传统主从模式面临跨区域访问延迟高的痛点,而对等多活架构的核心挑战在于解决分布式环境下的操作冲突。常智以 Counter 计数器与 Set 集合为例,阐释了先天无冲突数据类型的三大特性 —— 交换律、结合律与幂等性。 + +对于必须手动消解冲突的场景,常智提出基于向量时钟的冲突识别机制:为每个键值对维护 N 维向量(N 为节点数),通过比较向量值判断操作顺序。例如两地同时修改字符串值时,时间戳较晚的操作将被优先保留;而在删除与写入冲突中,“添加优先” 策略可避免数据丢失。该方案在金融交易系统中实现了 99.99% 的可用性,且对读写延迟影响小于 5%,完全兼容 Redis 命令生态,为异地多活缓存系统提供了高性能解决方案。 + +#### 智能查询优化:AI 重构大数据查询的执行范式 + +中国人民大学信息学院博士研究生何家豪聚焦大数据查询优化的技术变革,直指传统优化器的三大痛点:基数估计误差导致的执行计划偏差、动态规划带来的搜索空间爆炸,以及缺乏历史经验复用的局限性。他以微软 AutoSteer 与阿里 Lero 为例,解析了 AI 辅助优化的技术路径:前者通过机器学习动态开关优化规则,后者利用神经网络修正基数估计。LEAP 则通过端到端的构造查询计划将在复杂 Join 场景中的执行时间缩短 54% + +何家豪分享的下一代优化框架将机器学习嵌入查询执行阶段,实现动态自适应调整:它可以根据执行时的反馈信息对查询计划进行调整;并通过强化学习不断改善自身优化策略。在 3 个标准数据集中的测试结果中显示,这样的优化方式可以提升 Spark SQL 的性能高达 70%,展现了 AI 技术对大数据查询引擎的重构潜力。 + +#### BigTop Manager:大数据生态管理的自动化革命 + +Apache Ambari/Bigop PMC、Linaro 工程师吴治国揭示了当前大数据生态的管理困境:大数据组件版本兼容性管理粗放,Hadoop 生态组件(如 HDFS、Spark、HBase)版本组合缺乏系统性验证,导致生产环境频繁出现接口不匹配、数据读写异常等问题。作为 Apache 基金会的顶级项目,Bigtop 通过标准化组件打包、集成测试套件与配置模板库,为生态统一提供了基础支撑,而最新推出的 Bigtop Manager 则将自动化管理推向新高度。 + +该工具通过统一的 Web 页面进行运维,且提供 Prometheus 等基础服务进行监控告警等功能的全局管理,默认支持多集群、多 Stack 的部署方式,为用户提供了扩展性的同时解决市面上同类工具相应功能缺失的问题。吴治国透露,未来的版本将支持 Kubernetes 云原生部署,并引入大模型 Agent 实现智能运维能力,自动解析组件错误日志并进行相应的操作,进一步降低大数据集群的运维门槛。 + +#### 鲲鹏服务器上 Spark 与 Velox 的优化实践 + +openEuler Bigdata SIG maintainer、Apache Bigtop committer 陈强在演讲中围绕鲲鹏服务器上 Spark 与 Velox 的优化实践展开,深入剖析了大数据计算引擎的性能瓶颈与解决方案。他指出,Spark 作为主流的分布式计算框架,支持 SQL、机器学习等多场景处理,但基于 Java/Scala 的实现难以充分利用 CPU 向量化指令集,且 Java GC 开销显著,制约了性能上限。为此,业界探索通过 Native 引擎优化路径,其中 Spark+Velox 方案通过 Gluten 层将计算任务转换为底层算子,借助 Velox 整合的向量化计算、内存管理等基础库,直接对接鲲鹏硬件加速能力(如 UADK 压缩引擎),实现对 ARM 架构的高效适配和优化。 + +在性能分析层面采用多维度监控手段:通过 Spark 原生 Web UI 定位 Job/Stage 层级的耗时节点;利用 nmon 识别 CPU 和磁盘 IO 等系统资源使用瓶颈点;使用 Jeprof 和 BPF 等工具分析内存分配等相关特征数据;借助 async-profiler 等工具抓取热点函数调用栈,以及 perf record 定位函数瓶颈点的代码片段。发现 CRC32 校验、内存分配等环节存在优化空间,针对这些瓶颈,团队实施了系列优化措施:在向量化方面,既通过 GCC 编译选项开启自动向量化,又手动集成 ARM NEON 指令集;硬件加速层面,将数据压缩任务卸载至鲲鹏专用加速器;内存管理上,替换为 jemalloc 分配器,显著降低上下文切换与缺页中断,使典型 SQL 任务执行时间从 64 秒缩短至 48 秒。 + +此外,陈强还介绍了 openEuler 社区 bigdata SIG,包括维护 Hadoop、Spark 等核心组件、孵化有潜力的大数据技术组件、社区间交流与合作、开源实习等交流渠道。介绍了参与 SIG 的各种方式,包括双周例会、订阅邮件等。 diff --git a/app/zh/news/20250704-hongkong-meetup/20250704-hongkong-meetup.md b/app/zh/news/20250704-hongkong-meetup/20250704-hongkong-meetup.md new file mode 100644 index 0000000000000000000000000000000000000000..777afc71c0f388e9db618af5c927fbddc47f0d09 --- /dev/null +++ b/app/zh/news/20250704-hongkong-meetup/20250704-hongkong-meetup.md @@ -0,0 +1,67 @@ +--- +title: 'openEuler HongKong Meetup 2025 活动回顾:开源技术与生态创新的深度碰撞' +date: '2025-07-04' +category: news +tags: + - openEuler + - Meetup +banner: 'img/banners/20250704-hongkong-meetup-01.png' +author: 'openEuler' +summary: 'openEuler HongKong Meetup 2025 活动回顾:开源技术与生态创新的深度碰撞' +--- + +2025 年 6 月 12 日, OpenAtom openEuler(简称:“openEuler”或“开源欧拉”) Meetup 首次登陆香港,该活动由香港城市大学学联CSSA承办。作为连接粤港澳大湾区技术力量的重要活动,本次活动汇聚了开源领域专家、高校学者与开发者,共同探讨面向数字基础设施的操作系统创新与机密计算技术落地路径。 + +![图片](./media/20250704-hongkong-meetup-01.png) + +## 郑振宇:openEuler 社区发展进展及未来规划 + +openEuler 社区运营工作组组长郑振宇以 “面向数字基础设施的开源操作系统” 为核心,系统介绍了 openEuler 的技术定位与生态发展。他提到,openEuler 不仅是一个支持服务器、边缘计算、嵌入式设备的操作系统,更兼容 ARM、x86、RISC-V 等多元硬件架构,通过集成 7000 + 开源软件与孵化 500 + 创新项目,构建了开放的技术孵化平台。 + +![图片](./media/20250704-hongkong-meetup-02.png) + +在应用落地层面,openEuler 装机量已突破 1000 万,成为国内新增市场份额第一的服务器操作系统,深度服务于电力、金融、运营商等关键领域。针对 AI 时代的挑战,郑振宇重点解读了 “OS for AI” 与 “AI for OS” 的双向战略:前者优化大模型部署底座,实现 Qwen3 等模型的 “0day 支持”,后者通过智能运维工具与 openEuler Intellgence,让操作系统具备集群负载优化、问题诊断等 AI 能力。此外,openEuler 在 RISC-V 架构上的全球领先支持,获 RISC-V Summit 官方致谢,展现了其在开源硬件生态中的核心地位。 + +## 侯明永:openEuler 机密计算技术与实践 + +openEuler 机密计算 SIG Maintainer 侯明永以数据计算安全为切入点,剖析了机密计算的技术价值和 openEuler 的解缺方案。 + +![图片](./media/20250704-hongkong-meetup-03.png) + +他指出,云计算中数据“明文计算” 的现状以及法律法规驱动数据安全的合规监管催生了机密计算— 基于硬件可信执行环境(TEE)保护数据计算安全,相比同态加密更具性能与通用性优势。 在技术架构上,openEuler 面向高安应用场景构建了进程级 EE (Trustzone 等):面向通用应用场景,构建了系统级 TEE(CCA 机密虚机、Kuasar 机密容器)实现应用无改造迁移,提升易用性;面向 AI 大模型场景,规划了集群异构 EE 等完整机密计算软件栈,其中基于 Kuasar 安全容器、机密虚机、secGear 统一 TEE 纳管等技术,构建了南向兼容多种 TEE 硬件,北向提供统一容器管理面的 Kuasar 机密容器,解决云原生场景下的易用性难题,并在 openEuler 24.03 LTS SP2 发布。另外 openEuler 正通过“最小化可信计算基(TCB) " 原则精简系统内核,降低漏洞风险,未来将聚焦多架构兼容与异构集群 TEE 数据流通,推动机密计算在金融、医疗等敏感领域的落地。 + +## Kevin Zhao:Arm 机密计算架构(CCA)的开源进展 + +openEuler SIG-Arm Maintainer Kevin Zhao 以 “Arm 机密计算架构(CCA)的开源进展” 为题,分享了 Arm 在云服务器安全领域的技术布局。 + +![图片](./media/20250704-hongkong-meetup-04.png) + +Kevin Zhao 指出,Arm 基于 Armv9-A 架构推出的 CCA 技术,通过 Realm Management Extension(RME)和内存加密机制,实现与 Intel TDX、AMD SEV 类似的机密虚拟机隔离能力。当前 Arm CCA 相关的软件特定支持正在回合至 openEuler 6.6 内核,目前已经初步完成了功能开发,支持通过虚拟平台进行开发测试,目标在 25.09 版本完全引入 CCA 软件栈功能。CCA 软件栈同时已经与 Kata-containers 和 Confidential Containers 项目集成,后续会与 Secgear 项目协作,实现机密容器的远程证明功能。 + +在开源生态协作方面,Arm 架构与 openEuler 深度整合,优化内核适配与容器支持,基于 Kata 的机密容器已实现开箱即用。未来计划推进 CCA 1.1 标准,支持设备分配与加密 I/O,并探索跨架构机密计算协同。Kevin Zhao 强调,通过社区协作,Arm CCA 正助力 openEuler 构建更安全的云原生计算底座,为金融、医疗等领域的机密计算应用提供开源解决方案。 + +## RustSBI 社区:从系统引导到开源协作的五年实践 + +RustSBI 社区 maintainer 洛佳以《RustSBI 社区项目与近期进展》为主题,分享了基于 RISC-V 架构的安全固件与引导解决方案。他提到,RustSBI 作为开源项目,已形成 “零阶段引导程序 - 安全固件 - 内核引导程序” 的完整技术链,不仅支持 Linux、openEuler 等内核在 RISC-V 开发板上的启动,还通过组件化设计实现模块跨架构复用,显著降低驱动开发成本。 + +在开源社区运营方面,洛佳强调 “兴趣驱动” 的协作模式:社区通过 20 余届开源工坊,以 “低门槛任务”(如漏洞修复、基础代码优化)吸引新手参与,同时与高校合作将竞赛项目融入开源实践。值得关注的是,RustSBI 正探索航空航天等高安全性场景的应用,计划将固件系统搭载于人造卫星,并尝试结合大模型技术开发开源智能问答工具,推动底层技术与前沿生态的融合。 + +## 密码学 GPU 加速:从学术研究到开源工程的落地实践 + +香港城市大学博士后杨昊博士带来《密码学 GPU 加速开源进展》演讲,聚焦全同态加密(FHE)等新兴密码技术的工程化挑战。 + +![图片](./media/20250704-hongkong-meetup-05.png) + +他指出,传统密码算法在 CPU 上的计算开销已无法满足 FHE 等场景需求,而 GPU 凭借数万核心与 TB 级内存带宽(如 A100 达 2TB/s),可将密文运算性能提升 50 倍以上。 + +其主导的开源库 PHANTOM 通过优化数论变换(NTT)、余数系统(RNS)等核心模块,实现了 TFHE、BFV 等全同态加密方案的 GPU 加速 —— 例如密文乘法运算从 CPU 的 20ms 降至 400 微秒。未来,PHANTOM 计划接入 CUDA 后端并与蚂蚁集团编译器团队合作,通过 “密码学算法 + AI 编译器” 集成降低应用开发门槛,推动隐私计算在 AI 领域的落地。 + +## 开源协作:从高校到社区的生态构建 + +最后,本次 Meetup 的协办方,OSCA-HK(香港高校开源联盟)的创始人李想、徐小玥进行了相关宣讲与招募。 + +![图片](./media/20250704-hongkong-meetup-06.png) + +OSCA-HK 的通过“跨校联动 + 本地化落地”模式,汇聚香港多所高校学生,搭建开源项目平台,推动开源文化在香港地区的传播。团队联合香港大学、香港中文大学、香港城市大学等高校,以“操作系统安全”、“移动应用”、“AI 本地化应用”为核心方向,展示了开源社区的技术实践成果,如基于智能体实现的的操作系统内核漏洞复现方案。其“企业-高校-社区”协同机制尤为突出——通过与 openEuler 社区等开源社区合作举办技术分享会、线下 Meetup 等活动,不仅为学生提供参与开源之夏等高含金量项目的实践机会,更有着打造活跃社区、培养香港地区开源人才的长期目标。 + +未来,OSCA-HK 计划以“短期项目孵化 + 长期人才培养”双轨并进:一方面通过开源之夏 2025 打磨高质量开源项目,另一方面搭建基于香港本地高校的开源社区平台,扩大其研究成果的影响力。正如其成员所言:”开源不是独行,而是让每个高校的代码,成为城市创新的基石。“这种从校园到产业的生态连接,正在书写香港开源新篇。 \ No newline at end of file diff --git a/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-01.png b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-01.png new file mode 100644 index 0000000000000000000000000000000000000000..6a0843a448a0b6faaa14657b5064ea3c36f1dcce Binary files /dev/null and b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-01.png differ diff --git a/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-02.png b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-02.png new file mode 100644 index 0000000000000000000000000000000000000000..e78fcce20e1be12d85e5e0fded157918f89694a4 Binary files /dev/null and b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-02.png differ diff --git a/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-03.png b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-03.png new file mode 100644 index 0000000000000000000000000000000000000000..326d2fb96bae9851847855c3d582f069e7a35e4f Binary files /dev/null and b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-03.png differ diff --git a/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-04.png b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-04.png new file mode 100644 index 0000000000000000000000000000000000000000..18a58adf45c390a55996f50d7eabc5af9ecc247d Binary files /dev/null and b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-04.png differ diff --git a/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-05.png b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-05.png new file mode 100644 index 0000000000000000000000000000000000000000..62e04e2f262150a7f7d640c6e374bb50fabba442 Binary files /dev/null and b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-05.png differ diff --git a/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-06.png b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-06.png new file mode 100644 index 0000000000000000000000000000000000000000..e9a21df0ec3a97d5f6e993d79762d9b8404f69c0 Binary files /dev/null and b/app/zh/news/20250704-hongkong-meetup/media/20250704-hongkong-meetup-06.png differ diff --git a/app/zh/news/20250704-yb/20250704-yb.md b/app/zh/news/20250704-yb/20250704-yb.md new file mode 100644 index 0000000000000000000000000000000000000000..66fcda56e0e5879732615ba8272c6eb30a8369c7 --- /dev/null +++ b/app/zh/news/20250704-yb/20250704-yb.md @@ -0,0 +1,208 @@ +--- +title: 'openEuler 社区 2025 年 6 月运作报告' +date: '2025-07-04' +category: news +tags: + - openEuler + - 社区运作报告 +banner: 'img/banners/20250704-yb-01.png' +author: 'openEuler' +summary: 'openEuler 社区 2025 年 6 月运作报告' +--- + +![图片](./media/20250704-yb-01.png) + +## 概述 + +2025年6月,OpenAtom openEuler(简称:“openEuler”或“开源欧拉”)社区在技术演进、生态拓展和治理优化方面取得一些进展。openEuler 24.03 LTS SP2版本发布,增强了内核、AI推理、机密计算等关键能力。在社区治理方面,技术委员会确定了2026年openEuler LTS版本的内核选型(Linux 6.6),并推动RISC-V双架构(RVA20/RVA23)支持,进一步降低开发者的适配成本。 + +技术突破方面,TrIO容器启动加速技术实现21倍性能提升,大幅优化AI训练等场景的容器部署效率,相关源码均已在 openEuler 社区开源,并已集成至openEuler 25.03版本;Kuasar机密容器方案结合TEE技术,为敏感数据应用提供便捷的安全保障。社区协作流程也持续优化,PR(Pull Request)评审支持Maintainer和Committer直接修正描述,软件包贡献平台新增自动化通知机制,显著提升开发效率。 + +生态层面,CODESYS全系列支持openEuler,为工业自动化领域的开发者提供完整工具链;新推出的MCP Servers项目构建了大模型与操作系统的标准化协议框架,助力智能应用开发。此外,全球技术研讨会(香港、巴西等)和AI工作组的成立,展现了社区国际化与跨领域协作的活力。 + +值得一提的是,openEuler文档中心迎来机制升级后的首批贡献者,社区特别感谢这些技术布道者为完善文档所做的努力。我们期待更多开发者加入文档优化工作,共同打造更完善的技术文档体系,让知识共享惠及整个社区。 + +openEuler正通过技术创新、生态共建和知识共享,持续推动开源操作系统生态的繁荣发展。 + +本月报阅读时长15分钟。 + +欢迎细品。 + +## openEuler 24.03 LTS SP2发布 + +6月30日,openEuler 24.03 LTS SP2发布,该版本基于6.6内核的24.03LTS版本增强扩展版本,面向服务器、云、AI和嵌入式场景,持续提供更多新特性和功能扩展,包括内核优化、异构协同推理、众核高密、机密容器、多核多实例混部等,给开发者和用户带来全新体验。 + +下载地址: + +https://www.openeuler.openatom.cn/zh/download/ + +技术白皮书: + +https://www.openeuler.openatom.cn/zh/showcase/technical-white-paper/ + +![图片](./media/20250704-yb-02.png) + +## 社区规模 + +截至2025年6月30日,openEuler 社区用户累计超过415万。超过2.2万名开发者在社区持续贡献。社区累计产生 221.6K个PRs、118.3K条Issues。目前,加入openEuler社区的单位成员2070家,6月新增18家。 + +![图片](./media/20250704-yb-03.png) + +社区贡献看板(截至2025/06/30) + +## 社区事件 + +### GROW 2025全球RISC-V研讨会:openEuler推进RVA23适配,助力RISC-V生态发展 + +6月30日,在巴西圣保罗大学举办的GROW 2025全球首届RISC-V开放研讨会上,中科院软件所高级工程师屈晟发表主题演讲 "Roadmap for openEuler Operating System Targeting RVA23",他阐释了 openEuler 开源操作系统如何通过适配RVA23规范,推动RISC-V基础设施生态的战略升级,进一步巩固了openEuler在RISC-V生态中的关键角色。 + +![图片](./media/20250704-yb-04.png) + +### openEuler Bigdata Meetup 线上举办 + +6月25日,openEuler Bigdata Meetup 在线上举办,通过社区B站和视频号直播间与开发者们进行了深入交流。活动围绕大数据与AI技术的融合创新展开,内容涵盖开源数据库优化、异地多活系统架构、智能查询优化技术、大数据集群管理平台实践,以及基于鲲鹏服务器的大数据性能优化等多个前沿议题。本次活动为开发者提供了宝贵的学习与交流机会,展现了openEuler在大数据领域的创新与生态活力。 + +### openEuler Meetup在香港举办 + +6月12日,openEuler Meetup在香港城市大学成功举办。活动围绕openEuler社区发展、机密计算技术、Arm架构开源进展、RustSBI项目、密码学GPU加速以及开源社区合作等主题展开深入探讨。本次活动为香港地区的开发者提供了宝贵的开源技术分享平台,进一步推动了openEuler社区的国际化发展。 + +## 社区治理 + +### openEuler 技术委员会会议摘要(6月) + +在6月召开的openEuler技术委员会会议上,社区就多项重要议题达成共识。会议审议通过了2026年openEuler LTS版本的内核选型方案,确定采用Linux 6.6内核作为基础版本。该方案经过Kernel SIG充分讨论和为期两周的社区公示后,获得全体委员一致通过。后续工作将聚焦kABI兼容性方案制定,同时评估是否需要调整发布计划或引入双内核机制以提升对新硬件的支持能力。 + +在RISC-V生态建设方面,会议决定在openEuler 24.03 LTS SP3版本中同步推出RVA20和RVA23双架构版本。经与Compiler SIG沟通确认,将采用GCC 14.3作为基础编译工具链,并计划升级RISCV工程的JDK版本。此外,会议还宣布推动组建AI工作组,致力于推动操作系统与人工智能技术的深度融合,欢迎社区开发者积极参与相关工作。 + +## 技术进展 + +### openEuler TrIO技术实现21倍启动加速 + +容器技术作为云计算核心基础设施,其启动性能直接影响弹性扩容、故障恢复等关键场景效率。针对当前容器镜像体积大、启动慢的行业痛点(如PyTorch容器启动需数分钟),openEuler创新推出TrIO容器启动加速技术。在PyTorch 和 TensorFlow 容器的测试结果中,TrIO 相比于默认容器加载,容器启动加速分别从从 127 秒和 35 秒提升到 6 秒和 8 秒,加速比达 21 倍和 4.3 倍。 + +TrIO 相关源码均已在 openEuler 社区开源,并已集成至openEuler 25.03版本;相关技术发表已被计算机存储领域 A 类顶会 FAST’25 收录: https://www.usenix.org/conference/fast25/presentation/liu-yubo + +原文阅读: + +[TrIO:让容器启动性能最高提升21倍](https://www.openeuler.org/zh/blog/20250619-TrIO/20250619-TrIO.html) + +TrIO 软件仓库地址: + +https://gitee.com/openeuler/kernel/tree/openEuler-25.03/tools/trio + +### openEuler社区推出PR评审流程优化方案 + +为提升开发协作效率,openEuler社区近日通过一项基础设施改进方案:经技术委员会委员授权的SIG组Maintainer和Committer在评审Pull Request(PR)时,若发现描述信息不准确或不完整,可直接进行修改,无需再通过评论区反复确认。 + +此前评审流程中,Maintainer和Committer遇到PR描述问题时,只能通过评论方式与提交者沟通,往往需要多次交互才能完成修正,这一过程显著延长了PR合入周期。新方案实施后,获得授权的Maintainer和Committer可直接完善PR内容,这将大幅提升评审效率。 + +该方案已在社区完成部署,后续,基础设施SIG组将持续关注该方案实施效果,并根据开发者反馈进行进一步优化。 + +### openEuler社区软件包贡献平台接入消息通知功能 + +为提升软件包贡献流程效率,openEuler社区近日在软件包贡献平台 ( https://software-pkg.openeuler.org/zh/package ) 上线了消息通知功能。该功能实现自动化流程提醒,当新贡献的软件包通过CI测试后,系统将通过消息中心自动发送邮件通知至相关责任人。 + +此项功能包括: + +- 精准通知机制:系统自动识别并邮件通知对应SIG组的Maintainer和TC成员 +- 流程可视化:通过消息中心集中管理所有软件包引入申请通知 +- 时效性提升:即时提醒,帮助新软件包评审工作及时开展 + +此项优化有效解决了以往人工跟踪软件包审核状态的不便,使Maintainer能够更快速、便捷地处理软件包引入申请,进一步优化了社区贡献体验。基础设施SIG组将持续收集用户反馈,不断完善消息通知机制。 + +### openEuler 发布Kuasar机密容器解决方案 + +在数据安全领域,隐私保护法规(如GDPR)和云计算技术对传统保护机制提出挑战。机密计算通过硬件级可信执行环境保障数据使用安全,但云原生环境中容器共享内核的特性增加了泄露风险,且技术门槛较高。机密容器创新性地将TEE封装为轻量化运行时,使开发者无需改造应用即可实现云原生环境的数据全周期保护。openEuler提出iSulad+Kuasar+secGear方案,为AI等高敏感场景提供了安全高效的解决方案。 + +该方案基于轻量级沙箱容器和机密计算结合构建机密容器,保护容器镜像的机密性和完整性,保护工作负载的机密性,防止非授权实体的非法访问,同时兼容云原生生态,提高机密计算的易用性。 + +相关链接: + +[探秘 Kuasar 机密容器解决方案](https://www.openeuler.org/zh/blog/20250701-Kuasar/20250701-Kuasar.html) + +### CODESYS全系列开发平台全面支持openEuler,加速智能制造升级 + +全球领先的工业自动化开发平台CODESYS宣布全系列产品(包括CODESYS Runtime核心运行平台、新一代低代码工具CODESYS Go及Virtual Control平台)已全面支持openEuler。此次合作将显著提升工业控制系统的实时性、兼容性和开发效率,为智能制造、能源电力和工业物联网等领域提供更优解决方案。未来用户可通过 CODESYS 无缝调用 openEuler 社区超 800 + 工业级软件包,涵盖 HMI 开发、仿真测试、工业总线适配等全流程工具链。 + +原文阅读: [重磅官宣!工业自动化开发平台CODESYS全面适配 openEuler,开启新型工业化新征程](https://www.openeuler.org/zh/blog/20250609-CODESYS/20260609-CODESYS.html) + +### openEuler MCP Servers:构建操作系统领域的AI智能体生态 + +为拓展大模型在操作系统领域的能力边界,openEuler社区推出MCP(Model Context Protocol)Servers项目。该仓库聚焦于提供通用的大模型上下文协议实现,通过集成各类操作系统工具增强openEuler的智能交互体验。核心能力包含以下三方面: + +- **标准化协议架构** + +采用模块化目录结构,每个MCP Server独立封装完整功能组件(说明文档/配置文件/源码),支持快速扩展操作系统工具链。通过mcp_config.json统一协议配置,确保Server的易用性和兼容性。 + +- **开箱即用部署** + +提供yum/RPM自动化安装渠道(即将上线),用户可通过yum install直接部署预构建的MCP Server。同时支持主流MCP客户端(如EulerCopilot、Roo Code)无缝接入,通过编辑全局配置实现即插即用。 + +- **高效开发支持** + +基于Python-SDK提供快速开发框架,开发者可通过uv工具链和python3-mcp环境,将操作系统工具(如oegitext)改造为MCP Server。结合DevStation的Roo Code插件,实现从编码调试到协议部署的全流程支持。 + +欢迎贡献更多聚焦操作系统领域的MCP Server实现,共同推动openEuler智能化生态建设: https://gitee.com/openeuler/mcp-servers + +## 软硬件兼容性测评 + +截至2025年6月30日,openEuler软硬件兼容性测评新增39个,其中北向(ISV)新增35个,南向(IHV)新增2个,OSV新增2个。 + +- 兼容性列表: https://www.openeuler.org/zh/compatibility/ +- OSV技术测评列表 https://www.openeuler.org/zh/approve/ + +## 安全公告 + +2025年6月社区共发布安全公告128个,修复漏洞102个(其中 Critical 2个,High 32个,其它68个)。 + +### 重点漏洞提醒 + +如下漏洞评估影响较大,请重点关注。 + +在 TINITA YAML-LibYAML 的 Perl 版本 0.902.x 及以下版本中发现了一个漏洞。该漏洞已被分类为有问题的。CWE 将此问题归类为 CWE-552。该产品使得文件或目录对未经授权的用户可访问,尽管它们不应该被访问。这将影响机密性。升级到版本 0.903.0 可以消除此漏洞。应用补丁也可以解决此问题。修复程序已在 github.com 上准备好下载。建议的最佳缓解措施是升级到最新版本。 **(CVE-2025-40908)** + +CVSS评分为9.1分 + +公告链接: + +https://www.openeuler.openatom.cn/zh/security/cve/detail/?cveId=CVE-2025-40908&packageName=perl-YAML-LibYAML + +影响范围: + +- openEuler-20.03-LTS-SP4 +- openEuler-22.03-LTS-SP3 +- openEuler-22.03-LTS-SP4 +- openEuler-24.03-LTS +- openEuler-24.03-LTS-SP1 + +在某些 Intel(R) Xeon(R) 处理器内存控制器配置中使用 Intel(R) SGX 时,不正确的条件检查可能允许具有特权的用户通过本地访问潜在地启用权限提升。 **(CVE-2024-23918)** + +CVSS评分为8.8分 + +公告链接: + +https://www.openeuler.openatom.cn/zh/security/cve/detail/?cveId=CVE-2024-23918&packageName=microcode_ctl + +影响范围: + +- openEuler-20.03-LTS-SP4 +- openEuler-22.03-LTS-SP3 +- openEuler-22.03-LTS-SP4 +- openEuler-24.03-LTS +- openEuler-24.03-LTS-SP1 + +### 漏洞防护 + +openEuler社区针对在维版本例行修复漏洞,发布安全补丁。 建议用户关注openEuler官网安全公告,及时安装漏洞补丁进行防护。 + +openEuler 安全公告: + +https://www.openeuler.org/zh/security/security-bulletins/ + +## 感谢每一位朋友、开发者的支持 + +因为大家的辛勤贡献,openEuler 的每一天都发生着好的事情。小编限于视野和能力,难免有所遗漏,在此表示歉意。同时,衷心感谢社区成员单位、SIG组和开发者朋友们的贡献: + +![图片](./media/20250704-yb-05.png) + +* 以上不分先后顺序 \ No newline at end of file diff --git a/app/zh/news/20250704-yb/media/20250704-yb-01.png b/app/zh/news/20250704-yb/media/20250704-yb-01.png new file mode 100644 index 0000000000000000000000000000000000000000..bbafb27100ce039340f71e8dbbe67077e67245f2 Binary files /dev/null and b/app/zh/news/20250704-yb/media/20250704-yb-01.png differ diff --git a/app/zh/news/20250704-yb/media/20250704-yb-02.png b/app/zh/news/20250704-yb/media/20250704-yb-02.png new file mode 100644 index 0000000000000000000000000000000000000000..6299bbf7e1acc00fd37ff4b3f8bffb2e0994d608 Binary files /dev/null and b/app/zh/news/20250704-yb/media/20250704-yb-02.png differ diff --git a/app/zh/news/20250704-yb/media/20250704-yb-03.png b/app/zh/news/20250704-yb/media/20250704-yb-03.png new file mode 100644 index 0000000000000000000000000000000000000000..6ac9d2db13179597b02e08a6e6ac055cdd0f3dbf Binary files /dev/null and b/app/zh/news/20250704-yb/media/20250704-yb-03.png differ diff --git a/app/zh/news/20250704-yb/media/20250704-yb-04.png b/app/zh/news/20250704-yb/media/20250704-yb-04.png new file mode 100644 index 0000000000000000000000000000000000000000..fa216adc13390a1347d5ca2264813346bcbd1055 Binary files /dev/null and b/app/zh/news/20250704-yb/media/20250704-yb-04.png differ diff --git a/app/zh/news/20250704-yb/media/20250704-yb-05.png b/app/zh/news/20250704-yb/media/20250704-yb-05.png new file mode 100644 index 0000000000000000000000000000000000000000..e4435230748eb30e96d3fee7d5b42d60e0fd57fe Binary files /dev/null and b/app/zh/news/20250704-yb/media/20250704-yb-05.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/index.md b/app/zh/news/20250718-oerv-2025-riscv-china-summit/index.md new file mode 100644 index 0000000000000000000000000000000000000000..8bfa270027e8c318e53606f10e6be5c7f1de1c06 --- /dev/null +++ b/app/zh/news/20250718-oerv-2025-riscv-china-summit/index.md @@ -0,0 +1,93 @@ +--- +title: 'OERV 团队参加 2025 RISC-V 中国峰会会议回顾' +date: '2025-07-18' +category: news +tags: + - openEuler + - 社区运作报告 +banner: 'img/banners/oerv-2025-riscv-china-summit.png' +author: 'openEuler' +summary: 'OERV 团队参加 2025 RISC-V 中国峰会会议回顾' +--- + +2025 年 7 月 16 日 - 19 日,第五届 RISC-V 中国峰会在上海张江科学会堂成功举办,作为 RISC-V 生态的重要建设者与贡献者, OpenAtom openEuler(简称:openEuler或开源欧拉) 社区深度参与了本届峰会,全面展示了在 RISC-V 架构上的最新进展、创新成果与生态实践。 + +OERV 是 openEuler on RISC-V 操作系统的简称,同时也指代 openEuler 社区 RISC-V SIG ,OERV的核心任务是完善 openEuler 系统在 RISC-V 架构上的软硬件生态建设,并且在此基础上探索对 RISC-V 碎片化等生态性问题的解决方案,进一步为 RISC-V 的应用落地提供可靠的系统基座与公共基础设施平台。 + + +## 演讲 + +在本次峰会中,OERV 团队积极参与了服务器平台技术工作组(Server Platform TG)和认证指导委员会(Certification Steering Committee)的会员日会议并展开了深入讨论。此外,团队还在软件与生态系统分论坛上发表了四场主题演讲,内容涵盖 openEuler on RISC-V 的总体生态建设、RVCK 内核同源项目、虚拟化生态以及硬件生态支持等议题,并与参会者们进行了广泛交流 + + +### 作为 RISC-V 服务器的 openEuler: 挑战和路线图 + +**演讲者:** **屈晟 openEuler常务委员会委员 中国科学院软件研究所 高级工程师** + +演讲介绍了 OERV 团队的核心工作是实现 openEuler 社区对 RISC-V 架构的原生支持,主要通过标准演进、内核同源、测试测评、战略基建四个生态计划构建 openEuler on RISC-V 通用服务器发行版基座。团队紧密跟进 RVA23、RISC-V Server Platform 等上游标准并持续演进,积极推动 RISC-V 在高性能计算领域的落地应用。为保障 openEuler on RISC-V 的高质量发展和生态适配,社区构建了强大的基础设施支撑体系;同时,OERV 团队与香山昆明湖团队合作,将 RVA23 试验版本成功移植到处于 FPGA 验证阶段的昆明湖 v2 处理器上,并完成了典型应用测试 + +![图片](./media/index-01.png) + + +### 内核同源项目:驱动 openEuler on RISC-V 生态 + +**演讲者:** **王经纬 openEuler 技术委员会委员 中国科学院软件研究所 操作系统工程师** + +该演讲聚焦于为解决 RISC-V 生态碎片化难题而发起的“内核同源项目(RVCK)”。王经纬阐述了该项目如何基于openEuler Kernel 6.6长期支持版本,为众多 RISC-V 芯片及硬件厂商构建一个统一的、公共的内核开发基座。此举旨在消除各厂商重复维护私有内核分支带来的维护灾难,通过统一基线、共享成果、共建上游,协同中兴、算能、进迭时空等产业伙伴,共同加速 RISC-V 服务器生态的成熟。演讲还介绍了为保障项目质量而建设的自动化测试平台等关键基础设施,展示了以公共协作工程推动 RISC-V 生态标准落地和繁荣的清晰路径 + +![图片](./media/index-02.png) + + +### Towards Secure Container Infrastructure on RISC-V: the Development from Rust-vmm to Kata-Containers + +**演讲者:** **何若轻 中国科学院软件研究所 软件工程师 Kata-Containers 架构委员会委员** + +演讲介绍了 OERV 团队在安全方向的云原生基础设施上游所做的贡献,以及相关虚拟化软件栈的 RISC-V 支持工作路线图,工作进展。为充分使能 RISC-V 进入服务器场景,虚拟化小组已完成 RustVMM,Cloud-Hypervisor 以及 Kata-Containers 基本支持,正稳步拉平与其他架构的 IOMMU,CoVE 等特性差距。计划于 2026 年第四季度落地安全容器基础设施的计算面支持 + +![图片](./media/index-03.png) + + +### RISC-V 百板挑战:多元化硬件的支持方案实践 + +**演讲者:** **李航帆 中国科学院软件研究所 操作系统工程师** + +该演讲分享了 OERV 团队对 RISC-V 硬件板卡的深度支持:从 2030 年百款板卡愿景出发,详解当前十余款板卡适配成果,创新性提出基于 extlinux.conf 的通用启动方案,突破固件与内核版本耦合难题。同时探索 UEFI + FDT 标准化路径,并构建测试体系保障稳定性,推动 RISC-V 开发者生态软硬件协同演进 + +![图片](./media/index-04.png) + + +## Posters + + +### openEuler on RISC-V 运行时生态建设进展 + +**作者:** **张定立 openEuler 社区 Java SIG Maintainer 中国科学院软件研究所 操作系统工程师** + +运行时小组是 OERV 主要的系统软件维护小组。该 Poster 主要介绍 OERV 团队在 RISC-V 运行时生态上的工作成果以及之后的工作计划。Java 生态方面,已经基本上对标 x86/aarch64 完成了软件生态支持;Python 生态方面,开启了 PGO 优化并完成了对 TensorFlow 的支持 + +![图片](./media/index-05.png) + + +### LLVM Parallel Universe Project @ openEuler on RISC-V + +**作者:** 周嘉诚 openEuler 社区 RISC-V SIG Maintainer 中国科学院软件研究所操作系统工程师 + +「openEuler LLVM 平行宇宙计划」 是 openEuler 社区于 2023 年由 Compiler SIG 与 RISC-V SIG 联合发起的探索性项目。该项目旨在探索使用 LLVM 编译器套件替代 GCC 套件来构建完整的 Linux 发行版及其软件包。因其独立推进、与社区主要基于 GCC 的版本平行发展,故得名「平行宇宙」。Poster 详细阐述了该项目的背景、动机及进展,并特别强调了 LLVM 在支持 RISC-V 架构特性方面展现出的优越性 + +![图片](./media/index-06.png) + + +## 展台 + +展台展示了由 openEuler 社区 RISC-V SIG 发布符合 RVA23 标准的试验镜像。本次镜像基于 LLVM20 工具链,内核采用 openEuler Kernel 6.6 版本的 24.03 LTS SP2 分支。openEuler RVA23 试验镜像完全基于 openEuler 社区源码和基础设施开发,符合最新 RISC-V Profile 的规范,是 openEuler 迈向 RISC-V 通用服务器标准的关键一步 + +![图片](./media/index-07.png) + +## 相关链接 + +- Gitee 协作主页: https://gitee.com/openeuler/RISC-V +- 构建仓库协作地址: https://build.tarsier-infra.isrc.ac.cn/ +- 第三方 repo 源: https://repo.tarsier-infra.isrc.ac.cn/openEuler-RISC-V +- OERV 工作中心: https://github.com/openeuler-riscv +- 邮件列表: riscv@openeuler.org +- Discord 邀请链接: https://discord.gg/drG6qUsRc4 \ No newline at end of file diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-01.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-01.png new file mode 100644 index 0000000000000000000000000000000000000000..7821b4a45c2078e76123d1457482504ce5205cc9 Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-01.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-02.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-02.png new file mode 100644 index 0000000000000000000000000000000000000000..860cf89abbdb7b94af372bbfc740e2b05633e2b6 Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-02.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-03.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-03.png new file mode 100644 index 0000000000000000000000000000000000000000..8a2750d2d11555bf4ab4aade9948d22f38600e3d Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-03.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-04.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-04.png new file mode 100644 index 0000000000000000000000000000000000000000..cb71ec72faa19b27f5df8529b4838aa457f60d13 Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-04.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-05.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-05.png new file mode 100644 index 0000000000000000000000000000000000000000..c97691edb819ed89bcb6a816a5e48065e07b35ee Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-05.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-06.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-06.png new file mode 100644 index 0000000000000000000000000000000000000000..d047099ac9d0d1bfb6b863225ce5e10812acb62c Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-06.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-07.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-07.png new file mode 100644 index 0000000000000000000000000000000000000000..9dbf10a5de7e732282eebd33047e577708ce4ef5 Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/index-07.png differ diff --git a/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/oerv-2025-riscv-china-summit.png b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/oerv-2025-riscv-china-summit.png new file mode 100644 index 0000000000000000000000000000000000000000..7821b4a45c2078e76123d1457482504ce5205cc9 Binary files /dev/null and b/app/zh/news/20250718-oerv-2025-riscv-china-summit/media/oerv-2025-riscv-china-summit.png differ diff --git a/app/zh/news/20250718-openeuler-for-rva23/20250718-openeuler-for-rva23.md b/app/zh/news/20250718-openeuler-for-rva23/20250718-openeuler-for-rva23.md new file mode 100644 index 0000000000000000000000000000000000000000..22e45cf5a4eac575a82a36efe1ad07a9c076a424 --- /dev/null +++ b/app/zh/news/20250718-openeuler-for-rva23/20250718-openeuler-for-rva23.md @@ -0,0 +1,74 @@ +--- +title: 'openEuler for RVA23!中国科学院软件研究所基于25.03版本构建标准 RISC-V 服务器试验镜像' +date: '2025-07-18' +category: news +tags: + - openEuler + - 社区运作报告 +banner: 'img/banners/20250718-openeuler-for-rva23-01.png' +author: 'openEuler' +summary: 'openEuler for RVA23!中国科学院软件研究所基于25.03版本构建标准 RISC-V 服务器试验镜像' +--- + +****OpenAtom openEuler(简称:“openEuler”或“开源欧拉”)**** RISC-V SIG 参与 2025 RISC-V 中国峰会,发布符合 RVA23 标准的试验镜像。本次镜像采用 LLVM20 工具链,内核采用基于 openEuler Kernel 6.6 版本的 24.03 LTS SP2 分支。openEuler RVA23 试验镜像完全基于 openEuler 社区源码和基础设施开发,符合最新 RISC-V Profile 的规范,是 openEuler 迈向 RISC-V 通用服务器标准的关键一步 + +RVA23 镜像已经在 QEMU、FPGA 等环境进行测试验证,本次峰会 RISC-V SIG 将 Demo 布置在 𝐂𝟑𝟒-𝟎𝟑 号展位,感兴趣的伙伴们可以移步体验 + +代码仓:[https://repo.tarsier-infra.isrc.ac.cn/openEuler-RISC-V/testing/openEuler-LLVM-RVA23-Demo/QEMU/](https://repo.tarsier-infra.isrc.ac.cn/openEuler-RISC-V/testing/openEuler-LLVM-RVA23-Demo/QEMU/) + +### 基于 LLVM 的 openEuler RVA23 试验镜像 + +![图片](./media/20250718-openeuler-for-rva23-01.png) + +![图片](./media/20250718-openeuler-for-rva23-02.png) + +openEuler RVA23 试验版本基于 LLVM 20.1 工具链与新版 binutils、glibc 等基础库构建,目前已成功编译生成超过 4600 个软件包及对应操作系统镜像,支持 openEuler 官方版本 94% 的软件包。这一试验版本不仅为 RVA23 标准的技术评估提供了重要参考,也为后续正式版本的发布奠定了坚实基础 + +### 完成在香山昆明湖 FPGA 的验证工作 + +软件所 OERV 团队与香山昆明湖团队合作,将 RVA23 试验版本移植到 FPGA 验证阶段的昆明湖 v2 处理器,并进行了典型应用测试。自 2025 年 3 月起,团队在单核与双核 FPGA 环境中完成了 4 轮系统性测试,覆盖了 C++、Python、Golang、Java 等编程语言的编译器及运行时环境,并在 Web 服务、数据库等网络 I/O 密集型、磁盘 I/O 密集型、内存 I/O 密集型、计算密集型等主要应用场景中进行了全面验证,以确认系统的稳定性和兼容性 + +![图片](./media/20250718-openeuler-for-rva23-03.png) + +![图片](./media/20250718-openeuler-for-rva23-04.png) + +### 完成在知合计算高性能核的验证工作 + +知合计算公布了高性能 RISC-V CPU 内核的研发进展,该 IP 符合 RVA23 规范,现已在 openEuler RVA23 试验镜像完成验证 + +![图片](./media/20250718-openeuler-for-rva23-05.png) + +Demo 在新思 D10 号展位,欢迎大家体验 + + +### 后续计划介绍 + +在 openEuler 24.03 SP3 版本中支持 RVA23 + +#### 内核 + +当前应用于 RVA23 镜像的 openEuler OLK 6.6 内核由 RVCK(RISC-V Common Kernel)项目支持,RVCK 已帮助 openEuler 完成 RVA23 HWPROBE、基础 ACPI、高级中断能力 IOMMU 等 RISC-V 标准服务器场景支持。目前 RVCK 项目正在积极推进和进一步完善对 RISC-V 内核服务器能力的提升 + +#### 基础工具链 + +根据 openEuler 社区的讨论结果,openEuler 24.03 SP3 版本在 RISC-V 架构中选择 GCC 14.3 版本作为编译器,软件所正在推进对应的 RVA23 backport,而 Bintuils 2.42 的 RVA23 backport 则由中兴通讯的合作伙伴负责推进 + +### RVA23 Profile + +RVA (RISC-V Application Profile) 是 RISC-V 国际基金会为通用计算领域的应用处理器制定的指令集扩展集合规范。2024 年 10 月新近确立的 RVA23 规范将向量扩展和虚拟化扩展等关键 ISA 扩展纳入必选范围,填补了 RISC-V 生态在并行计算与虚拟化等领域的空白。在香山昆明湖处理器上成功运行这一基于 LLVM 构建并支持 RVA23 的 openEuler 版本,不仅验证了 openEuler 对新标准的支持,也为香山等各类 RVA23 兼容处理器提供了坚实的软件栈基础 + +### RVCK 内核同源项目 + +RVCK 内核同源项目(也称 RVCK)是 kernel.org 以及 openEuler 等 linux 内核分支的下游,旨在为目前基于不同硬件平台的 RISC-V 开发生态提供一个统一的内核平台,维护公共开发演进需求,减少维护复杂度并增强软硬件上下游生态协同能力。目前该项目的主要贡献厂商为中兴通讯、算能、进迭时空等知名 RISC-V 厂商。其中中兴通讯和算能为 RVCK 回合通用服务器能力做出了重要的贡献 + +代码仓:[https://github.com/RVCK-Project](https://github.com/RVCK-Project) + + +### 相关链接 + +- [Gitee 协作主页](https://gitee.com/openeuler/RISC-V) +- [构建仓库协作地址](https://build.tarsier-infra.isrc.ac.cn/) +- [第三方 repo 源](https://repo.tarsier-infra.isrc.ac.cn/openEuler-RISC-V) +- [OERV 工作中心](https://github.com/openeuler-riscv) +- [邮件列表](riscv@openeuler.org) +- [Discord 邀请链接](https://discord.gg/drG6qUsRc4) \ No newline at end of file diff --git a/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-01.png b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-01.png new file mode 100644 index 0000000000000000000000000000000000000000..e29a552a8d8052ed2ecfe560fc76d58e5d3a1030 Binary files /dev/null and b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-01.png differ diff --git a/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-02.png b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-02.png new file mode 100644 index 0000000000000000000000000000000000000000..0a69cf015e19e21b85ad25d342fd6d8d931927fa Binary files /dev/null and b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-02.png differ diff --git a/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-03.png b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-03.png new file mode 100644 index 0000000000000000000000000000000000000000..db99b11b644ead1331f037a762e9c3535ad820ac Binary files /dev/null and b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-03.png differ diff --git a/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-04.png b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-04.png new file mode 100644 index 0000000000000000000000000000000000000000..1676111e22e94f102e00d3b6601e46c3ac68af70 Binary files /dev/null and b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-04.png differ diff --git a/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-05.png b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-05.png new file mode 100644 index 0000000000000000000000000000000000000000..0dce32ffecbd750136053081bd7316b8b301f500 Binary files /dev/null and b/app/zh/news/20250718-openeuler-for-rva23/media/20250718-openeuler-for-rva23-05.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/index.md b/app/zh/news/20250723-sig-arm-meetup/index.md new file mode 100644 index 0000000000000000000000000000000000000000..a9bc8ffc2c611e56965d03b3a4c0e969fa4f8aae --- /dev/null +++ b/app/zh/news/20250723-sig-arm-meetup/index.md @@ -0,0 +1,83 @@ +--- +title: 'openEuler SIG-ARM Meetup 精彩回顾:聚焦 Arm 生态创新与实践' +date: '2025-07-23' +category: news +tags: + - openEuler + - 活动回顾 +banner: 'img/banners/index-01.png' +author: 'openEuler' +summary: 'openEuler SIG-ARM Meetup 精彩回顾:聚焦 Arm 生态创新与实践' +--- + +7 月 18 日,OpenAtom openEuler(简称“openEuler”或“开源欧拉”)SIG-ARM 年度技术聚会 Meetup 在深圳成功举办。这场汇聚了 Arm 生态头部芯片厂商与软件巨头嘉宾的盛会,围绕 openEuler 在 Arm 架构的最新性能优化与创新实践、云原生/AI 等关键负载在 Arm 服务器的迁移部署调优、核心挑战及基础软件栈 Arm 适配方案,以及 Arm 服务器生态未来趋势与标准化进展等核心议题展开深度探讨,为 Arm 生态发展注入了新的思路与动力。 + +![图片](./media/index-01.png) + +**下面就让我们来回顾本次 Meetup 的精彩内容** + +### Arm 机密计算架构(CCA)最新开源进展 + +openEuler ARM SIG Maintainer、Linaro 工程师赵帅分享了 Arm 机密计算架构 (CCA) 最新开源进展。基于 Armv9-A 架构的 Arm CCA 技术,借助 Realm Management Extension(RME)和内存加密机制,实现了与 Intel TDX、AMD SEV 类似的机密虚拟机隔离能力。 + +目前,Arm CCA 软件栈特性在开源社区推进迅速:RMM 1.0 对应的 firmware、edk2 和 guest Linux kernel 已完成社区合入,KVM 和 QEMU 的社区合入正加速;随着 RMM1.0 软件栈成熟,上层机密容器、Kata-containers、libvirt 和 openstack 的支持在社区进展显著,其中 Kata-containers 和 CoCo 大部分功能已获社区完整支持。 + +RMM 1.1 spec 的重要特性 MEC、Planes 和 Device Assignment 持续开发,DA 已完成基于 Qemu sbsa-ref Host 的基本功能流程开发,用户可依指导文档完成 DA 流程。此外,还介绍了基于 Veraison 的远程证明方案,包括 CoCo 与 Veraison 的整合及本地 token 验证,并重点分析了 endorsement API 在 IETF 和 Veraison 社区的进展。 + +![图片](./media/index-02.png) + +### KleidiAI+PyTorch--加速 Arm Neoverse 云平台 + +Arm 工程师王瑞峰分享了 KleidiAI+PyTorch 如何加速 Arm Neoverse 云平台的议题。Arm KleidiAI 是一个轻量化的机器学习算子库。该库以源码形式发布,其中包含一系列针对 Arm 处理器平台高度优化的 AI 任务算子。KleidiAI 提供的接口无状态,使用时可以避免内存状态维护及线程管理带来的开销。通过将 KleidiAI 的对称 4bit 权重量化内核和动态非对称激活量化直接与 PyTorch 集成,大模型线性层的内存占用减少了高达 87%。在 Llama3-8B 这样的模型上,相比于量化之前 4 tokens 每秒的生成速度,量化之后能达到 14tokens 每秒的生成速度,满足实时交互式 AI 应用的要求。同时,对于进一步提升大模型的性能提出了一些可以尝试的方向。 + +KleidiAI 仓库地址 + +https://gitlab.arm.com/kleidi/kleidiai + +![图片](./media/index-03.png) + +### ARM64 MPAM 特性支持与应用实践 + +openEuler Kernel SIG Committer,华为工程师汪少博分享了 ARM64 MPAM 的特性在 openEuler 的支持与应用实践。MPAM 是 ARM 架构中用于内存系统资源分区和监控的一个功能。鲲鹏 MPAM 已支持 L2/L3 缓存和内存带宽分区、缓存和内存带宽使用监控等主要特性,并在混部场景中获得应用效果。MPAM 已在 openEuler 社区合入,其主体功能也陆续合入上游 Linux kernel 主干。 + +![图片](./media/index-04.png) + +### 飞腾 CPU 上嵌入式异构和虚拟化的探索和实践 + +飞腾工程师杨绍军分享了基于飞腾平台对 OpenAMP、Jailhouse、KVM+QEMU 等开源技术的适配探索与实践成果。飞腾的嵌入式异构分为硬件定义域软件定义,这两种定义相辅相成,构成了飞腾在嵌入式芯片领域独特的竞争力。在这样的硬件架构下,杨绍军又分享了业界主流 Hypervisor 在飞腾嵌入式平台上的适配进展、优化错失以及实时性能表现。 + +![图片](./media/index-05.png) + +### ARM SVE 指令在编解码场景的应用与实践 + +华为工程师苏喜康介绍了在编码场景下 ARM SVE/ SVE2 指令的核心特性;结合业界研究及其与 NEON 指令的异同点,基于编解码器的计算特性,深入剖析 SVE/ SVE2 指令的具体应用方法和实践,包括新增统计指令 cntp 直接计算非零元个数、新增 whilelt/cnth 指令增强代码复用性、新增 SVE gather load 减少数据组装等应用案例。 + +![图片](./media/index-06.png) + +### 使用 TRBE 和 BRBE 释放效率潜能 + +openEuler ARM SIG Maintainer、Arm 工程师贺军介绍了如何使用 TRBE 和 BRBE 释放效率潜能。在 AArch64 平台,硬件级的 ETE+TRBE 和新一代的 BRBE 为 PGO 带来了先进的精准分支追踪能力。贺军深入解析了 Arm 架构中 TRBE 和 BRBE 的工作机制,详细介绍了 TRBE 的高效缓冲机制及其为系统性能采样带来的显著优势,并进一步介绍了 BRBE 如何以更细粒度、低延迟的方式记录分支路径,实现与软件的高效协同,从而为 PGO 提供更丰富且准确的优化数据。这些创新技术的结合,不仅为复杂系统带来极致性能优化的可能,也为未来软件与硬件协同优化开辟了新方向。 + +![图片](./media/index-07.png) + +### 安全三重奏:深入解析 Arm PAC、BTI 与 GCS + +Arm 工程师陈玮介绍了 Arm 架构下三种关键的控制流保护技术:PAC、BTI 和 GCS。它们分别从指针验证、跳转目标识别和硬件级返回地址保护三个角度,有效提升了系统对 ROP/JOP 攻击的防御能力。随着 openEuler 等社区逐步支持这些特性,我们正朝着更安全、低开销的执行环境稳步前进。 + +![图片](./media/index-08.png) + +### JuiceFS 在 Arm64 平台上的性能分析和调优 + +openEuler SDS SIG Committer、Linaro 工程师刘新良介绍了 JuiceFS AI 文件系统的特性,应用场景,实现架构以及线程模型等;接着重点分享了对已发现性能问题的剖析,分析与定位的经验;最后分享了 JuiceFS 在 Arm64 平台上的调优经验。 + +![图片](./media/index-09.png) + +### 演讲 PPT 下载 + +本次 Meetup 的 **分享材料** 已上传至 openEuler Gitee 仓库。如果您需要本次活动的 PDF,可前往 下方链接获取,期待您的下次参与! + +[演讲PPT链接](https://gitee.com/openeuler/presentations/tree/master/meetup) + +本次 Meetup 的 **直播回放** 已上传至 B 站 openEuler 官方账号。如果您错过了本次线下活动,可前往 B 站回看 + +[回放链接](https://www.bilibili.com/video/BV1jAgqzGE2o/) \ No newline at end of file diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-01.png b/app/zh/news/20250723-sig-arm-meetup/media/index-01.png new file mode 100644 index 0000000000000000000000000000000000000000..c2e9f376b8aad09ee94186459b7b0adb550f8b82 Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-01.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-02.png b/app/zh/news/20250723-sig-arm-meetup/media/index-02.png new file mode 100644 index 0000000000000000000000000000000000000000..f8a947d0af6957b2c15dfaef695030c0d391f84e Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-02.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-03.png b/app/zh/news/20250723-sig-arm-meetup/media/index-03.png new file mode 100644 index 0000000000000000000000000000000000000000..d71a5d72b10c13c0fd2f0ed3d10b5146fc842e10 Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-03.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-04.png b/app/zh/news/20250723-sig-arm-meetup/media/index-04.png new file mode 100644 index 0000000000000000000000000000000000000000..153e4d015311ae543109c3be96d298dcde164213 Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-04.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-05.png b/app/zh/news/20250723-sig-arm-meetup/media/index-05.png new file mode 100644 index 0000000000000000000000000000000000000000..b43066be2ffd12db15b26b6ccc1dbdca393e325e Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-05.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-06.png b/app/zh/news/20250723-sig-arm-meetup/media/index-06.png new file mode 100644 index 0000000000000000000000000000000000000000..0c691277253c8f2df97646a044986b705b4e7f81 Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-06.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-07.png b/app/zh/news/20250723-sig-arm-meetup/media/index-07.png new file mode 100644 index 0000000000000000000000000000000000000000..c7dc49be9a58b9b6c90a7e81f2b658dd116226c6 Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-07.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-08.png b/app/zh/news/20250723-sig-arm-meetup/media/index-08.png new file mode 100644 index 0000000000000000000000000000000000000000..fa4c6b3d33c3d99ff0c370904d4d0ae964f1a0c4 Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-08.png differ diff --git a/app/zh/news/20250723-sig-arm-meetup/media/index-09.png b/app/zh/news/20250723-sig-arm-meetup/media/index-09.png new file mode 100644 index 0000000000000000000000000000000000000000..a8c56ba867071dcead898c1ec5bf0c2f482960de Binary files /dev/null and b/app/zh/news/20250723-sig-arm-meetup/media/index-09.png differ diff --git a/app/zh/news/20250808-offline-technical-committee-meeting/20250808-offline-technical-committee-meeting.md b/app/zh/news/20250808-offline-technical-committee-meeting/20250808-offline-technical-committee-meeting.md new file mode 100644 index 0000000000000000000000000000000000000000..647d20cf38d76afc50de3f8ed9e39c031724db1f --- /dev/null +++ b/app/zh/news/20250808-offline-technical-committee-meeting/20250808-offline-technical-committee-meeting.md @@ -0,0 +1,41 @@ +--- +title: '生态聚力,openEuler 技术委员会会议在润和软件圆满召开!' +date: '2025-08-08' +category: news +tags: + - openEuler + - 社区运作 +banner: 'img/banners/offline-technical-committee-meeting-01' +author: 'openEuler' +summary: '生态聚力,openEuler 技术委员会会议在润和软件圆满召开!' +--- + +8月1日,由 OpenAtom openEuler(以下简称“openEuler”或“开源欧拉”)社区发起、江苏润和软件股份有限公司(以下简称“润和软件”)承办的2025-2026年openEuler技术委员会会议在南京圆满召开。来自华为、麒麟软件、统信软件、 润和软件、Intel、中国移动、 中科院软件所、一汽、windriver等 openEuler 生态共建企业的多位openEuler技术委员会委员齐聚一堂,围绕 openEuler 社区技术规划建设及openEuler未来发展方向开展深入研讨。润和软件副董事长马玉峰受邀出席并做开场致辞。 + +![2025-2026年openEuler技术委员会会议合影](./media/offline-technical-committee-meeting-01.png) + +马玉峰在致辞中表示,社区最新数据显示,openEuler装机量已突破1000万套、汇聚2.2万全球贡献者,已成为数字中国的根力量。作为openEuler项目群黄金捐赠人,润和软件深度参与这一进程并在社区各领域共建中取得了一些进展和成果,包括推出AI原生操作系统HopeOS V24,实现昇腾芯片全适配与AI全栈兼容并大幅提升分布式训练效能,打造“云-边-端”智能物联解决方案,在应急安全领域创下单项目交付15000套的落地标杆。未来,润和软件将携手openEuler社区深耕AI与操作系统的融合创新,让开源之力浇灌千行百业。 + +![润和软件副董事长马玉峰致辞](./media/offline-technical-committee-meeting-02.png) + +openEuler 委员会主席熊伟在致辞中首先对润和软件长期以来对社区做出的贡献表示了感谢和肯定。他指出,openEuler将持续深耕全场景、智能化与多样性算力三大技术方向。社区现已成立AI联合工作组,加速操作系统与AI技术的深度融合,为千行百业提供更强大的智能化开源基础设施。未来,社区将联合润和软件等社区优秀伙伴,加速释放openEuler在AI时代、全球范围的商业潜能。 + +![openEuler委员会主席熊伟致辞](./media/offline-technical-committee-meeting-031.png) + +本次会议重点审议了openEuler版本发布节奏与维护生命周期调整方案、社区软件生产与开发者支持渠道运作情况、基础设施关于“大型套组软件”支撑方案等议题,并就AI工作组进展(Intelligence BooM开源全栈开箱即用生态共建)及下一步计划、智能基础设施异构融合计算框架等关键技术方向展开深入研讨。此外,与会专家就汽车电子开源生态与openEuler融合可行性行了专题讨论并明确了下半年技术试点的具体方向和目标。 + +![2025-2026年openEuler技术委员会会议现场](./media/offline-technical-committee-meeting-041.png) + +作为社区核心共建单位,润和软件2024-2025年交出一份硬核成绩单: + +**技术研发领域 :** 公司推出AI原生操作系统HopeOS V24,通过智能调度算法实现昇腾910芯片全适配,AI软件栈兼容性达100%;针对边缘场景优化的HopeOS Edge版,以128MB轻量化内核达成10毫秒级实时响应;而HopeOS Bigdata版更助力某省移动公司完成HDP平台零中断迁移,数据吞吐效率提升40%。 + +**解决方案层面 :** 润和软件深度融合DeepSeek大模型技术,推出“基于openEuler的智能物联解决方案”,彻底打通工业控制系统与业务链壁垒。该方案已应用于某电力企业配网系统,实现能效优化与故障自诊断;同时,润和软件信创全栈服务助力某省政府完成200+业务系统国产化替代,获评“2024年度openEuler领先商业实践项目”。 + +**商业落地规模** :HopeOS年内获160+项生态认证,覆盖鲲鹏、飞腾等国产芯片及MySQL等主流软件;在金融保险领域,为头部寿险公司构建高可用信创云平台;在应急安全行业,HopeOS针对大数据场景进行专项优化,使业务性能综合提升10%以上,为行业数字化转型提供有力支撑。 + +荣誉见证实力。润和软件以突出的生态贡献和卓越的商业表现屡获殊荣——蝉联“2024年openEuler社区突出贡献单位”,HopeOS V24斩获“新质生产力杰出成果奖”,并入围博鳌论坛创新案例集。 + +![openEuler社区与会代表参观润和软件体验中心](./media/offline-technical-committee-meeting-051.png) + +openEuler生态正从“技术驱动”向“场景驱动”跨越成为本次会议共识。未来,润和软件将与openEuler生态伙伴们一起深化社区协同,攻坚AI与操作系统的基因级融合,赋能更多创新场景,持续引领开源操作系统的创新浪潮。 \ No newline at end of file diff --git a/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-01.png b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-01.png new file mode 100644 index 0000000000000000000000000000000000000000..ea75635b7019a1e8df4a7163bb71ddb27ce9d06e Binary files /dev/null and b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-01.png differ diff --git a/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-02.png b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-02.png new file mode 100644 index 0000000000000000000000000000000000000000..d9430ac35d3236e099e70afb84817488aab0316e Binary files /dev/null and b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-02.png differ diff --git a/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-031.png b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-031.png new file mode 100644 index 0000000000000000000000000000000000000000..57905512fc6872adfcc3412149196ecb9dd3b71e Binary files /dev/null and b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-031.png differ diff --git a/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-041.png b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-041.png new file mode 100644 index 0000000000000000000000000000000000000000..097baf960f2375abdda434ad618187a993a67f8b Binary files /dev/null and b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-041.png differ diff --git a/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-051.png b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-051.png new file mode 100644 index 0000000000000000000000000000000000000000..345d9ad245745a28f8aaa87d246d2bfddd8646ae Binary files /dev/null and b/app/zh/news/20250808-offline-technical-committee-meeting/media/offline-technical-committee-meeting-051.png differ diff --git a/app/zh/news/20250808-yb/20250808-yb.md b/app/zh/news/20250808-yb/20250808-yb.md new file mode 100644 index 0000000000000000000000000000000000000000..43a9697b3e374dd871862daf7c4f82f521b52be2 --- /dev/null +++ b/app/zh/news/20250808-yb/20250808-yb.md @@ -0,0 +1,133 @@ +--- +title: 'openEuler 社区 2025 年 7 月运作报告' +date: '2025-08-08' +category: news +tags: + - openEuler + - 社区运作报告 +banner: 'img/banners/20250808-yb-01.png' +author: 'openEuler' +summary: 'openEuler 社区 2025 年 7 月运作报告' +--- + +![图片](./media/20250808-yb-01.png) + +## 概述 + +2025年7月,OpenAtom openEuler(简称:“openEuler”或“开源欧拉”)社区在技术突破和社区生态方面取得一些进展。openEuler for RVA23 25.03 试验镜像发布,标志 openEuler 向 RISC-V 通用服务器标准的迈出关键一步。 + +技术突破方面,openEuler Intelligence BooM AI 开源基础软件参考实现发布。该基础软件通过将操作系统、数据库、AI框架、模型优化工具、云化部署编排系统集成于一体,为开发者提供可安装、开箱即用的AI应用能力。极大简化企业数据中心内部署 AI 模型的成本,目前 Intelligence BooM 提供三种系统镜像,欢迎大家下载试用。 + +生态方面,Greenbone的社区版(OpenVAS)和企业版(GSM)已经完成对所有已经发布的 openEuler LTS版本(包括SP版本)的系统支持。Greenbone 是一家全球领先的开源漏洞管理解决方案供应商,提供开源领域占主导地位的漏洞评估解决方案,旨在帮助组织识别、评估和修复其 IT 基础设施中的安全漏洞。 + +## 社区规模 + +截至2025年7月31日,openEuler 社区用户累计超过420万。超过2.2万名开发者在 社区 持续贡献。社区累计产生 226.4K个PRs、120.7K条Issues。目前,加入openEuler社区的单位成员2092家,7月新增22家。 + +![图片](./media/20250808-yb-02.png) + +社区贡献看板(截至2025/07/31) + +## 社区事件 + +**开放原子开源生态大会开源欧拉生态分论坛成功举办** + +开放原子开源生态大会开源欧拉生态分论坛,7月23日在北京成功举办。在分论坛上,为了更好推动智能化场景竞争力提升,20家社区成员成立 AI 联合工作组 ,共同建构基于开源欧拉的AI基础软件实施标准,推动企业智能应用生态的繁荣。 + +在分论坛坛上,openEuler 委员会主席熊伟向大家分享了 openEuler 未来在 AI 上的发展规划: **第一** ,操作系统 Agent 化,系统组件 Agent 化是未来的发展方向,社区已经开始在这方面进行技术创新,大家敬请期待。 **第二** ,openEuler 希望在AI时代为开发者提供一个开箱即用的 AI 栈,方便开发者基于 openEuler 提供的各种智能化能力,构建上层业务。 + +点击查看演讲内容: + +[openEuler深度参与2025开放原子开源生态大会,共绘开源未来新蓝图](https://mp.weixin.qq.com/s?__biz=MzkyMjYzNjU0Ng==&mid=2247516211&idx=1&sn=743f965a9a0f6b93bce096e9312c524c&scene=21&poc_token=HP2SomijvZuM3yghXsKMi6dp-v_XqPud78_5m8sx) + +![图片](./media/20250808-yb-03.png) + +**2025 RISC-V 中国峰会,openEuler on RISC-V 展示最新进展、创新成果与生态实践** + +在本次峰会中,openEuler 社区 RISC-V SIG 参与了服务器平台技术工作组(Server Platform TG)和认证指导委员会(Certification Steering Committee)的会员日会议并展开了深入讨论,在软件与生态系统分论坛上发表了四场主题演讲,内容涵盖 openEuler on RISC-V 的总体生态建设、RVCK 内核同源项目、虚拟化生态以及硬件生态支持等议题,并与参会者们进行了广泛交流。 + +相关链接: + +[OERV 团队参加 2025 RISC-V 中国峰会会议回顾](https://www.openeuler.org/zh/news/20250718-oerv-2025-riscv-china-summit/index.html) + +![图片](./media/20250808-yb-04.png) + +**开源之夏 2025 中选名单公示,55名开发者将为 openEuler 带来更多技术创新** + +openEuler 社区 2025 年开源之夏项目共收到 122 份 项目申请,最终 55 位优秀学生脱颖而出!他们将在导师指导下,开启为期 3 个月的开源项目开发之旅,为 openEuler 生态注入新的创新活力。 + +查看中选名单 : + +[openEuler开源之夏2025中选名单公示!55位开发者即将启程](https://mp.weixin.qq.com/s/v0Ps4ReM-hWwUAHjyEuTVw) + +**openEuler SIG-ARM Meetup 在深圳举办** + +本次 Meetup 汇聚了 Arm 生态的头部芯片厂商与软件巨头嘉宾,众人围绕多个核心议题展开深度探讨:包括 openEuler 在 Arm 架构上的最新性能优化与创新实践,云原生、AI 等关键应用场景中 Arm 服务器的迁移部署调优、面临的核心挑战及基础软件栈的 Arm 适配方案,以及 Arm 服务器生态的未来趋势与标准化进展。这些探讨为 Arm 生态的发展注入了新的思路与动力。 + +精彩回顾: + +[openEuler SIG-ARM Meetup 精彩回顾:聚焦 Arm 生态创新与实践]() + +![图片](./media/20250808-yb-05.png) + +## 技术进展 + +**openEuler Intellgence BooM AI 开源基础软件参考实现发布** + +Intelligence BooM 是一套 AI 开源基础软件栈,通过将操作系统、数据库、AI框架、模型优化工具、云化部署编排系统集成于一体,提供可安装、开箱即用的AI应用能力。极大简化企业数据中心内部署 AI 模型的成本,易于与现有的企业业务流程集成,为企业数智化转型提供一个新思路。 + +目前已经发布 docker 系统镜像,欢迎大家下载使用: + +- ARM+Atlas 800I A2 :hub.oepkgs.net/oedeploy/openeuler/aarch64/intelligence_boom:0.1.0-aarch64-800I-A2-mindspore2.7-openeuler24.03-lts-sp2 +- X86+Atlas 300I Duo :hub.oepkgs.net/oedeploy/openeuler/x86_64/intelligence_boom:0.1.0-x86_64-800I-A2-mindspore2.7-openeuler24.03-lts-sp2 +- ARM+300I Duo :hub.oepkgs.net/oedeploy/openeuler/aarch64/intelligence_boom:0.1.0-aarch64-300I-Duo-mindspore2.7-openeuler24.03-lts-sp2 +- X86+300I Duo :hub.oepkgs.net/oedeploy/openeuler/x86_64/intelligence_boom:0.1.0-x86_64-300I-Duo-mindspore2.7-openeuler24.03-lts-sp2 +- ARM+NVIDIA A100 :hub.oepkgs.net/oedeploy/openeuler/aarch64/intelligence_boom:0.1.0-aarch64-A100-openeuler24.03-lts-sp2 +- ARM+NVIDIA A100+sysHAX :hub.oepkgs.net/oedeploy/openeuler/aarch64/intelligence_boom:0.1.0-aarch64-syshax-openeuler24.03-lts-sp2 + +点击查看部署教程: + +https://gitee.com/openeuler/llm_solution + +![图片](./media/20250808-yb-06.png) + +**Kuasar 机密容器解决方案,为高敏感场景提供隐私保护与算力弹性的新一代可信基础设施** + +Kuasar 机密虚机解决方案使用了iSulad + Kuasar + secGear 三种技术,每个组建在解决方案中的能力如下: + +- **Kuasar 容器运行时** :对接 QEMU 实现机密虚机生命周期管理,向上屏蔽不同类型的机密虚机,如鲲鹏 virtCCA[6]、鲲鹏 CCA 等。 +- **iSulad 轻量级容器引擎** :将拉取容器镜像动作卸载到机密容器内的 Kuasar-task,在机密容器内部拉取并解密容器镜像,保护容器镜像的机密性和完整性。 +- **secGear** :屏蔽 TEE 硬件差异,提供统一的远程证明和镜像加解密密钥获取流程。 + +原文阅读: + +[探秘 Kuasar 机密容器解决方案](https://www.openeuler.org/zh/blog/20250701-Kuasar/20250701-Kuasar.html) + +**isocut 镜像裁剪定制工具,打造精简高效、契合自身需求的安装介质** + +随着 openEuler 软件生态的不断发展,光盘镜像所包含的软件包数量持续增加,镜像体积也随之变大。为满足多样化的部署需求,openEuler 提供了灵活实用的镜像裁剪定制工具 —— isocut,用户使用该工具,裁剪出仅包含所需 RPM 软件包的轻量化镜像从而打造精简高效、契合自身需求的安装介质。 + +查看使用指南: + +[镜像裁剪工具 isocut 使用指南](https://www.openeuler.org/zh/blog/20250716-isocut-user-guide/20250716-isocut-user-guide.html) + +**openEuler for RVA23 25.03 试验镜像发布** + +openEuler 社区 RISC-V SIG 参与 2025 RISC-V 中国峰会时,发布符合 RVA23 标准的试验镜像。本次镜像 LLVM20 工具链,内核采用基于 openEuler Kernel 6.6 版本的 24.03 LTS SP2 分支。openEuler RVA23 试验镜像完全基于 openeuler 社区源码和基础设施开发,符合最新 RISC-V Profile 的规范,是 openEuler 迈向 RISC-V 通用服务器标准的关键一步。 + +![图片](./media/20250808-yb-07.png) + +**Greenbone 全版本适配 openEuler** + +Greenbone是一家全球领先的开源漏洞管理解决方案供应商,提供开源领域占主导地位的漏洞评估解决方案,旨在帮助组织识别、评估和修复其 IT 基础设施中的安全漏洞。本次适配完成将进一步丰富 openEuler在安全领域的应用解决方案,为企业的数字化转型提供了更多安全解决方案。目前Greenbone的社区版(OpenVAS)和企业版(GSM)已经完成对所有已经发布的 LTS版本(包括SP版本)的系统支持。 + +点击查看使用指南: + +[Greenbone 全版本适配 openEuler,为企业的数字化转型提供另一个安全解决方案](https://www.openeuler.org/zh/blog/20250724-greenbone-openeuler/20250724-greenbone-openeuler.html) + +## 软硬件兼容性测评 + +截至2025年7月31日,openEuler软硬件兼容性测评新增46个,其中北向(ISV)新增33个,南向(IHV)新增11个,OSV新增2个。 + +- 兼容性列表: https://www.openeuler.org/zh/compatibility/ +- OSV技术测评列表 https://www.openeuler.org/zh/approve/ \ No newline at end of file diff --git a/app/zh/news/20250808-yb/media/20250808-yb-01.png b/app/zh/news/20250808-yb/media/20250808-yb-01.png new file mode 100644 index 0000000000000000000000000000000000000000..8385d908337a56c85b47dc98d11bba61600f4ee9 Binary files /dev/null and b/app/zh/news/20250808-yb/media/20250808-yb-01.png differ diff --git a/app/zh/news/20250808-yb/media/20250808-yb-02.png b/app/zh/news/20250808-yb/media/20250808-yb-02.png new file mode 100644 index 0000000000000000000000000000000000000000..7afbe25f9dff36ec3fbccde7334a706436d770da Binary files /dev/null and b/app/zh/news/20250808-yb/media/20250808-yb-02.png differ diff --git a/app/zh/news/20250808-yb/media/20250808-yb-03.png b/app/zh/news/20250808-yb/media/20250808-yb-03.png new file mode 100644 index 0000000000000000000000000000000000000000..79049452318d9bfaf2255609faf02a36c3dcb835 Binary files /dev/null and b/app/zh/news/20250808-yb/media/20250808-yb-03.png differ diff --git a/app/zh/news/20250808-yb/media/20250808-yb-04.png b/app/zh/news/20250808-yb/media/20250808-yb-04.png new file mode 100644 index 0000000000000000000000000000000000000000..56ab433cbfa6ccbf2f70c6eb39eea79ee044e7f1 Binary files /dev/null and b/app/zh/news/20250808-yb/media/20250808-yb-04.png differ diff --git a/app/zh/news/20250808-yb/media/20250808-yb-05.png b/app/zh/news/20250808-yb/media/20250808-yb-05.png new file mode 100644 index 0000000000000000000000000000000000000000..2608c31d9c16f27e85e68884d133d5a3749f66ea Binary files /dev/null and b/app/zh/news/20250808-yb/media/20250808-yb-05.png differ diff --git a/app/zh/news/20250808-yb/media/20250808-yb-06.png b/app/zh/news/20250808-yb/media/20250808-yb-06.png new file mode 100644 index 0000000000000000000000000000000000000000..0f0f82298465bf918eee16f4777667b1d66accde Binary files /dev/null and b/app/zh/news/20250808-yb/media/20250808-yb-06.png differ diff --git a/app/zh/news/20250808-yb/media/20250808-yb-07.png b/app/zh/news/20250808-yb/media/20250808-yb-07.png new file mode 100644 index 0000000000000000000000000000000000000000..1d530927154bf8868970670c21fe56f75e5f22a0 Binary files /dev/null and b/app/zh/news/20250808-yb/media/20250808-yb-07.png differ diff --git a/app/zh/news/20250819-ccf-intelligence-boom/20250819-ccf-intelligence-boom.md b/app/zh/news/20250819-ccf-intelligence-boom/20250819-ccf-intelligence-boom.md new file mode 100644 index 0000000000000000000000000000000000000000..538eeea33f600b619c3dae760e0ef1c7e415e780 --- /dev/null +++ b/app/zh/news/20250819-ccf-intelligence-boom/20250819-ccf-intelligence-boom.md @@ -0,0 +1,39 @@ +--- +title: '2025 CCF 中国开源大会: Intelligence BooM AI开源基础软件参考实现 2507(烩面)正式发布!' +date: '2025-08-08' +category: news +tags: + - openEuler + - 新闻 +banner: 'img/banners/20250819-ccf-intelligence-boom-01.png' +author: 'openEuler' +summary: '2025 CCF 中国开源大会: Intelligence BooM AI开源基础软件参考实现 2507(烩面)正式发布!' +--- + +备受业界瞩目的 2025 CCF 中国开源大会(CCF ChinaOSC)于 2025 年 8 月 2 日 - 3 日在上海正式召开。大会以“蓄势引领、众行致远”为主题,依托上海国际化创新生态与科技产业集聚优势,汇聚顶尖专家学者,以及多位来自高校、企业的开源领军人物共同参与。本次大会,OpenAtom openEuler(简称:openEuler或开源欧拉)作为开源社区代表之一,深度参与探索开源生态,分享关键领域的前沿发展。 + +### Intelligence BooM: AI 开源基础软件 + +openEuler技术委员会主席胡欣蔚在《Intelligence Boom:AI开源基础软件》中强调 ,当前的产业智能化转型,需要一个面向应用场景的全栈开源解决方案,推动 AI 技术的普及和平民化,促成 AI 创新的多样化和繁荣。他分享了如何通过 openEuler AI 联合工作组践行落地: +- 一、拥抱社区,积极参与优秀开源项目,向上游共享代码; +- 二、组件解耦,将能力组件化,特性与代码跨项目复用; +- 三、积极创新,探索软件全栈中各层应用 AI,针对 AI 优化的创新技术; +- 四、打破技术烟囱,联合社区、高校与企业统一技术标准并增强生态兼容。 + +![图片](./media/20250819-ccf-intelligence-boom-01.png) + +openEuler技术委员会主席胡欣蔚 + +### Intelligence BooM AI 开源基础软件参考实现 2507(烩面)发布仪式 + +openEuler 委员会主席熊伟在《Intelligence BooM AI开源基础软件参考实现发布》中介绍 ,Intelligence BooM AI开源基础软件栈是联合23家社区、伙伴成员一起打造的大模型全栈开源解决方案,包含异构融合平台、任务管理平台、数据管理平台、运行加速平台、智能应用平台及全栈安全平台等6大平台,20+开源组件。伙伴可以基于本次发布的参考实现进行商业场景应用,参与社区代码开发,进行技术及Agent应用创新等。 + +全栈方案及部署教程链接:[https://gitee.com/openeuler/llm_solution](https://gitee.com/openeuler/llm_solution),欢迎大家访问和提issue。 + +![图片](./media/20250819-ccf-intelligence-boom-02.png) + +**当天上午,“Intelligence BooM AI 开源基础软件参考实现 2507(烩面)”正式发布!** openEuler 开源社区将持续依托开源力量,深耕面向 AI 推理的全栈开源解决方案建设,助力企业加速迈入智能化时代,力争成为赋能行业智能化转型的重要标杆。 + +![图片](./media/20250819-ccf-intelligence-boom-03.png) + +最后, CCF 中国开源大会为开源领域搭建了优质交流平台。 openEuler 开源社区在此收获颇丰,不仅加深与各方交流合作,还展示了自身在 AI 领域的创新成果。未来, openEuler 将带着大会给予的启发与动力,持续创新技术、壮大生态,为推动开源事业迈向新高度贡献更多力量,携手业界伙伴,在开源之路上行稳致远 。 \ No newline at end of file diff --git a/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-01.png b/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-01.png new file mode 100644 index 0000000000000000000000000000000000000000..b36334c825e9b083067046f2043243c401e5cd31 Binary files /dev/null and b/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-01.png differ diff --git a/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-02.png b/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-02.png new file mode 100644 index 0000000000000000000000000000000000000000..742a5c74fc51236eb99aa926baa06e6c4341f769 Binary files /dev/null and b/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-02.png differ diff --git a/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-03.png b/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-03.png new file mode 100644 index 0000000000000000000000000000000000000000..d61c5f996fb46a0ddaebedbd663c45a28e6daf14 Binary files /dev/null and b/app/zh/news/20250819-ccf-intelligence-boom/media/20250819-ccf-intelligence-boom-03.png differ diff --git a/app/zh/news/20250819-sig-long-meetup/20250819-sig-long-meetup.md b/app/zh/news/20250819-sig-long-meetup/20250819-sig-long-meetup.md new file mode 100644 index 0000000000000000000000000000000000000000..1163515c2796caf221047da8fe44b8acbdb36877 --- /dev/null +++ b/app/zh/news/20250819-sig-long-meetup/20250819-sig-long-meetup.md @@ -0,0 +1,16 @@ +--- +title: '活动报名 | openEuler sig-Long 异构融合技术 Meetup 北京站' +date: '2025-08-18' +category: news +tags: + - openEuler + - Meetup +banner: 'img/banners/20250819-sig-long-meetup.png' +author: 'openEuler' +summary: '活动报名 | openEuler sig-Long 异构融合技术 Meetup 北京站' +--- + +8月22日,OpenAtom openEuler(简称:“openEuler”或“开源欧拉”)sig-Long 异构融合技术 Meetup 将在北京举办,诚邀开发者、企业技术专家及开源爱好者共同参与!本次活动以异构融合技术为核心,特邀多位来自北京大学、北京航空航天大学、京东、Intel、华为的技术专家,深入探讨异构融合技术的发展与落地。 +openEuler sig-Long 致力于构建异构融合计算基础设施框架,实现算力统一接入、异构融合内存、异构融合虚拟化、算力切分、资源优先级配置、弹性迁移等关键能力,在openEuler社区开源维护关键组件,帮助开发者降低异构计算开发门槛,推动openEuler异构计算生态的持续演进。 + +![图片](./media/20250819-sig-long-meetup.jpg) \ No newline at end of file diff --git a/app/zh/news/20250819-sig-long-meetup/media/20250819-sig-long-meetup.jpg b/app/zh/news/20250819-sig-long-meetup/media/20250819-sig-long-meetup.jpg new file mode 100644 index 0000000000000000000000000000000000000000..58cce189fde565cee3222298827522c1916b5419 Binary files /dev/null and b/app/zh/news/20250819-sig-long-meetup/media/20250819-sig-long-meetup.jpg differ