如何在RDO中添加OpenStack新服务?

云计算 admin 1145℃ 0评论

当新贡献者加入RDO时,他们会寻求关于如何添加新服务的建议,并帮助RDO用户采用它。这篇文章不是官方文件,也不是关于如何进行一些活动的详细说明,而是笔者根据去年使用RDO所学到的知识向新来者提供了一些高级别的建议。

请注意,你不需要遵循所有这些步骤,你也可以有自己的想法。欢迎展开讨论。


1.将包添加到RDO

第一步是如RDO文档(https://www.rdoproject.org/what/new-package/)所示,将包添加到RDO存储库。这包括主要的服务包、客户端库,也可能包含一个用于仪表盘的插件。

在某些情况下,新软件包需要一些通用库。如果它们不在CentOS基础channel中,那么RDO会将它们从Fedora包导入到依赖关系库中。如果你需要添加Fedora中已经存在的新依赖关系,只需让我们知道,我们就会将其导入到备份库中。如果该依赖关系不存在于Fedora中,则必须按照已有流程(https://fedoraproject.org/wiki/New_package_process_for_existing_contributors)将新的包添加到Fedora中。

2.创建puppet模块

尽管有多个基于不同框架的OpenStack部署工具,但puppet被不同的工具甚至直接被运营者广泛使用,所以建议你参考Puppet OpenStack指南(https://docs.openstack.org/developer/puppet-openstack-guide/)创建一个puppet模块来部署新服务。一旦puppet模块准备就绪,请遵循RDO新软件包流程(https://www.rdoproject.org/documentation/rdo-packaging/#how-to-add-a-new-puppet-module-to-rdo-trunk)将其打包到资源库中。

3.确保在RDO-CI中测试新服务

如前一篇文章所述,我们在RDO CI中运行多个任务来验证资源库内容。大多数时候,首选的测试方法是将新服务添加到一个puppet-openstack集成场景中,这也是在上游网关中测试puppet模块所推荐的方法。在这个审查(https://review.openstack.org/#/c/429705/)中可以看到一个如何将新服务添加到p-o-i中的例子。

4.在Packstack中添加部署支持

如果你想让RDO用户更轻松地评估新服务,将其添加到Packstack(https://wiki.openstack.org/wiki/Packstack)是一个好主意。 Packstack是一个基于puppet的部署工具,被RDO用户用来部署小型概念验证(PoC)环境,以便在将其部署在生产云中之前评估新的服务或配置。如果你有兴趣,可以看看这两个审查(https://review.openstack.org/#/q/405010+OR+360388),它们在Ocata周期中增加了对Panko和Magnum的支持。

5.将其添加到TripleO

TripleO(https://docs.openstack.org/developer/tripleo-docs/)是一个功能强大的OpenStack管理工具,可以配置和管理云环境,具有如高可用性、扩展的安全性等生产就绪特性。在TripleO中添加对新服务的支持将帮助用户将其用于云部署。TripleO composable roles 教程(https://docs.openstack.org/developer/tripleo-docs/developer/tht_walkthrough/tht_walkthrough.html)可以提供指导

6.为新服务构建容器

Kolla(https://docs.openstack.org/developer/kolla/)是提供通过容器技术运营Openstack云所需的容器映像和部署工具的上游项目。Kolla支持使用二进制方法为CentOS发行版构建映像,这种方法使用RDO中的包。如果你为新服务添加容器,这对使用容器的运营者来说是个好消息。

其他建议

 

遵循OpenStack治理策略

RDO方法和工具是根据OpenStack上游发布模型构建的,因此以下有关发布管理(https://github.com/openstack/releases/blob/master/README.rst)和要求(https://github.com/openstack/requirements/blob/master/README.rst)的策略是维护RDO软件包的重要帮助。创建按照发行团队所定义的分支和版本标签特别重要。

将你的工作在RDO社区广而告之

使潜在用户意识到新服务或其他改进的可用性是一个很好的做法。RDO提供了几种方式来做到这一点:发送邮件到我们的邮件列表(https://www.rdoproject.org/community/mailing-lists/),在博客(https://www.rdoproject.org/blog/)中写一篇文章,在我们的文档中添加参考,创建屏幕截图演示等。你还可以参加RDO周度会议(https://www.rdoproject.org/community/community-meeting/),让我们了解你的工作。

加入RDO Test Days

每个OpenStack发布周期,RDO都会在几个重要节点上组织测试日(https://www.rdoproject.org/testday/)。尽管我们在RDO中进行了持续集成测试,按照文档中的说明测试是否可以部署也是一个好主意。你可以在测试矩阵中提出新的服务或配置,并添加关于如何执行的文档说明的链接。

上游文件

RDO依赖于上游OpenStack安装指南(https://www.rdoproject.org/testday/)的部署说明。建议保持更新。

编译:Jonathan Zhang

作者:Amoralej

来源:https://www.rdoproject.org/blog/2017/03/the-journey-of-a-service-in-rdo/

转载请注明:56CTO » 如何在RDO中添加OpenStack新服务?

喜欢 (0)or分享 (0)

您必须 登录 才能发表评论!

56CTO-为网络技术精英提供专业资料

联系我们