首页 运维干货如何在Kubernetes中配置基于NFS的持久卷

如何在Kubernetes中配置基于NFS的持久卷

运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai
领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维

建议将Pod的数据放入某个持久卷中,以便即使Pod终止后也可以使用这些数据。在Kubernetes(k8s)中,可以在Pod中使用基于NFS的持久卷。在本文中,我们将学习如何配置持久卷和持久卷声明,然后我们将讨论如何通过k8s pod中的声明名称使用持久卷。

如何在Kubernetes中配置基于NFS的持久卷插图

我假设我们有一个功能正常的k8s集群和NFS Server。以下是实验室设置的详细信息:
– NFS服务器IP = 192.168.1.40
– NFS共享目录 = /opt/k8s-pods/data
– K8s群集 = 一个主节点和两个工作节点

注意: 确保可以从worker节点访问NFS服务器,并尝试在每个worker节点上安装nfs共享以进行测试。

在nfs共享中创建一个index.html文件,因为我们将在本文后面的nginx pod中挂载该共享。

配置基于NFS的PV(永久卷)

要在K8s中创建基于NFS的持久卷,请在主节点上使用以下内容创建yaml文件:

保存并退出文件

如何在Kubernetes中配置基于NFS的持久卷插图(1)

现在使用上面创建的yaml文件创建持久卷,运行:

运行以下kubectl命令以验证持久卷的状态:

以上输出确认PV已成功创建并且可用。

配置持久卷声明

要在Pod内挂载持久卷,我们必须指定其持久卷声明。因此,让我们使用以下YAML文件创建持久卷声明:

保存并退出文件。

如何在Kubernetes中配置基于NFS的持久卷插图(2)

运行下面的kubectl命令以使用上面的yaml文件创建pvc:

执行完上述操作后,控制平面将使用相同的存储类名称查找满足声明要求的持久卷,然后将声明绑定到持久卷,示例如下所示:

以上输出确认声明(nfs-pvc)与持久卷(nfs-pv)绑定。

现在我们准备在pod旁边使用基于nfs的持久卷。

在Pod中使用基于NFS的持久卷

在yaml文件下面创建一个nginx pod,它将在/usr/share/nginx/html上挂载持久卷声明。

保存并关闭文件。

如何在Kubernetes中配置基于NFS的持久卷插图(3)

现在使用上面的yaml文件创建pod,运行:

注意:要获取有关pod的更多详细信息,可使用 kubectl describe pod命令。

以上命令输出确认已成功创建容器。现在尝试使用curl命令访问nginx页面:

完美,上面curl命令的输出确认了持久卷已正确挂载到pod中,因为我们可以获取NFS共享上index.html文件的内容。

作者:Pradeep Kumar 译者:Yue Yong
原文来自:https://www.linuxtechi.com/configure-nfs-persistent-volume-kubernetes

本文链接:http://www.yunweipai.com/38779.html

网友评论comments

发表评论

电子邮件地址不会被公开。

暂无评论

Copyright © 2012-2020 YUNWEIPAI.COM - 运维派
扫二维码
扫二维码
返回顶部