通过operator部署在K8S集群上的emqx集群如何保证数据持久化

根据官方提供的文档在阿里云ACK集群上部署了emqx集群。
但是使用过程中发现了一个问题。
emqx operator 2.2.25 部署emqx时会根据yaml文件添加hash信息,导致创建的statesetful和pvc都会带上这个哈希值。
如果我修改了yaml文件,比如升级了镜像的版本。那么这个哈希值就会发生变化,从新apply之后将使用带有新哈希值的pvc。等于数据持久化失效了。
请问如何能解决这个问题?

数据持久化是通过 PVC 实现的,请查看文档:在 EMQX 集群中开启持久化 | EMQX Operator 文档

这个文档我已经看过很多次了。麻烦您再仔细看一下我提的问题。不动yaml确实没问题,但是如果后期做升级修改了镜像版本;或者扩容,加了core或者 Replicant的副本数量。那yaml的hash就变了啊。我重新apply以后他就会创建一个新的pvc去用,用的pvc都不一样了数据还怎么持久化呢?

我也遇到了同样的问题,删除重建后,emqx5.5没有使用原来创建的PVC,而是会新拉起一个,导致数据持久化失效,现在我还能找回持久化的数据,我更想知道怎么恢复它,因为之前没有做backup,所以只有一个原来的/opt/emqx/data下的文件,但是我挂载到emqx容器中,想要使用./bin/emqx ctl data export --dir /old-data/emqx/data命令也无法导出旧数据,有什么办法解决吗,直接将老的数据文件覆盖过去,似乎也不行

我也遇到了同样的问题 @Rory @zhongwencool 请帮忙解答一下