【问题标题】:How do you install Python libraries on gcloud kubernetes nodes?如何在 gcloud kubernetes 节点上安装 Python 库?
【发布时间】:2018-09-15 23:50:14
【问题描述】:

我有一个 gcloud Kubernetes 集群正在运行,还有一个 Google 存储桶,其中包含一些我想在集群上运行的数据。

为了使用存储桶中的数据,我需要在节点上安装gcsfs。如何使用 gcloud、kubectl 等在集群上安装这样的包?

【问题讨论】:

    标签: kubernetes google-compute-engine


    【解决方案1】:

    检查“Launch development cluster on Google Cloud Platform with Kubernetes and Helm”之类的食谱是否有帮助。

    使用Helm,您可以使用additional pip packages定义工人:

    worker:
      replicas: 8
      limits:
        cpu: 2
        memory: 7500000000
      pipPackages: >-
        git+https://github.com/gcsfs/gcsfs.git
        git+https://github.com/xarray/xarray.git
      condaPackages: >-
        -c conda-forge 
        zarr
        blosc
    

    【讨论】:

      【解决方案2】:

      我不知道 VonC 给出的建议是否真的有效,但我所知道的是,您真的不应该将东西安装到 Kubernetes Engine 的工作节点上。 This is evident 因为它既没有包管理器也不允许单独更新单个程序。

      Container-Optimized OS 不支持传统的包管理器(...)这种设计可以防止更新根文件系统中的单个软件包,而不依赖于其他包。

      话虽如此,您可以通过startup scripts 为该节点池自定义节点池的工作节点如果节点数是静态的These still work as intended,但由于您无法编辑节点池正在使用的实例模板,因此您必须手动将它们编辑到实例中。再说一遍,这显然不是一个很好的做事方式。

      最后,工作节点有一个叫做"Toolbox" 的东西,它基本上是一个特殊的容器,您可以运行它来访问调试工具。这个容器直接在 Docker 上运行,它不是由 Kubernetes 调度的。您可以自定义此容器映像,以便向其中添加一些额外的工具。

      【讨论】:

        猜你喜欢
        • 2023-03-08
        • 2020-01-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-20
        • 1970-01-01
        • 2022-08-17
        • 1970-01-01
        相关资源
        最近更新 更多