【问题标题】:MySQL databases lost upon attempt to use Persistent Volume Claim clone featureMySQL 数据库在尝试使用 Persistent Volume Claim 克隆功能时丢失
【发布时间】:2020-12-23 08:41:48
【问题描述】:

我们正在尝试通过克隆已经运行的 MySQL pod 的 PVC 来创建数据库就绪的 MySQL pod。

用例:我们有一个导入了数据库的暂存环境,并希望根据该数据库结构和数据创建动态环境。这种方法应该可以为我们节省大量的引导时间(下载和导入转储与克隆 PV)。但是,一旦我们让目标 MySQL pod 运行并附加了克隆的 PVC,我们就看不到其中有任何可用的数据库。 MySQL 正常启动,识别/var/lib/mysql/mysql 目录并跳过新的数据库设置,但是数据库不存在。 详情:

  • MySQL 镜像:mysql:5.7
  • 我们使用 InnoDb
  • 我们在克隆之前缩减源 StatefulSet(期望源 MySQL 将所有内容保存到磁盘)
  • PVC 安装为:
    volumeMounts:
      - name: mysql-data
        mountPath: /var/lib/mysql
    

我们缺少什么?

【问题讨论】:

  • 你没有提到,所以我必须问:你确定你的CSI驱动实现了克隆吗? kubernetes-csi.github.io/docs/drivers.html
  • @Matt 显然 EBS CSI 支持克隆,但新的 PVC 是空的。不知道为什么,但根据文档,VolumeSnapshot 具有我们正在寻找的功能

标签: mysql kubernetes persistence kubernetes-pvc


【解决方案1】:

显然,该问题与 AWS EBS CSI 有关。卷克隆似乎不起作用,但 VolumeSnapshot 功能可能会解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-26
    • 1970-01-01
    • 2018-12-25
    • 1970-01-01
    • 2011-07-29
    • 2013-04-12
    • 1970-01-01
    • 2018-05-05
    相关资源
    最近更新 更多