16 挂接网络储存

16.1 储存伺服器启用NFS

** 启用TrueNAS NFS共用**
  在开源软体世界中,TrueNAS是一款许多人爱用的选择,它不仅开源而且提供容易使用的管理界面。
  TrueNAS是由过去的FreeNAS更名而来,TrueNAS CORE维持FreeBSD核心,TrueNAS SCALE则是采用Linux核心的移植版本,本章将以TrueNAS SCALE介面作为范例。

  1. 在TrueNAS SCALE管理界面中,进入【系统设定】后选择【服务】,在清单中将NFS后面的【Running】栏位切换为【启用】,而【Start Automatically】请勾选,以让它下次开机也能自动启用。
  2. 切换至【Share】共用功能里,新增一个【NFS】共用,选择好要共用的路径后,在下方需要设定授权连线的装置来源。若我们要让整个【192.168.1.0/24】的装置都可以连接这个NFS使用,则在下方的【Add network】按下【新增】按钮,再填入【192.168.1.0】,后方下拉选择【24】,再按下【储存】按钮。

** 新增NFS储存连接**
  当储存服务器端的NFS共用已经准备完成,我们可以经由Proxmox VE管理介面上的简单操作,将这些NFS共用挂接起来使用。

  1. 在资源检视区中选择【资料中心】,切换至【储存】页签,按下【增加】按钮,再选择【NFS】选项。
  2. 【ID】栏位可以输入这个储存伺服器的名称,例如:【nas111】;【伺服器】栏位输入这个储存伺服器的IP地址,例如:【192.168.1.146】。
      在【export】栏位按一下下拉清单,它会抓取储存伺服器上已经有建立且开放的NFS共用资料夹,请直接选取即可。
      在【内容】栏位,是选取这个要挂接进来的NFS共用资料夹里面要让PVE存放的类型,它可以包括以下的项目:
  • 磁碟映像:用来存放客体虚拟机的虚拟磁碟,支援QCOW2、VMDK、RAW等三种。
  • ISO映像:用来存放虚拟光碟映像档,安装虚拟机系统时会用到。
  • 容器范本:用来存放容器范本,安装容器系统时会用到。
  • VZDump备份档案:用来存放备份档。
  • 容器:用来存放客体容器的虚拟磁碟,仅支援RAW一种。
  • 程式码片段:存放Hookscript使用,用来达成客体机启动前/后、停止前后执行特定指令。
      因此,可以依据需要存放的类型来选择。
  1. 当新增完成后,可以在储存清单中看到多了一笔刚才设定好的【nas111】,左方的资源检视区也可以发现多了一笔【nas111(host-106)】的项目。
  2. 选取至资源检视区中的【nas111(host-106)】。

16.3 备份客体机至NFS网路储存

  当我们有了外部储存伺服器可以使用后,才能做到真正意义上的【备份】(放在异机的那一份)。

  1. 选取要制作备份的客体机,切换至【备份】页签,在右方的【储存】下拉清单选取储存伺服器,例如:【nas111】,再按下【立即备份】。
  2. 在备份前的选项视窗中,可以看到【储存】栏位已经变更为刚刚所选取的【nas111】,其他项目确认无误后,再按下【备份】按钮。
  3. 备份作业完成以后,可以在备份清单中看到已经制作完成的备份档案。
  4. 当我们来到备份储存器上查看,确实也看见备份档已经存在这里面了。

16.4 使用NFS网路储存上的ISO映像档

  既然我们有了一个专门用来存放档案的共用储存区,平时就可以将所需的ISO映像档都搜集整理存放在此,当要给PVE客体机使用时,就可以很方便从中挑选,不需要上传,也不必占用PVE节点的储存空间。
  要使用时,跟先前客体机挂接ISO映像档的操作流程一致,只要先将【储存】选取为NFS网路储存的【nas111】即可。

16.5 Windows伺服器启用CIFS共用

  除了采用NFS共用之外,如果是Windows伺服器或者其他NAS主机,也提供相容微软的通用网路档案系统CIFS(Common Internet File System),PVE可以直接取用挂接,大大提升更多现有装置的使用性。

  1. 请到Windows主机上建立一个要共用的资料夹后,点选右键并选择【内容】,再切换至【共用】页签,按下【共用】按钮。
  2. 进入到选择共用对象的书面,请选取要开放给哪一个帐号,再按下【共用】按钮。
  3. 完成后,若要查看这部主机上还有哪些共用的资料夹,可以进入【电脑管理】应用程式,占选【共用资料夹】,再选取【共用】,即可在右边检视。

