如何在VMWare vCenter环境下实现共享存储

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在VMWare vCenter环境下实现共享存储相关的知识,希望对你有一定的参考价值。

vCenter的web配置,一般根据vCenter那台虚拟机里的一堆英文显示步骤来配就好了, 都配置好了以后,通过vSphere,登到vCenter上去,而不是原来的ESXi! 参考技术A 目标
实现共享存储

架构图

通过VMWare vCenter创建两个虚拟机,VM1(iportal),VM2(supermap_iportal810_ubuntu14.04_ESXI5.1),两个机器分别有一块本地磁盘,当然,我们可以再往VM1添加一个新的本地磁盘,但是如果我们什么都默认设置,该本次磁盘只能添加到一个虚拟机对象,而不能再挂载到两一个新的虚拟机对象,所以,如果我们希望实现共享存储,我们可以进行如下操作。

一、为VM1添加一个新的磁盘对象

在添加该磁盘,我们需要注意:
1、尽量该磁盘文件不要与虚拟机存储在同一路径下
2、磁盘设置为:“后置备置零”设置

a、厚置备延迟置零:
默认的创建格式,创建过程中为虚拟磁盘分配所需空间。创建时不会擦除物理设备上保留的任何数据,没有置零操作,当有IO操作时,需要等待清零操作完成后才能完成IO,
即:分配好空间,执行写操作时才会按需要将其置零。

b、厚置备置零(thick):
创建支持群集功能的厚磁盘。在创建时为虚拟磁盘分配所需的空间。并将物理设备上保留的数据置零。创建这种格式的磁盘所需的时间可能会比创建其他类型的磁盘长。
即:分配好空间并置零操作,有IO的时无需等待任何操作直接执行。

c、精简置备(thin):
精简配置就是无论磁盘分配多大,实际占用存储大小是现在使用的大小,即用多少算多少。当客户机有输入输出的时候,VMkernel首先分配需要的空间并进行清零操作,也就是说如果使用精简配置在有IO的时候需要:等待分配空间和清零,这两个步骤完成后才能进行操作,对于IO叫频繁的应用这样性能会有所下降,虽然节省了存储空间。

3、磁盘设置的通道与本地磁盘不在同一个通道上

默认添加的磁盘通道为SCSI(0:1),如上图所示,我们新添加的磁盘不在同一个通道上,所以我们选择(1:x)即可
4、磁盘设置为“独立”模式,设置为持久选项。

以上说明,在新添加的磁盘向导中都可以进行选择。

二、添加磁盘完毕之后,我们可以看到,选择主页——清单——数据存储和数据存储群集,默认我们的虚拟机存储在datastore1,我新添加的共享磁盘,存储在new2,我们可以选择“浏览此数据存储”查看物理文件信息

三、选择VM1(iportal )虚拟机,下载*.vmx文件
默认的信息包括:
[html] view plain copy print?
.encoding = "UTF-8"
config.version = "8"
virtualHW.version = "9"
nvram = "iportal.nvram"
pciBridge0.present = "TRUE"
svga.present = "TRUE"
pciBridge4.present = "TRUE"
pciBridge4.virtualDev = "pcieRootPort"
pciBridge4.functions = "8"
pciBridge5.present = "TRUE"
pciBridge5.virtualDev = "pcieRootPort"
pciBridge5.functions = "8"
pciBridge6.present = "TRUE"
pciBridge6.virtualDev = "pcieRootPort"
pciBridge6.functions = "8"
pciBridge7.present = "TRUE"
pciBridge7.virtualDev = "pcieRootPort"
pciBridge7.functions = "8"
vmci0.present = "TRUE"
hpet0.present = "TRUE"
floppy0.present = "FALSE"
memSize = "1024"
powerType.suspend = "soft"
usb.present = "TRUE"
ehci.present = "TRUE"
scsi0.virtualDev = "lsilogic"
scsi0.present = "TRUE"
ide1:0.startConnected = "FALSE"
ide1:0.deviceType = "atapi-cdrom"
ide1:0.fileName = "CD/DVD drive 0"
ide1:0.present = "TRUE"
mks.enable3d = "TRUE"
ethernet0.virtualDev = "e1000"
ethernet0.networkName = "VM Network"
ethernet0.addressType = "vpx"
ethernet0.generatedAddress = "00:50:56:bb:e3:b0"
ethernet0.wakeOnPcktRcv = "FALSE"
ethernet0.present = "TRUE"
scsi0:0.deviceType = "scsi-hardDisk"
scsi0:0.fileName = "iportal.vmdk"
scsi0:0.present = "TRUE"
displayName = "iportal"
guestOS = "ubuntu-64"
vcpu.hotadd = "TRUE"
mem.hotadd = "TRUE"
toolScripts.afterPowerOn = "TRUE"
toolScripts.afterResume = "TRUE"
toolScripts.beforeSuspend = "TRUE"
toolScripts.beforePowerOff = "TRUE"
tools.syncTime = "FALSE"
uuid.bios = "42 3b 45 6c e8 da 22 f5-b0 e8 60 c1 20 ef 00 f2"
vc.uuid = "50 3b 25 4e e2 26 44 89-f6 1b ba 14 06 23 8c 30"
scsi1.virtualDev = "lsilogic"
scsi1.present = "TRUE"
scsi1:0.deviceType = "scsi-hardDisk"
scsi1:0.fileName = "/vmfs/volumes/57eb5af7-f11fc744-5809-000c29dd753b/iportal/iportal.vmdk"
scsi1:0.mode = "independent-persistent"
scsi1:0.present = "TRUE"
scsi1.sharedBus ="virtual"
sched.scsi0:2.shares = "normal"
sched.scsi0:2.throughputCap = "off"

