我运行了一个gcloud Kubernetes集群和一个Google存储桶,其中包含我想在集群上运行的一些数据。
为了使用存储桶中的数据,我需要在节点上安装gcsfs
。如何使用gcloud,kubectl等在集群上安装这样的软件包?
答案 0 :(得分: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
答案 1 :(得分:0)
我不知道VonC给出的建议是否真的有用,但我所知道的是你不是真的应该把东西安装到Kubernetes Engine的工作节点上。 This is evident因为它既没有包管理器,也没有允许单独更新单个程序。
容器优化的操作系统不支持传统的包管理器(...)这种设计可以防止更新根文件系统中的各个软件包而不依赖于其他包。
话说回来,您可以通过startup scripts自定义节点池的工作节点,如果该节点池的节点数是静态的。 These still work as intended,但由于您无法编辑节点池使用的实例模板,因此您必须手动将这些模板编辑到实例中。所以,这显然不是一种非常好的做事方式。
最后,工作节点有一个叫"Toolbox"的东西,它基本上是一个特殊的容器,你可以运行它来访问调试工具。这个容器直接在Docker上运行,它不是由Kubernetes安排的。您可以自定义此容器图像,以便添加一些额外的工具。