16.6 新增CIFS储存连接

  当伺服器端的CIFS共用已经准备完成,我们可以经由PVE管理介面上的简单操作,将这些CIFS共用挂接起来使用。

  1. 在资源检视区中选择【资料中心】,切换至【储存】页签,按下【增加】按钮,再选择【CIFS】选项。
  2. 【ID】栏位可以输入这个储存伺服器的名称,例如:【winsrv1-cifs】;【伺服器】栏位输入这个储存伺服器的IP地址,例如:【192.168.1.238】,并在【帐号名称】与【密码】栏位输入可以取用这个资料夹内容的帐号与密码。
      在【share】栏位按一下下拉清单,它会抓取储存伺服器上已经有建立且开放的CIFS共用资料夹,请直接选取即可。
      在【内容】栏位,是选取这个要挂接进来的CIFS共用资料夹里面要让PVE存放的类型。
      若这个共用资料夹的帐号是提供给AD网域使用者,则需要在网域栏位填入网域名称。
  3. 当新增完成后,可以在储存清单中看到多了一笔刚才设定好的【winsvr1-cifs】,左方的资源检视区也可以发现多了一笔【winsvr-cifs(host-106)】的项目。

16.7 储存伺服器启用iSCSI

  绝大多数的网路储存伺服器都已经内建支援iSCSI通讯协定,相较于NFS通讯协定而言,iSCSI是属于Block等级的储存,而NFS采用的是File等级储存。
  Block等级储存的好处是没有档案系统的转换损失,因此效能较NFS来得高,但其没有像File等级储存一样,具备档案系统来直接读写档案,所以在应用方面会受限,例如:Block等级储存无法用来放置PVE的VZDump备份档、ISO映像档。

** 启用TrueNAS iSCSI共用**

  1. 进入【系统设定】,弹出第二层选单点选【服务】,将iSCSI后方的【Running】切换为【启动】,再将【Start Automatically】勾选,让它下次开机自动启动。
  2. 接着点选最后方的【编辑】按钮,进入iSCSI的相关初始设定,这些设页签(包括Portals、目标、Extents、Associated Targets等项目)均须正确设定,方可让PVE使用。

** 启用Sysnology iSCSI共用**

  1. 登入【Sysnology DSM】管理界面后,启动【SAN Manager】应用程式,切换至【LUN】页签,并确认已经建立了LUN。
  2. 在SAN Manager应用程式里切换至【iSCSI】页签,并确认已有建立好可用的【iSCSI Target】,并且状态显示为【良好】。

16.8 新增iSCSI储存连接

  当储存伺服器端的iSCSI共用已经准备完成,我们可以经由Proxmox VE管理界面上的简单操作将这些iSCSI共用挂接起来使用。

  1. 在资源检视区中选择【资料中心】,切换至【储存】页签,按下【增加】按钮,再选择【iSCSI】选项。
  2. 【ID】栏位中填入容易识别的名称,例如:【nas111-iscsi】;【Portal】栏位填入储存伺服器的IP地址,例如:【192.168.1.146】。在【Target】栏位点选下拉清单,若储存伺服器iSCSI设定正确,此处会显示可用的Target有哪些。当设定无误后,再按下【增加】按钮。
  3. 当新增完成后,可以在储存清单中看到多了一笔刚才设定好的【nas111-iscsi】,左方的资源检视区也可以发现多了一笔【nas111-iscsi(host-106)】的项目。
  4. 选取至资源检视区的【nas111-iscsi(host-106)】,可以查看这个新挂接进来的网路储存伺服器的相关状况,主要是:
  • 启用:在Proxmox VE有设定可挂接至这个储存伺服器。
  • 运作中:在PVE目前可以正常连接,并挂接至这个NFS共用资料夹。
  • 内容:在iSCSI中只能使用磁碟映像类型,用于虚拟机,不适用于容器。
  • 类别:显示所使用的通讯协定。
    对于iSCSI储存,不会在此显示使用的容量。
  1. 切换至【VM磁碟】页签,可以在右方看到一个LUN,它就是我们在储存伺服器上建立对应的LUN储存区。

