【问题标题】:Using Kubernetes Persistent Volume for Data Protection使用 Kubernetes 持久卷进行数据保护
【发布时间】:2018-09-25 14:04:55
【问题描述】:

要解决我们在使用 docker 时遇到的一些问题并运行某些服务的多个实例,我们需要能够在同一 docker 映像的运行实例之间共享值。我发现的原始解决方案是在 Azure 中创建一个存储帐户(我们在其中运行容纳容器的 kubernetes 实例)和 Azure 中的 Key Vault,通过微软为数据保护提供的明确定义的 API 访问两者(详细 @ 987654321@).

我们的架构师希望使用 Kubernetes Persitsent Volumes,但他没有提供有关如何实现此目的的信息(他只是想通过没有额外的存储帐户或密钥存储来节省 azure 订阅的费用)。我对 kubernetes 很陌生,不知道如何实现这一点,到目前为止,我的搜索并没有太大的用处。

是否有应该用于持久卷的扩展方法?这是否就像共享文件位置一样,并且可以通过用于数据保护的 PersistKeysToFileSystem API 访问?您可以指出我的任何资源将不胜感激。

【问题讨论】:

    标签: asp.net-core kubernetes data-protection


    【解决方案1】:

    Azure 中带有 Kubernetes 的 PersistentVolume 不会为您提供与 Azure 中的 Key Vault 完全相同的功能。

    永久卷:

    • 本地存储在服务器上已安装的卷上
    • 卷可以加密
    • 音量随吊舱移动。
      • 如果 pod 在不同的服务器上启动,则卷会移动。
    • 从其他 pod 访问卷并不容易。
    • 您可以通过将有保证的 IOP 分配给卷(来自云提供商)来控制性能

    密钥库:

    • 将密钥存储在由 Azure 管理的集中位置
    • 数据在静态和传输中被加密。
    • 您依赖远程 API 而不是本地文件系统。
    • 转到外部服务可能会影响性能
      • 我认为这不是 Azure 中的主要问题。
    • Kubernetes pod 可以从任何地方访问该服务,只要它们与该服务有网络连接。
    • 维护时间更少,因为它已经由 Azure 维护。

    【讨论】:

    • 感谢您的分析。我正在将此信息发送到我的管理链。看起来这种“节省成本的措施”将使公司的资本化人力成本高于它节省的 Azure 订阅成本。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-09
    • 1970-01-01
    • 1970-01-01
    • 2019-08-26
    • 2021-08-27
    相关资源
    最近更新 更多