具有永久磁盘的Kubernetes GKE

时间:2018-07-31 14:47:56

标签: jenkins kubernetes unreal-engine4 google-kubernetes-engine

我正在尝试以可扩展的方式设置CI。 当前,我们在GCE上拥有Windows Server VM,Jenkins会不时在其上运行作业。

但是,随着我们添加更多工作,我们希望拥有一个可扩展的系统。

尽管有一些限制:

  • 从Perforce(p4)为引擎(自定义UE4引擎)同步的数据很多。然后建造它(花了一段时间)。很少更新。
  • 我们的产品从p4同步了很多数据。当前,每次构建时,我们都执行一个新的p4 sync以仅检索自上次以来的增量(需要几秒钟)。而且我们有一个永久磁盘。检索完整数据将花费45分钟-1小时(不计算丢失的带宽)。

因此,我们正在尝试使用GKE。我们需要某种方式:

  • 每晚(大约),p4 sync编译机器并在其中包含最新数据的情况下从中创建“图像”。
  • 让GKE使用该新创建的图像。
  • 开始工作时,让其使用该图像创建一个容器。其中将包含最多24小时的数据。
  • 此容器将p4 sync白天发生的变化,执行需要执行的任何操作,然后消失在深渊中。不管生成的数据是什么,都是瞬时的,不会影响其他容器。
  • 如果多个作业并行运行,则它们不会在同一位置读取/写入。

所以,这是大图。可能会有更好的主意。

现在,我不确定是否:

  • 这是可行的
  • 如何解决(如果可行)

此致

塞缪尔

1 个答案:

答案 0 :(得分:0)

关于图像的更新,可以将Build Trigger功能用于在将更改推送到构建源之后构建图像。请记住,Cloud Build仅支持Cloud Source Repository,GitHub或Bitbucket。不幸的是,我可以找到用于GKE构建系统的Perforce插件。

这里有几篇有关詹金斯和Github的文章; article1article2,用于自动图像构建。