创建存储库
您可以使用 xe CLI 创建本地和远程存储库。以下是使用 CLI 在主机上创建存储库的两个基本步骤:
-
使用命令
xe sr-create创建 SR。此命令在存储基板上创建 SR(可能会销毁任何现有数据)。它还会创建 SR API 对象和相应的 PBD 记录,从而使 VM 能够使用存储。成功创建 SR 后,PBD 会自动插入。如果设置了标志
shared=true,则会为资源池中的每个 XenServer 主机创建并插入一个 PBD 记录。
这些步骤的详细信息因所创建的 SR 类型而异。在所有示例中,如果成功,命令 sr-create 将返回所创建 SR 的 UUID。
或者,您可以使用 XenCenter 中的“新建存储库”向导来创建远程存储库 (SR)。该向导将指导您完成配置步骤。有关详细信息,请参阅 XenCenter 文档。
有关如何创建 SR 的示例,请参阅您使用的存储类型的文章:
ISO 库:
基于文件的存储:
基于块的存储:
所有 XenServer SR 类型都支持 VDI 大小调整、快速克隆和快照。基于 LVM SR 类型(本地、iSCSI 或 HBA)的 SR 为快照和隐藏父节点提供精简配置,但不适用于其他磁盘,例如 MCS 每虚拟机增量磁盘。其他 SR 类型(EXT3/EXT4、NFS、GFS2 和 XFS)支持完全精简配置,包括对活动虚拟磁盘的精简配置。
警告:
当 VHD VDI 未连接到 VM 时(例如用于 VDI 快照),它们默认以精简配置方式存储。如果您尝试重新连接 VDI,请确保有足够的磁盘空间可用于 VDI 变为厚配置。VDI 克隆是厚配置的。
XenServer® 不支持任何 SR 类型的 LUN 的外部 SAN 级别快照。
请勿尝试创建目标 LUN 的 LUN ID 大于 255 的 SR。在使用此 LUN 创建 SR 之前,请确保您的目标公开的 LUN ID 小于或等于 255。
如果您在基于文件的 SR 上使用精简配置,请确保监控 SR 上的可用空间。如果 SR 使用率达到 100%,则来自 VM 的后续写入将失败。这些失败的写入可能导致 VM 冻结或崩溃,并可能导致数据损坏。
探测 SR
sr-probe 命令可以通过以下方式使用:
- 识别用于创建 SR 的未知参数
- 返回现有 SR 列表
在这两种情况下,sr-probe 通过指定 SR 类型和该 SR 类型的一个或多个 device-config 参数来工作。如果提供的参数集不完整,sr-probe 命令将返回错误消息,指示缺少参数以及缺少参数的可能选项。当提供完整的参数集时,将返回现有 SR 列表。所有 sr-probe 输出都以 XML 格式返回。
例如,可以通过指定其名称或 IP 地址来探测已知的 iSCSI 目标。将返回目标上可用的 IQN 集:
xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10
Error code: SR_BACKEND_FAILURE_96
Error parameters: , The request is missing or has an incorrect target IQN parameter, \
<?xml version="1.0" ?>
<iscsi-target-iqns>
<TGT>
<Index>
0
</Index>
<IPAddress>
192.168.1.10
</IPAddress>
<TargetIQN>
iqn.192.168.1.10:filer1
</TargetIQN>
</TGT>
</iscsi-target-iqns>
<!--NeedCopy-->
再次探测同一目标并同时指定名称/IP 地址和所需的 IQN,将返回目标/IQN 上可用的 SCSIids (LUN) 集。
xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10 \
device-config:targetIQN=iqn.192.168.1.10:filer1
Error code: SR_BACKEND_FAILURE_107
Error parameters: , The SCSIid parameter is missing or incorrect, \
<?xml version="1.0" ?>
<iscsi-target>
<LUN>
<vendor>
IET
</vendor>
<LUNid>
0
</LUNid>
<size>
42949672960
</size>
<SCSIid>
149455400000000000000000002000000b70200000f000000
</SCSIid>
</LUN>
</iscsi-target>
<!--NeedCopy-->
探测同一目标并提供所有三个参数,将返回 LUN 上存在的 SR 列表(如果有)。
xe sr-probe type=lvmoiscsi device-config:target=192.168.1.10 \
device-config:targetIQN=192.168.1.10:filer1 \
device-config:SCSIid=149455400000000000000000002000000b70200000f000000
<?xml version="1.0" ?>
<SRlist>
<SR>
<UUID>
3f6e1ebd-8687-0315-f9d3-b02ab3adc4a6
</UUID>
<Devlist>
/dev/disk/by-id/scsi-149455400000000000000000002000000b70200000f000000
</Devlist>
</SR>
</SRlist>
<!--NeedCopy-->
可以为每种 SR 类型探测以下参数:
| SR 类型 |
device-config 参数,按依赖关系排序 |
可探测? |
sr-create 所需? |
|---|---|---|---|
lvmoiscsi |
target |
否 | 是 |
chapuser |
否 | 否 | |
chappassword |
否 | 否 | |
targetIQN |
是 | 是 | |
SCSIid |
是 | 是 | |
lvmohba |
SCSIid |
是 | 是 |
nfs |
server |
否 | 是 |
serverpath |
是 | 是 | |
smb |
server |
否 | 是 |
username |
否 | 否 | |
password |
否 | 否 | |
lvm |
device |
否 | 是 |
ext |
device |
否 | 是 |
有关探测 GFS2 SR 的信息,请参阅创建 GFS2 SR。