我知道 Pod 中的容器可以通过共享内存相互共享数据。但是,我还没有找到在 Pod 之间使用共享内存的方法。
通过在 Pod 安全策略中启用 HostIPC 是否可以实现?
当然,我知道出于安全原因不建议采用这种设置。
答案1
hostIPC: true
是的,您可以通过在 Pod 安全策略中设置来使用共享内存:
hostIPC
- 使用主机的 ipc 命名空间。可选:默认为 false。
请注意,您不能将 2 个独立的 Pod(未分配在同一节点上的 Pod)IPC 空间链接在一起,但任何hostIPC
Pod 都可以与任何其他hostIPC
Pod 使用共享内存。
您可以使用以下命令确保 Pod 被一起调度节点选择器或者亲和性和反亲和性。
请记住,您还需要使用适当的卷类型。例如,emptydir
不起作用,但主机路径可以使用。
我知道您提到了这一点,但我需要强调一个事实,即通过使用,hostIPC
您可以访问任何使用主机的 IPC 命名空间的 pod 使用的数据,这会带来严重的安全风险。这里就是一些例子。