OpenShift v3上的熊猫

时间:2017-09-04 05:27:36

标签: python pandas openshift

现在OpenShift Online V2宣布其服务终止,我希望将我的Python应用程序迁移到OpenShift Online V3,即OpenShift NextGen。 Pandas是一项要求(并在requirements.txt中列出)

对于get pandas installed in v2来说,这已经不是一件容易的事了,但V3不允许在构建过程中进行手动交互(或者它是什么?)。

当我尝试构建我的应用程序时,构建过程会在一小时后停止。 pip已下载并安装requirements.txt的内容,并且正在为所选包运行setup.py。和日志文件是

Running setup.py install for numpy
Running setup.py install for Bottleneck
Running setup.py install for numexpr
Running setup.py install for pandas

然后该过程停止,没有任何错误消息。

有没有人知道如何在OpenShift V3上构建需要pandas的Python应用程序?

1 个答案:

答案 0 :(得分:7)

这将是两件事之一。

编译Pandas是一个巨大的记忆力,可能是因为编译器遇到了一些病态的情况。或者,此时生成的图像的大小超过内部限制,因此用完的磁盘空间不足。

如果是内存,则需要增加分配给构建窗格的内存。默认情况下,在线,这是512Mi。

要增加限制,您需要从Web控制台或使用oc edit的命令行编辑构建配置的YAML / JSON。

对于YAML,您需要添加以下内容:

  resources:
    limits:
      memory: 1Gi

这是设置字段:

$ oc explain bc.spec.resources.limits FIELD: limits <object>

DESCRIPTION:
     Limits describes the maximum amount of compute resources allowed. More
     info: http://kubernetes.io/docs/user-guide/compute-resources/

最大值为1Gi。看起来这个值的增加确实可以让构建完成,而将它增加到768Mi是不够的。

请注意,这会在运行时从compute-resources-timebound的配额中删除内存,因为它在构建期间全部使用它,所以您可能会同时尝试和执行其他操作。

FWIW,本地构建的图像大小,而不是在线,只产生:

172.30.1.1:5000/mysite/osv3test              latest               f323d9b036f6        About an hour ago   910MB

因此,除非事情被清理之前使用的中间空间是一个问题,否则不是问题。

因此增加用于构建的内存似乎就是答案。