From bfbd7643f71e327c36142b69d00a94cd8a590ea7 Mon Sep 17 00:00:00 2001 From: zhouqunjie Date: Wed, 16 Aug 2023 11:17:05 +0800 Subject: [PATCH] Update README.md --- README.md | 108 ++++++++++++++++++++++++++++++++++---------- docs/images/img.png | Bin 0 -> 55481 bytes 2 files changed, 83 insertions(+), 25 deletions(-) create mode 100644 docs/images/img.png diff --git a/README.md b/README.md index b5ac3f7e..04bb1dbb 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,101 @@ -# PCM: Peer Collaboration Mechanism +# Kubenan -PCM is positioned as Software stack over Cloud, aiming to build the standards and ecology of heterogeneous cloud collaboration in a non intrusive and autonomous peer-to-peer manner. It focuses on how to make full use of the computing and storage capabilities of multiple source clouds without changing the heterogeneous cloud computing software stack, rather than implementing a new cloud software stack. From the cloud perspective, PCM superimposes on the cloud and focuses more on collaboration between clouds than on the cloud itself. +- 网站: [https://www.jointcloud.net](https://www.jointcloud.net/) +- 论坛: [PCM Discuss](https://www.jointcloud.net/) +- 文档: [https://www.kdocs.cn/l/ceLXXITQCgpv](https://www.kdocs.cn/l/ceLXXITQCgpv) +- 教程: [PCM's Learn Platform](https://www.jointcloud.net/) -![pcm](docs/imges/pcm.png) +[![PCM](https://www.gitlink.org.cn/images/avatars/Organization/123822?t=1689062058)](https://camo.githubusercontent.com/1a4ed08978379480a9b1ca95d7f4cc8eb80b45ad47c056a7cfb5c597e9315ae5/68747470733a2f2f7777772e6461746f636d732d6173736574732e636f6d2f323838352f313632393934313234322d6c6f676f2d7465727261666f726d2d6d61696e2e737667) -## Requirements +  对等协作机制的愿景是在云际环境中构建一套所有服务提供方和需求方能够自主参与协作实现对等交易,以非侵入的方式实现各利益主体间便捷高效的连接和调用,并在构建云际生态的同时形成行业标准,吸引更多云际服务商加入贡献。PCM站在云上视角,叠加于云之上,关注云之间协作多于云自身。 +对等协作机制建立在一个标准的软件定义框架之上,按照这个标准框架,拥有物理云资源的云服务提供者可以自主定义PCM规则框架,其他遵循该规则框架的实体云即可参与协作交易,并进而面向领域应用定制虚拟专用云,满足各类云际参与者如中心侧、边缘侧和终端侧等异构基础设施资源直接自主参与协作和交易的需求。 ---- +PCM力求解决的现实问题: -* Linux amd64 +- **效能提升**: +  云际开发者加入PCM框架后,可以通过描述性语言生成框架内部功能结构的代码和大部分规格定义,专注于业务逻辑开发,无需关心底层管理功能。框架提供微服务管理、多语言代码生成和模型桥接功能,可降低编码工作量和入门难度,提高能效。 -* [Slurm-2-6-9-1](https://github.com/SchedMD/slurm/archive/refs/tags/slurm-2-6-9-1.tar.gz) +- **解决平台锁定问题**: +  对等协作机制通过多云适配、标准化接口和抽象层等手段,有效解决平台锁定问题,实现跨平台运行、部署和交互。标准化接口简化开发人员工作,降低平台锁定风险。 -* [Go](https://go.dev/) 1.19 or higher +- **降低代码开发难度**: +  对等协作开发框架降低了开发难度,提供了结构化开发模式、现成组件和文档支持,不同级别开发人员能更公平地协同工作。框架可节省约50%的开发时间,初级程序员用约15人天完成原需1人月的任务。自动生成工具、代码模板和组件复用等功能让开发者更专注于业务逻辑实现。无需再培训高级开发人员,可节省时间和人力资源成本,提高投入产出比。 -* [GCC](https://gcc.gnu.org/) 4.8.5 or higher +- **减少代码开发工作量**: +  PCM框架提供自动化功能和代码生成工具,减少手动编写代码,提高开发速度和代码质量。使用框架的自动生成工具后,整体代码量超过一半由工具生成,低代码率达到约63%。开发者主要工作是编写描述语言文件生成基础结构,然后调整和编写逻辑功能的开发。这使团队能更快速敏捷地交付产品并进行业务优化和用户反馈迭代。 +   +## 设计架构 +  Kubenan是框架的核心组件,实现了对不同Participant端技术栈的异构屏蔽。框架面向用户侧主要分为资源变更(任务提交)和集约展示两大功能。在任务提交后,PCM通过架设在云算云、智算云、超算云之上的调度中心来实现任务的动态流转。在集约展示部分,PCM主要通过Tracker以及P端主动上报的方式对多个Participant服务的资源、任务等信息进行收集和汇聚,向用户提供标准化的统一接口。用户可以在前端页面上查看PCM提供的信息,也可以通过接口直接获取数据。 +![img.png](docs/images/img.png) +## 服务部署 +  PCM的开发环境需要安装golang 1.18以上版本,参考下文内容将会在本地启动kubenan的相关服务。 +  拉取项目的命令如下 +   +`git clone https://gitlink.org.cn/jcce-pcm/pcm-coordinator.git` - -## Quick Start - ---- - +#### nacos +  配置管理采用nacos,用户需要在本地或服务器上安装部署nacos服务,对应教程可以参考[nacos安装](https://nacos.io/en-us/docs/quick-start.html),nacos中添加对应服务的配置文件,具体配置内容参考下文。 +#### kubenan-rpc +rpc服务的配置内容模板如下 ``` -# clone -git clone https://gitlink.org.cn/JCCE/PCM +Name: pcm.core.rpc +ListenOn: 0.0.0.0:2004 +DB: + DataSource: username:password@(x.x.x.x:3306)/pcm?parseTime=true + +SnowflakeConf: + MachineId: 1 +``` +  运行以下命令后将会在本地启动kubenan-rpc服务,其具体功能可参考上文架构设计中的描述。 +``` # get required packages go mod tidy -# build pcm components -make build - -# start service -nohup ./pcm-gateway &> pcm-gateway.log & -nohup ./pcm-pod &> pcm-pod.log & -nohup ./pcm-vm &> pcm-vm.log & -nohup ./pcm-slurm &> pcm-slurm.log & +# run rpc service +go run pcm-coordinator/rpc/pcmcore.go ``` +#### kubenan-api +  api服务的配置内容模板如下,其中各P端的config信息可以根据实际情况按需配置。 +``` +Name: pcm.core.api +Host: 0.0.0.0 +Port: 8999 -If the startup is successful, the 'gateway' will listen on the '8880' port by default, and no error is reported in the log. The above is a simple demonstration using nohup. It is recommended that the production environment should be hosted by systemd. The relevant service files can be found in the etc/service directory for reference. +DB: + DataSource: username:password@(x.x.x.x:3306)/pcm?parseTime=true + +Redis: + Host: x.x.x.x:portnumber + Pass: password + +# k8s rpc +K8sNativeConf: + Endpoints: + - 127.0.0.1:2003 + NonBlock: true + +#slurm rpc +THRpcConf: + Endpoints: + - 127.0.0.1:2007 +NonBlock: true + +#modelarts rpc +ModelArtsRpcConf: + Endpoints: + - 127.0.0.1:2002 +NonBlock: true +``` +  运行以下命令后将会在本地启动kubenan-api服务,服务启动后用户将可以通过http请求其接口进行各类功能调用。 +``` +# get required packages +go mod tidy + +# run rpc service +go run pcm-coordinator/api/pcm.go +``` +## 加入&贡献 +  我们期待您的意见和贡献,欢迎所有的朋友对项目进行指正和改进,共同打造一套高效稳定的云际协作机制。 \ No newline at end of file diff --git a/docs/images/img.png b/docs/images/img.png new file mode 100644 index 0000000000000000000000000000000000000000..d1fbc386438a764afe97e621daf843dc30aa7773 GIT binary patch literal 55481 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 z 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