我正在使用 6.7 设置新的 vSphere 环境。我已经构建了第一台 ESX 服务器,需要连接到 NFS 挂载以用作数据存储。NFS 共享位于以集群模式 9.1 运行的 NetApp 上。我们有一个其他人设置的现有 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。
我一直在阅读很多东西,但似乎找不到解决方案或进一步的故障排除。
任何援助将不胜感激。
修复了问题。问题是当我创建vmkernel端口时,没有列出IP Storage服务,所以我尝试了Provisioning IP stack。那没有用,因为它不正确。因此,ESXi 在管理接口上发送了 NFS 请求,而不是我为 NFS 指定的 vmkernel,并且网络中的某些东西实际路由了它。因此,NetApp 看到了来自不同 IP 的请求,而不是允许的导出。
因此,对于 ESX 6.7,设置 vmkernel 端口的正确方法是将其放在与管理分开的标准交换机上(我最初做这部分是正确的)并将 vmkernel 端口设置为默认 TCP/IP 堆栈,并且不要选择任何服务。