我们需要添加对共享磁盘的信息
[html] view plain copy print?
disk.locking="false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize ="0"
diskLib.DataCacheMinReadAheadSize ="0"
diskLib.dataCachePageSize ="4096"
diskLib.maxUnsyncedWrites = "0"

四、同理,我们找到VM2的物理存储,将*.vmx下载,添加以上相关信息,由于VM2并没有添加新的磁盘,需要共享VM1上的新磁盘,所以,VM2需要添加如下信息:
[html] view plain copy print?
scsi1.virtualDev = "lsilogic"
scsi1.present = "TRUE"
scsi1:0.deviceType = "scsi-hardDisk"
scsi1:0.fileName = "/vmfs/volumes/57eb5af7-f11fc744-5809-000c29dd753b/iportal/iportal.vmdk"
scsi1:0.mode = "independent-persistent"
scsi1:0.present = "TRUE"
scsi1.sharedBus ="virtual"
sched.scsi0:2.shares = "normal"
sched.scsi0:2.throughputCap = "off"
disk.locking="false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize ="0"
diskLib.DataCacheMinReadAheadSize ="0"
diskLib.dataCachePageSize ="4096"
diskLib.maxUnsyncedWrites = "0"

五、将两个vmx文件分别上传到相应的虚拟机文件里面

六、虽然VM2,没有手动添加新磁盘,但是经过修改后的vmx文件可以查看到VM2已经添加了共享磁盘的信息

七、在VM1启动之后,我们可以将新磁盘进行分区,建立文件系统,Mount操作,创建一个文件测试,VM2可以直接mount查看新创建的文件。

可能出现的错误:
如果新添加的磁盘通道未选择正确,可能出现,VM1启动成功,但是VM2启动报如下错误:
打开虚拟机 supermap_iportal810_ubuntu14.04_ESXi5.1 的电源时,会收到来自 ESX 主机的错误。
无法启动虚拟机。
模块 Disk 打开电源失败。
无法打开磁盘“/vmfs/volumes/57eb5af7-f11fc744-5809-000c29dd753b/iportal/iportal.vmdk”或其所依赖的快照磁盘之一。
未能锁定文件

在实际测试过程中,我发现,当我在VM1更新文件时,VM2并不能实时看到更新信息,需要重新umount和mount的操作才能看到。

如果VM2发现不了共享磁盘,建议重启OS。

VMware vCenter 6.0 安装及群集配置介绍

一、介绍

VMware vCenter Server 提供了一个可伸缩、可扩展的平台,为虚拟化管理奠定了基础。可集中管理VMware vSphere环境,与其他管理平台相比,极大地提高了 IT 管理员对虚拟环境的控制。

VMware vCenter Server:提高在虚拟基础架构每个级别上的集中控制和可见性,通过主动管理发挥 vSphere 潜能,是一个具有广泛合作伙伴体系支持的可伸缩、可扩展平台。

无论您拥有十几个虚拟机,还是几千个虚拟机,VMware vCenter Server 都是管理 VMware vSphere 最简单、最有效的方法。借助 VMware vCenter Server,可从单个控制台统一管理数据中心的所有主机和虚拟机,该控制台聚合了集群、主机和虚拟机的性能监控功能。 VMware vCenter Server 使管理员能够从一个位置深入了解虚拟基础架构的集群、主机、虚拟机、存储、客户操作系统和其他关键组件等所有信息。

