我正在使用 6.7 设置新的 vSphere 环境。我已经构建了第一个 ESX 服务器,需要连接到 NFS 挂载以用作数据存储。NFS 共享位于以集群模式运行的 NetApp 9.1 上。我们有一个现有的 vSphere 6.0 环境,由其他人设置,它也使用相同的 NetApp 作为 NFS 数据存储。
我在 netapp 中创建了一个新卷,创建了一个新的导出策略,向导出策略添加了一条规则,允许客户端 IP(在本例中为 ESX)、Unix 样式权限,并授予其读/写和超级用户访问权限。我检查了 vCenter 的现有导出策略,它看起来是一样的。从 ESX 命令行,我可以 ping netapp NFS 接口(vmkping 192.168.XX,零数据包丢失)。当我尝试创建 NFS 共享时,它失败并显示“NFS 服务器拒绝访问”。
从 NetApp 命令行,我尝试了以下 check-access -vserver -volume -client-ip 192.168.XX -auth none -proto nfs3 -access-type read-write 这表示访问被拒绝,但当我检查已知有效的导出时,它也表示被拒绝。将身份验证类型更改为“sys”会显示允许正确访问的策略。我找不到在 ESX 端更改身份验证类型的方法。
同样,我尝试从 NetApp ping 到 ESX,但没有响应。我关闭了 esx 上的防火墙,但它仍然没有响应。我可以从 netapp ping 到其他已知的工作 nfs IP。
我已经阅读了很多东西但似乎找不到解决方案或进一步的故障排除。
任何援助将不胜感激。
答案1
问题已解决。问题是,当我创建 vmkernel 端口时,IP 存储服务未列出,因此我尝试了 Provisioning IP 堆栈。这不起作用,因为它不正确。因此,ESXi 在管理接口上发送了 NFS 请求,而不是我为 NFS 指定的 vmkernel,并且网络中的某些东西实际上对其进行了路由。因此,NetApp 看到的请求来自与导出允许的 IP 不同的 IP。
因此对于 ESX 6.7,设置 vmkernel 端口的正确方法是将其放在与管理分开的标准交换机上(我最初正确地完成了这部分)并将 vmkernel 端口设置为默认 TCP/IP 堆栈并且不选择任何服务。