【发布时间】:2019-06-05 13:55:00
【问题描述】:
假设我有一个秘密文件,我希望 docker 容器可以访问该文件,该容器在 kubernetes 集群的 pod 中运行。随着时间的推移,将在集群上创建许多这样的新 pod,它们都将需要访问该文件。那么我该怎么做呢?
我正在考虑创建一个 kubernetes 卷,将该秘密文件存储到该卷中,并使容器可以访问该卷。但我不知道该怎么做,在 Kubernetes 中可用的这么多卷类型中,该使用哪一种?
【问题讨论】:
假设我有一个秘密文件,我希望 docker 容器可以访问该文件,该容器在 kubernetes 集群的 pod 中运行。随着时间的推移,将在集群上创建许多这样的新 pod,它们都将需要访问该文件。那么我该怎么做呢?
我正在考虑创建一个 kubernetes 卷,将该秘密文件存储到该卷中,并使容器可以访问该卷。但我不知道该怎么做,在 Kubernetes 中可用的这么多卷类型中,该使用哪一种?
【问题讨论】:
根据您的秘密文件有多大,您应该考虑将其放入Kubernetes Secret。在许多安装中,存储层对机密的处理方式不同(例如,静态加密),而如果您使用卷,则需要自己添加任何额外的保护。
如果您的文件太大而无法放入密钥中并且您正在 GKE 上运行(您可能基于问题标签),那么 GCEPersistentDisk 将是一个很好的卷类型。 GCE PD 的一个巧妙之处在于它们“可以同时被多个消费者以只读方式安装”——因此您可以将您的秘密数据预先填充到磁盘上,然后将其(只读)安装到所有需要访问数据。
【讨论】: