From fc1353591fc4022b1cca4c9d3cb6031dc29464f4 Mon Sep 17 00:00:00 2001 From: yanjianqing Date: Wed, 14 Aug 2024 08:55:25 +0800 Subject: [PATCH] update README.en.md and modify README.md --- README.en.md | 99 +++++++++++++++++++++++++++++++++++++++------------- README.md | 15 ++++---- 2 files changed, 80 insertions(+), 34 deletions(-) diff --git a/README.en.md b/README.en.md index c27b136..343aaab 100644 --- a/README.en.md +++ b/README.en.md @@ -1,36 +1,85 @@ -# NestOS -#### Description -NestOS is an automatically updated minimal operating system developed based on openEuler +#### In the constantly evolving cloud native world, containerization and virtualization technologies have become key components of modern application delivery and management. To meet this growing demand, we have launched two new versions based on NestOS-22.03-LTS-SP2, NestOS For Container and NestOS For Virt, focusing on providing the best container hosting and virtualization solutions. NestOS-22.03-LTS-SP4-20240628 version has been released. Welcome all developers to visit the [official NestOS website]( https://nestos.openeuler.org/ ) to download and experience it. -#### Software Architecture -Software architecture description +## 1. NestOS For Container +**NestOS for Container (NFC)** integrates rpm-ostree support, ignition configuration, and other technologies. It adopts a dual-root file system and the design of atomic updates, and uses nestos-assembler to quickly integrate and build. It is also adapted to platforms such as K8S and openStack to optimize the noise floor of container operation, so that the system has the ability to build clusters very conveniently, and can run large-scale containerized workloads more securely. -#### Installation +![image-20211015170943884](docs/zh/graph/README/image-20211015170943884.png) -1. xxxx -2. xxxx -3. xxxx -#### Instructions +### 1.1 NFC-qucik start +[Deploying on Virtualization Platforms - VMware](https://gitee.com/openeuler/NestOS/blob/master/docs/zh/usr_manual/%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B.md) -1. xxxx -2. xxxx -3. xxxx +### 1.2 NFC-application guide +①. [Rpm-ostree usage](https://gitee.com/openeuler/NestOS/blob/master/docs/zh/usr_manual/rpm-ostree%E4%BD%BF%E7%94%A8.md) +②. [Zincati automatic update](https://gitee.com/openeuler/NestOS/blob/master/docs/zh/usr_manual/zincati%E8%87%AA%E5%8A%A8%E6%9B%B4%E6%96%B0%E4%BD%BF%E7%94%A8.md) +③. [NestOS customization](https://gitee.com/openeuler/NestOS/blob/master/docs/zh/usr_manual/%E5%AE%9A%E5%88%B6NestOS.md) +④. [Example of ignition configuration](https://gitee.com/openeuler/NestOS/blob/master/docs/zh/usr_manual/ignition%E9%85%8D%E7%BD%AE.md) +⑤. [Container image update usage](https://gitee.com/openeuler/NestOS/blob/master/docs/zh/usr_manual/%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%E6%9B%B4%E6%96%B0%E4%BD%BF%E7%94%A8.md) +⑥. [Detailed explanation of more functional features](https://gitee.com/openeuler/NestOS/blob/master/docs/zh/usr_manual/%E5%8A%9F%E8%83%BD%E7%89%B9%E6%80%A7%E6%8F%8F%E8%BF%B0.md) -#### Contribution +## 2. NestOS For Virt +**NestOS For Virt (NFV)** is a customized version designed for virtualization scenarios, pre-installed with virtualization key components. The goal is that users can easily create and manage virtual machines that provide superior virtualization performance whether working in development, test, or production environments, while running a variety of workloads on high-performance virtual machines for resource isolation and security. -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request +Whether you're running cloud-native applications, virtualized environments, or both, NFC and NFV are the perfect choice. They provide stability, performance, and security to meet the requirements of modern data centers and cloud environments. +## 3. NestOS features -#### Gitee Feature +### 3.1 Nestos Kubernetes Deployer +**The Nestos Kubernetes Deployer (NKD)** is container cloud deployment and O&M tool dedicated to NFC. NKD is a solution for deploying Kubernetes clusters based on NestOS and consistent O&M with container cloud services and cloud base OS. The goal is to simplify the process of deploying and upgrading clusters by providing services such as deployment, updates, and configuration management of cluster infrastructure, including operating systems and Kubernetes infrastructure components, outside the cluster. -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +### 3.2 PilotGo +PilotGo is a plug-in O&M management platform incubated by Kylinsoft in the openEuler community. Based on the features and best practices of the NestOS platform, PilotGo brings customized O&M management functions and new architecture-aware plug-in features to the NestOS platform. + +### 3.3 x2NestOS +x2nestos is a quick and easy deployment tool that converts a general operating system to an NFC version. The NFV version is integrated by default, and can also be used with other general Linux operating systems managed by yum or apt mainstream package managers. Based on the kexec dynamic kernel loading feature, the tool can skip the boot stage to complete the deployment of the operating system, effectively reducing the difficulty and cost of converting existing clusters to NFC. + +### 3.4 Customize images +NFC, as a container cloud base operating system based on the idea of immutable infrastructure, distributes and updates the file system as a whole.This solution has brought huge improvements in operation and security. However, in the actual production environment, the officially released version is often difficult to meet the needs of users, so more convenient customization means are required. NFC integrates the feature of ostree native container , which allows users in container cloud scenarios to easily build custom images by writing a ContainerFile (Dockerfile) file using the familiar technology stack, which can be used for custom integration components or subsequent upgrade and maintenance. + +### 3.5 Rubik: mix online and offline business +Rubik is a container hybrid engine that adapts to single-node computing power tuning and quality of service assurance. NFC has pre-enabled the kernel features of rubik( related to mix online and offline business), and supports the overall solution based on the rubik container hybrid engine. This solution greatly improves the resource utilization of container cloud scenarios while ensuring the quality of service of key services by reasonably scheduling and isolating resources. + +### 3.6 Kernel feature enhancements +We maintain nestos-kernel independently and develop it based on the openEuler-22.03-sp2 kernel version. In this process, we focus on improving the kernel features such as mm, CPU, cgroup, etc., to create features that are different from openEuler kernel and have better optimized performance. + + +#### For more details, please visit the [official NestOS website](https://nestos.openeuler.org/) + +## 4. Container performance testing + + +Use NestOS For Container-22.03-LTS-SP2.20230928 to compare the performance of docker, podman, and iSulad container engines. The test results are as follows, showing that the performance of containers running in NFC is much better than that of traditional CentOS. + + +| operator(ms) | NestOS(Podman) | CentOS(Podman) | NestOS(iSulad) | CentOS(iSulad) | NestOS(Docker) | CentOS(Docker) | +| :----------: | :----: | :----: | :----: | :-------: | :-------: | :-------: | +| 100*creat | 3436 | 6761 | 858 | 882 | 1375 | 2919 | +| 100*start | 5496 | 10130 | 1885 | 2123 | 7397 | 18400 | +| 100*stop | 2516 | 2532 | 457 | 497 | 1052 | 465 | +| 100*rm | 2971 | 3141 | 501 | 566 | 1116 | 6838 | + + +## 5. Main Contributor + +| Gitee ID | company | email | +| :-----------: | :------: | :---------------------: | +| @duyiwei7w | KylinSoft | duyiwei@kylinos.cn | +| @ccdxx | KylinSoft | chendexi@kylinos.cn | +| @shanph | KylinSoft | lishanfeng@kylinos.cn | +| @wangyueliang | KylinSoft | wangyueliang@kylinos.cn | +| @jianli-97 | KylinSoft | lijian2@kylinos.cn | +| @duguhaotian | Huawei | liuhao27@huawei.com | + +## 6. Honor Contributor + +Thank you to the following original contributors for their contributions to the NestOS project and openEuler community: + +| Gitee ID | company | email | +| :-----------: | :------: | :---------------------: | +| @fu-shanqing | KylinSoft | fushanqing@kylinos.cn | +| @ningjinnj | KylinSoft | ningjin@kylinos.cn | + + + +Anyone who is interested in contributing to the project is welcome to participate. diff --git a/README.md b/README.md index 480af97..e8e27a7 100644 --- a/README.md +++ b/README.md @@ -23,24 +23,24 @@ NestOS For Container(以下简称NFC)集成了rpm-ostree支持、ignition配 ## 2. NestOS For Virt NestOS For Virt(以下简称NFV)是一个专为虚拟化场景而设计的版本,预安装了虚拟化关键组件,其目标是用户可以轻松创建和管理虚拟机,无论是在开发、测试还是生产环境中工作,都能够提供卓越的虚拟化性能,同时可以在高性能的虚拟机上运行各种工作负载,实现资源隔离和安全性。 -无论是运行云原生应用程序、虚拟化环境,还是两者兼顾,NestOS For Container 和 NestOS For Virt 都是理想之选。它们提供了稳定性、性能和安全性,以满足现代数据中心和云环境的要求。 +无论是运行云原生应用程序、虚拟化环境,还是两者兼顾,NFC 和 NFV 都是理想之选。它们提供了稳定性、性能和安全性,以满足现代数据中心和云环境的要求。 ## 3. 六大特性助力NestOS全新出发 ### 3.1 云原生一体化运维工具 -NestOS For Container专属容器云部署运维工具NKD(nestos-kubernetes-deployer),是基于NestOS部署kubernetes集群,与容器云业务与云底座OS一致性运维而准备的解决方案。其目标是在集群外提供对集群基础设施(包括操作系统和kubernetes基础组件)的部署、更新和配置管理等服务,从而简化了集群部署和升级的流程。 +NFC专属容器云部署运维工具NKD(nestos-kubernetes-deployer),是基于NestOS部署kubernetes集群,与容器云业务与云底座OS一致性运维而准备的解决方案。其目标是在集群外提供对集群基础设施(包括操作系统和kubernetes基础组件)的部署、更新和配置管理等服务,从而简化了集群部署和升级的流程。 ### 3.2 PilotGo插件式运维管理平台 PilotGo是麒麟软件在openEuler社区孵化的插件式运维管理平台。本次PilotGo针对NestOS平台特性及最佳应用实践,为NestOS平台带来了定制化的运维管理功能及全新的架构感知插件特性。 ### 3.3 x2NestOS:不可变模式转换工具 -x2nestos是一款将通用形态操作系统转换为 NestOS For Container 版本的快捷部署工具。NestOS For Virt版本默认集成,也可通用于以yum或apt主流包管理器管理的其他通用linux操作系统。该工具基于kexec动态加载内核特性,实现跳过引导阶段完成操作系统部署,有效降低现有集群转换为NestOS For Container难度和成本。 +x2nestos是一款将通用形态操作系统转换为 NFC 版本的快捷部署工具。NFV版本默认集成,也可通用于以yum或apt主流包管理器管理的其他通用linux操作系统。该工具基于kexec动态加载内核特性,实现跳过引导阶段完成操作系统部署,有效降低现有集群转换为NFC难度和成本。 ### 3.4 轻松定制系统镜像 -NestOS for Containers,作为基于不可变基础设施思想的容器云底座操作系统,将文件系统作为一个整体进行分发和更新。这一方案在运维与安全方面带来了巨大的提升。然而,在实际生产环境中,官方发布的版本往往难以满足用户的需求,因此需要更方便的定制手段。现NestOS For Container集成ostree native container特性,可使容器云场景用户利用熟悉的技术栈,只需编写一个ContainerFile(Dockerfile)文件,即可轻松构建定制版镜像,用于自定义集成组件或后续的升级维护工作。 +NFC作为基于不可变基础设施思想的容器云底座操作系统,将文件系统作为一个整体进行分发和更新。这一方案在运维与安全方面带来了巨大的提升。然而,在实际生产环境中,官方发布的版本往往难以满足用户的需求,因此需要更方便的定制手段。现NFC集成ostree native container特性,可使容器云场景用户利用熟悉的技术栈,只需编写一个ContainerFile(Dockerfile)文件,即可轻松构建定制版镜像,用于自定义集成组件或后续的升级维护工作。 ### 3.5 Rubik在离线混部 -Rubik是一个自适应单机算力调优和服务质量保障的容器混部引擎,NestOS For Container版本已预开启Rubik在离线混部相关内核特性,支持基于rubik容器混部引擎的整体解决方案,通过对资源进行合理调度与隔离,在保障关键业务服务质量的前提下极大提升容器云场景资源利用率。 +Rubik是一个自适应单机算力调优和服务质量保障的容器混部引擎,NFC版本已预开启Rubik在离线混部相关内核特性,支持基于rubik容器混部引擎的整体解决方案,通过对资源进行合理调度与隔离,在保障关键业务服务质量的前提下极大提升容器云场景资源利用率。 ### 3.6 内核特性增强 我们对nestos-kernel进行了独立维护,并基于openEuler-22.03-sp2内核版本进行开发。在这个过程中,我们专注于改进mm、cpu、cgroup等方面的内核特性,以创造出与Euler内核有所差异并具有更好优化性能的特点。 @@ -51,7 +51,7 @@ Rubik是一个自适应单机算力调优和服务质量保障的容器混部引 ## 4. 容器性能测试 使用NestOS For Container-22.03-LTS-SP2.20230928版本,横向对比 docker,podman,iSulad 容器引擎性能。测试结果如下: -通过数据可以看出在NestOS For Container运行容器的性能远优于传统的CentOS +通过数据可以看出在NFC运行容器的性能远优于传统的CentOS | operator(ms) | NestOS(Podman) | CentOS(Podman) | NestOS(iSulad) | CentOS(iSulad) | NestOS(Docker) | CentOS(Docker) | @@ -85,6 +85,3 @@ Rubik是一个自适应单机算力调优和服务质量保障的容器混部引 欢迎感兴趣的小伙伴加入我们 - - -[1]: ./images/NestOS-roadmap.png "NestOS-roadmap.png" -- Gitee