VMware虚拟化 - 建设篇
第三章 vCenter6.7挂载Windows Server2016 NFS41存储
系列文章回顾
第一章 部署vCenter6.7和vSphere群集功能
第二章 vCenter6.7的管理网络使用vDS+LACP
下章内容
前言
由于整合了几台ESXi
主机,使用了vCenter
虚拟化平台,准备在vCenter
虚拟化平台上使用共享存储NFS
技术。
-
虚拟化平台:
VMware VSCA 6.7.0.52000
-
ESXi底层:
VMware VMvisor 6.7.0
-
Windows服务器:
Windows Server 2016 DataCenter
-
NFS版本:
NFS 4.1 (Kerberos凭证)
搭建好vCenter
之后发现每台ESXi
主机的数据存储都是独立分开的,在不同的主机上新建虚拟机时,得确保每台ESXi
主机的数据存储都得有ISO
镜像,才方便挂载上去安装系统,相当于无形中给存储加了负担(虽然这几个G不算什么),但还是得研究一下解决方案才行。
个人用的vCenter
肯定是破解版,也不打算使用注册机去破解vSAN
来使用存储虚拟化 (担心注册机有后门)。所以就考虑了外置存储,如iSCSI
、NFS
、LUN
等等方式,最终确定了使用NFS
存储来解决这个问题。
前置条件
Windows Server 2016
要部署AD
域控服务、DNS
服务。ESXi
要加入vCenter
集中管理。
vCenter配置流程1
ESXi主机加域,配置NFS Kerberos凭证
vCenter
里所有ESXi
主机都要加入域控。
vCenter
里所有ESXi
主机都得有NFS Kerberos
凭证。
NFS Kerberos
凭证的用户名最好是跟ESXi
的DNS名称保持一致。(NFS存储配置权限需要按IP或DNS名称配置)
Windows Server2016配置流程
域控新增Kerberos映射用户,新增安全组
用户登录名跟ESXi
主机的DNS名称保持一致。
用户密码跟NFS Kerberos
凭证的密码保持一致。
用户基础配置如上。
新增一个安全组,用于统一配置ESXi
主机用户的权限。
这里把ESXi
主机加域后的计算机和用户都加进去。
为了把ESXi
主机从域控用户组里抽离出来,防止域用户滥用这个用户账号去登录加域的PC,把用户的主要组设置成新建的安全组Unix mapping
。
配置映射关系(可选)
- NFS 3 协议下必填的映射关系
ESXi
的底层是Unix
,使用的超管账号是root
,跟Windows
的Administrator
是不一样的底层逻辑关系,如果是配置NFS 3
的话就需要给administrator
用户修改映射属性,将root
的UID
、GID
、LoginShell
等属性映射过来,做NFS 3
的匿名认证时就会调用到administrator
用户相应的属性了。
需要调整的属性 key-value 如下:
uidNumber # UID
gidNumber # GID
UnixHomeDirectory # home目录
loginShell # 登录shell
msSFU30Name # 映射用户名
msSFU30NisDomain # Nis映射标识源:域名
eg:
uidNumber = 0
gidNumber = 0
UnixHomeDirectory = /home/administrator
loginShell = /bin/sh
msSFU30Name = root
msSFU30NisDomain = domain.com
root权限的UID
和GID
都是0
而Windows Server
部署的NFS
提供的匿名用户初始的UID
和GID
都是-2
,这个是要改的, 如果用了NFS 3
协议发现在子目录下没有写权限,多半是没有把UID
和GID
写到0
导致的。
- NFS 4.1 协议下映射关系可填可不填
在NFS 4.1
协议下,做到上述步骤(域控新建Kerberos
映射用户)后已经可以用NFS
存储了,NFS 4.1
协议使用用户映射的概念,把ESXi
主机用户映射成域控映射用户,再调用域控映射用户的权限去访问NFS
存储,此时NFS
存储的权限和文件夹的NTFS
权限都是用的域控映射用户的权限做验证。所以不需要给映射过来的域控映射用户再加映射属性了,此配置可选。
按Windows
的逻辑给域控映射用户增删改查权限即可。
DNS服务添加ESXi主机的A记录
DNS服务添加ESXi
主机的A记录。
本地防火墙放通NFS协议端口
NFS
协议默认运行的端口是TCP/UDP 2049
,需要给Windows Server
的本地防火墙添加入站规则,放通2049
端口
NFS配置流程
安装NFS服务端
勾选NFS服务器
(提供NFS
协议),勾选文件服务器资源管理器
(提供Kerberos
认证)
配置NFS存储
使用NFS
高级选项,会有管理属性和配额的可选配置
填写共享名称,NFS
的远程路径从 / 开始。
NFS 4.1
协议就用Kerberos v5
的身份验证或身份验证和完整性
NFS 3
协议就用无服务器身份验证的未映射的用户访问(通过UID/GID)或匿名访问
配置NFS
的共享权限,主机是填写ESXi
主机的DNS名称或IP地址,语言编码填GB2312-80
可以识别中文,给读/写权限和允许根目录访问(不允许根目录访问可能会导致NFS
挂载失败)
NTFS
文件夹权限配置添加新增的unix mapping
安全组,该组的成员是所有的ESXi
主机计算机和用户。
管理权限和配额可选。
NFS配置标识映射源
从 管理工具里找到 Network File System 服务(NFS)
,选中NFS
服务,配置标识映射源,填写域名。
vCenter配置流程2
挂载NFS 4.1存储
上述操作做完就可以在vCenter
里给ESXi主机添加NFS 4.1
的存储了,其中一台ESXi
主机添加NFS
存储,其他ESXi
主机的NFS
存储都使用当前NFS
存储的【将数据存储挂载至其他主机】选项挂载到其他主机上即可。
数据存储名称是建立在ESXi
上的存储名称
文件夹从 / 开始填写
服务器只填写IP地址或DNS名称,DNS后缀可选添加
NFS
远程路径以 服务器名称:文件夹 的形式访问
综上,大功告成。
注意事项
NFS
的共享权限要允许根目录访问ESXi
的DNS名称、NFS Kerberos
凭证用户、域控映射用户这三者最好保持名称一致,但也可以不一致,只要域控映射用户跟NFS Kerberos
凭证用户是一样的即可,DNS名称可以另填。Windows Server
系列操作系统从Windows Server 2012
开始就不再支持Administrator
用户的UNIX Attributes
选项了,所以Windows Server 2016
的配置要在属性编辑器里修改。