借助VMware vCenter Server,虚拟化环境变得更易于管理,一个管理员就能管理 100 个以上的工作负载,在管理物理基础架构方面的工作效率比通常情况提高了一倍。

二、准备

准备环境和工具:

  1. 三台 ESXi 6.0主机;
  2. 准备一台Windows Server 2008 R2系统的虚拟机;
  3. VMware-VIM-all-6.0.0.iso

软件下载地址 链接: https://pan.baidu.com/s/1hVH4yXhSQ4xYMqGIXWjNIQ 密码: id1j

三、安装过程

1、首先把磁盘插入到虚拟光驱里面。

技术分享图片

2、双击安装程序

技术分享图片

3、按照默认单击”下一步” 即可;(如下图)

技术分享图片

4、勾选”我接受许可协议条款”,并单击”下一步”;(如下图)

技术分享图片

5、默认嵌入式部署,单击”下一步”(如有购买外部数据库license,即可根据企业情况和需求安装)

技术分享图片

6、部署需注意”系统名称”的输入,部署后系统名称无法更改,系统名称确认后,单击”下一步”;

技术分享图片

7、输入vCenterServer密码,并单击”下一步”;

技术分享图片

8、按照默认使用windows 本地系统账户单击 ”下一步” 即可;

技术分享图片

9、默认”使用嵌入式数据库”安装即可(如有购买外部数据库license,即可根据企业情况和需求安装)

技术分享图片

10、列出了vCenter运行所需的所有端口号,保持默认即可,单击“下一步”;

技术分享图片

11、安装路径建议不要修改,保持默认路径即可,单击“下一步”;

技术分享图片

12、列出了以上设置的所有参数,确认无误后,单击“安装”;

技术分享图片

13、安装过程;

技术分享图片

14、安装完成;

技术分享图片

三、集群配置

1、登录 https://10.0.0.31/

技术分享图片

技术分享图片

2、单击”主机和群集”;

技术分享图片

3、新建数据中心;

技术分享图片

技术分享图片

4、右击数据中心“vCenter-wzlinux”,在弹出菜单单击“新建群集”;

技术分享图片

5、命名vCenter群集:vCenter-wzlinux,打开”DRS和vSphere HA高级功能,并单击”确定”;

技术分享图片

DRS:收集群集内所有主机和虚拟机的资源使用情况信息,并根据特定的运行状况给出建议或迁移虚拟机
HA:如果一台主机出现故障,则该主机上运行的所有虚拟机都将立即在同一群集的其他主机上重新启动
EVC:增强型vMotion
Virtual SAN:集中管理x86服务器的内部磁盘与闪存设备,实现虚拟机共享存储

6、左击群集,单击”添加主机”;

技术分享图片

7、"名称和位置";添加一台ESXi6.0主机,可输入主机名或ip,输入完成后单击”下一步”;

技术分享图片

8、"连接设置";请输入ESXi6.0主机的用户名和密码,单击”下一步”;

技术分享图片

9、"主机摘要";我们可以看到ip为:10.0.0.13 ESXi主机的基本信息,分别为:主机名称、供应商、型号、ESXi主机版本、虚拟机台数情况,继续单击‘下一步‘;

技术分享图片

10、"分配许可证";继续单击‘下一步‘ ;

技术分享图片

11、"锁定模式";可按照默认,单击"下一步" 即可;

技术分享图片

12、"资源池";可保持默认继续单击 "下一步";

技术分享图片

13、"即将完成" 配置后,此步骤显示了该主机的基本信息情况;单击"完成" 即可。

技术分享图片

四、配置 vCenter 用户;

1、默认的用户可能不方便记忆,我们自己创建一个用户,首先用户需要在系统里面创建;

技术分享图片

2、右击 vCenter ,"添加权限"。

技术分享图片

技术分享图片

技术分享图片

这里的演示都是通过 vSphere Client。

以上是关于如何在VMWare vCenter环境下实现共享存储的主要内容,如果未能解决你的问题,请参考以下文章

虚拟化Vmware之安装部署vCenter

VMware HAFTVADPSRMvMotion

vmware飘移是哪一种高可用方式

VMware Vsphere 6.0安装部署 vCenter Server的配置与管理

vmware集群共享存储几台服务

分布式集群环境下,如何实现session共享三(环境搭建)