我已经设置了一个裸机集群,并希望为我的应用程序提供不同类型的共享存储,其中之一是我通过goofys挂载到一个pod的s3存储桶,如果是通过NFS导出的。然后,我使用NFS客户端配置器挂载共享,以便自动为pod提供卷。
抛开性能注释不谈,问题是nfs客户端配置器通过节点的操作系统挂载NFS共享,因此当我将服务器名称设置为NFS pod时,此名称将传递给节点,它无法挂载,因为它没有到服务/pod的路由。
到目前为止,惟一的解决方案是将服务配置为NodePort,在节点上阻止通过ufw的外部连接,并将客户端供应器配置为连接到127.0.0.1:nodeport。
我想知道有没有办法让节点使用集群服务的dns名称访问该服务?
发布于 2019-11-13 01:39:14
我已经设法解决了我的问题,通过配置NFS client provisioner来使用服务的clusterIP而不是dns名称,因为节点无法将其解析为IP,但它确实有到IP的路由。由于IP将保持分配状态,除非我删除服务,这是可伸缩的,但当然不能轻易实现自动化,因为重新部署nfs服务器帮助图表将更改服务的IP。
发布于 2019-11-13 13:21:59
我建议您在外部dns服务器上为NFS服务ip配置一个域名,然后将您的节点指向该域名以访问NFS服务。对于NFS服务的集群ip,您可以将该ip固定在您的helm图表中,并使用自定义的值文件。
https://stackoverflow.com/questions/58806155
复制相似问题