16.9 建立客体机置于iSCSI网路储存

  前面提到iSCSI只能用来存放磁碟映像,也就是说只能当作客体虚拟机的虚拟磁碟使用,那么我们就直接以建立虚拟机的方式来使用iSCSI网路储存。

  1. 依照前几章的虚拟机建立教学,来到客体虚拟机建立引导程序的第四步【硬碟】页签,点选【储存】下拉清单,即可多出【nas111-iscsi】可以选取。
  2. 接着点选【磁碟映像】下拉清单,会显示这个iSCSI挂接的网路储存伺服器上可以选用的LUN。
  3. 建立虚拟机完成后即可用来开机,并且在【硬体】页签中看到其磁碟存放在【nas111-iscsi】之上。
  4. 当第一台虚拟机建立好后,第二台虚拟机建立时,同样要把磁碟放置在iSCSI网路储存上,但却会发生【在虚拟机的建立引导程序中,可以选取同样的iSCSI网路储存以及同样的磁碟映像】的问题。

** 客体机建立于iSCSI磁碟问题**

  但是当第二台虚拟机启动后,却发现进去后里面经有安装好的系统,而且系统名称是先前建立在iSCSI的第一台虚拟机【vm-iscsi-test1】。
  这明确表示两台所使用到的的同一个LUN其实是同一个磁碟,因此如果要经由iSCSI给多个虚拟机使用,必须在储存伺服器上分别建立不同的LUN,等于是建立不同的磁碟,届时给PVE在建立虚拟机时选用。

16.10 新增iSCSI+LVM储存连接

  依据前一小节使用结果所示,如果每个虚拟机的磁碟都要到储存伺服器上先建好iSCSILUN,再回头在PVE依据对应的LUN ID填入,这种操作方法会死人啊!
  在PVE上提供了另一种iSCSI使用方式,搭配LVM运用,即可以解决这个问题。

  1. 先到储存伺服器上,将原本的LUN移除,重新建立一个新的LUN,以准备给PVE使用,将Target、LUN ID等设定都保持与先前一样。
  2. 接着,请在资源检视区中选取【资料中心】,切换至【储存】页签,点选我们先前建立的【nas111-iscsi】两下,以进入编辑。
  3. 请将【直接使用LUNs】核取方块勾选,再按下【完成】按钮。
  4. 接着请点选【新增】,选取【LVM】项目。
  5. 进入增加LVM选项视窗后,在ID栏位中输入名称,例如:【nas111-iscsi-lvm】,在【基础储存】点选下拉清单,会带出可以选用的项目,请点选【nas111-iscsi(iSCSI)】这个项目,它就是我们稍早所建立的iSCSI储存。
  6. 在【基础磁区】点选下拉清单,它会带出这个iSCSI网路储存上已有的LUN,请选取【CH 00 ID 0 LUN 1】。
  7. 在磁区群组里给予名称,例如:【nas111-vg1】,表示它是我们在【nas111】这台储存伺服器上建的第一个磁区群组。
  8. 当设定都确认无误后,按下【新增】按钮,可以在储存清单看到多出了【nas111-iscsi-lvm】项目,左方也多出了【nas111-iscsi-lvm】。
  9. 选取资源检视区中的【nas111-iscsi-lvm(host-106)】,可以查看这个刚刚挂接进来的网路储存伺服器的相关状况。

16.11 建立客体机置于iSCSI+LVM网路储存

  1. 在iSCSI+LVM的储存建立客体机程序与iSCSI相同,在第四步【硬碟】的【储存】中选取iSCSI上的LVM,例如:【nas111-iscsi-lvm】。
  2. 当建立完成以后,在资源检视区选取【nas111-iscsi-lvm(host-106)】,切换至【VM磁碟】,可以看到每一个客体机分别产生各自的虚拟磁碟,即可避免先前建立iSCSI储存时因为使用整个LUN的关系,造成所有客体机都是对应到同一个磁碟而带来的问题。