Hypervisor对主存储的支持
下表显示了针对不同Hypervisors的存储选项和参数。
主存储类型 | vSphere | XenServer | KVM | Hyper-V |
---|---|---|---|---|
磁盘、模板和快照的格式 | VMDK | VHD | QCOW2 | VHD |
支持iSCSI | VMFS | CLVM | 支持,通过Shared Mountpoint | 不支持 |
支持FC | VMFS | 支持,通过已有的SR | 支持,通过Shared Mountpoint | 不支持 |
支持NFS | 支持 | 支持 | 支持 | 不支持 |
支持本地存储 | 支持 | 支持 | 支持 | 支持 |
存储超配 | NFS 和 iSCSI | NFS | NFS | 不支持 |
SMB/CIFS | 不支持 | 不支持 | 不支持 | 支持 |
XenServer通过在iSCSI和FC卷上使用集群LVM系统来存储VM镜像,并且不支持存储超配。尽管存储本身支持自动精简配置。不过CloudStack仍然支持在有自动精简配置的存储卷上使用存储超配。
KVM支持 “Shared Mountpoint”存储。Shared Mountpoint是群集中每个服务器本地文件系统中的一个路径。群集所有主机中的该路径必须一致,比如/mnt/primary1。并假设Shared Mountpoint是一个集群文件系统如OCFS2。在这种情况下,CloudStack不会把它当做NFS存储去尝试挂载或卸载。CloudStack需要管理员确保该存储是可用的。
在NFS存储中,CloudStack管理超配。这种情况下,使用全局配置参数storage.overprovisioning.factor来控制超配的范围。且不受hyperviso类型约束。
在vSphere, XenServer和KVM中,本地存储是一个可选项。当选择了使用本地存储,所有主机会自动创建本地存储池。想要系统虚拟机 (例如虚拟路由器)使用本地存储,请设置全局配置参数system.vm.use.local.storage为true.
CloudStack支持在一个群集内有多个主存储池。比如,使用2个NFS服务器提供主存储。或原有的1个iSCSI LUN达到一定容量时再添加第二个iSCSI LUN。