Spinnaker 自定义云驱动程序

Spinnaker custom clouddriver

我正在尝试使用 Spinnaker 将应用程序部署到 Mesos/Marathon。由于这个云驱动不存在,我正在考虑自己编码。

我查看了 spinnaker-clouddriver,并试图从 azure、cf 和 google 中获得灵感。但我想我错过了一些关于我应该如何工作的信息。

你知道任何关于为 spinnaker-clouddriver 做贡献的文档吗?或者有人可以向我解释创建自定义驱动程序的步骤吗?

谢谢。

到目前为止我创建了:

@Component
class MarathonCloudProvider implements CloudProvider

@Component
class MarathonApplicationProvider implements ApplicationProvider 

但是我真的不明白这里放什么。

Kubernetes 有一个很好的提交流 (https://github.com/spinnaker/clouddriver/pulls?utf8=%E2%9C%93&q=kubernetes),您可以将其作为示例。

这是介绍云提供商的初始 PR - https://github.com/spinnaker/clouddriver/pull/214/files

从那里开始,您将需要实施所有操作和描述以适应这一点。

基本上,要创建一个新的云提供商,您需要执行以下操作:

  1. 弄清楚如何将云提供商中的概念映射到服务器组、安全组、负载均衡器和作业的 Spinnaker 概念。一些云供应商不会有这个,但你至少会有一个你想要索引的服务器组的概念。

  2. 实施缓存代理和提供程序以获得基础架构的内部缓存。您可以在此处将现有基础设施映射到大三角帆概念。

  3. 实施云操作(例如部署、启用/禁用)。

  4. 提供一个UI.

添加一个新的云提供商并不是一件小事,我不建议将其作为一项单独的任务。