繁体   English   中英

如何将 docker 卷传输到 azure 中的 kubernetes 卷?

[英]How to transfer docker volumes to kubernetes volumes in azure?

我正在尝试在我的一个应用程序上应用 kubernetes,我的应用程序正在使用 docker 卷并将数据保存在那里。 当我在该应用程序上应用 kubernetes 时,它显然不会保存 docker 卷中的任何数据,它只需要 kubernetes 卷,事实是,我的数据位于 docker 卷中,我需要将其传输到 kubernetes 卷,并且所有这些都在 azure 中运行,并且由于 kubernetes 与 azure 接口,我认为应该有一种方法可以自动执行此操作,但我找不到如何做到这一点。

如果有人能帮助解决这个问题,我将不胜感激。

要将docker卷中的数据传输到Azure Kubernetes卷,我能想到的方法是将docker卷中的数据传输到Azure文件共享,然后将文件共享挂载到Kubernetes卷。

最好的方法是将 Azure 文件共享挂载到一开始 docker 服务器所在的机器上,然后在挂载路径中创建卷并在 docker 中为您的应用程序使用这些卷。 在 Azure Kubernetes 中部署应用程序时,将文件共享装载到其卷。

我认为 Azure Kubernetes 中没有自动将数据从 docker 卷传输到 AKS 卷的接口。

当我在该应用程序上应用 kubernetes 时,它显然不会从 docker 卷中保存任何数据,它只需要 kubernetes 卷。

这并不完全正确,正如@Charles Xu 提到的那样,只要您的 Docker 容器使用“Azure 文件存储”支持的卷,您就可以无缝安装相同的数据卷(Azure 文件存储)作为 Azure Kubernetes 服务中的持久性卷(一个AKS支持的两种数据存储类型)。

考虑到您当前正在本地运行 Docker 容器,可以使用Docker Volume Driver for Azure File Storage开始将数据推送到 Azure( 在此处查看演示),或者对于Azure 中的 Swarm Cluster使用Cloudstor

根据 kubernetes 文档: https ://kubernetes.io/docs/concepts/storage/volumes/

Docker volumesKubernetes volumes不同且工作方式不同。

当您创建 PVC 或为您动态创建它时,将其挂载到您的 pod 中并使用以下命令将数据复制到其中:

kubectl cp

您的应用程序将自动开始在卷中存储数据。

Docker 卷只是磁盘上的目录,您不能简单地将它们映射到 Kubernetes 卷

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM