本节介绍此发行版 Oracle VM Server for SPARC 软件中常见的已知问题,这些问题比具有特定错误号的问题广泛。如果有解决方法,则会提供。
Oracle VM Server for SPARC 3.0 软件无意中公开了将多个虚拟交换机分配给一个网络适配器的功能。此功能仅供 Oracle VM Manager 软件通过特定的方式使用。
Oracle VM Server for SPARC 3.1 软件已恢复原始行为,即阻止您向一个网络适配器分配多个虚拟交换机。但是,如果已将 Oracle VM Server for SPARC 3.0 系统配置为将多个虚拟交换机分配给一个网络适配器,则升级至 Oracle VM Server for SPARC 3.2 后,ldmd 守护进程不会启动。
解决方法:执行以下步骤:
在 Oracle VM Server for SPARC 3.2 系统上暂时重新启用此功能以允许 ldmd 守护进程启动。
# svccfg -s ldoms/ldmd setprop ldmd/ovm_manager=true # svcadm refresh ldmd # svcadm disable ldmd # svcadm enable ldmd
将您的配置更新为只向一个网络设备分配一个虚拟交换机。
在 Oracle VM Server for SPARC 3.2 系统上禁用此功能。
# svccfg -s ldoms/ldmd setprop ldmd/ovm_manager=false # svcadm refresh ldmd # svcadm disable ldmd # svcadm enable ldmd
请务必将 ovm_manager 属性设置为 false,因为此属性可能会在将来的 Oracle VM Server for SPARC 发行版中产生其他负面影响。
如果服务域运行的是低于 Oracle Solaris 10 1/13 OS 的 Oracle Solaris 10 OS 版本,而且将物理磁盘分片作为虚拟磁盘导出到来宾域,则该虚拟磁盘将以不正确的设备 ID 出现在来宾域中。如果随后将该服务域升级到 Oracle Solaris 10 1/13 OS,作为虚拟磁盘导出的物理磁盘分片将以不带设备 ID 的形式出现在来宾域中。
这种删除虚拟磁盘设备 ID 的方式可能会导致尝试引用虚拟磁盘设备 ID 的应用程序出现问题。特别是,Solaris Volume Manager 可能无法找到其配置或者无法访问其元设备。
解决方法:将服务域升级到 Oracle Solaris 10 1/13 OS 之后,如果来宾域找不到其 Solaris Volume Manager 配置或其元设备,请执行以下过程。
md_devid_destroy=1; md_keep_repl_state=1;
在来宾域引导之后,Solaris Volume Manager 配置和元设备应当会可用。
在重新引导期间,您将看到类似如下的消息:
NOTICE: mddb: unable to get devid for 'vdc', 0x10
这些消息是正常的,不报告任何问题。
以前,Oracle Solaris OS 安装在一个配置有 SMI VTOC 磁盘标签的引导磁盘上。从 Oracle Solaris 11.1 OS 开始,默认情况下 OS 均安装在配置有可扩展固件接口 (Extensible Firmware Interface, EFI) GUID 分区表 (GUID partition table, GPT) 磁盘标签的引导磁盘上。如果固件不支持 EFI,则会为磁盘配置 SMI VTOC 磁盘标签。此情况仅适用于至少运行系统固件版本 8.4.0 的 SPARC T4 服务器,至少运行系统固件版本 9.1.0 的 SPARC T5、SPARC M5、SPARC M6 服务器,以及至少运行 XCP 版本 2230 的 Fujitsu M10 服务器。
以下服务器无法通过配置有 EFI GPT 磁盘标签的磁盘进行引导:
UltraSPARC T2、UltraSPARC T2 Plus 和 SPARC T3 服务器(无论使用哪个系统固件版本)
运行 8.4.0 之前的系统固件版本的 SPARC T4 服务器
运行 9.1.0 之前的系统固件版本的 SPARC T5、SPARC M5 和 SPARC M6 服务器
运行的 XCP 版本早于 2230 的 Fujitsu M10 服务器
因此,在最新的 SPARC T4、SPARC T5、SPARC M5、SPARC M6、Fujitsu M10 服务器上创建的 Oracle Solaris 11.1 引导磁盘无法在早期版本的服务器上或运行早期固件版本的服务器上使用。
此限制使得无法使用冷迁移或实时迁移将域从最新版本的服务器移至早期版本的服务器,同样也无法在早期版本的服务器上使用 EFI GPT 引导磁盘映像。
要确定 Oracle Solaris 11.1 引导磁盘是否与您的服务器及其固件兼容,请确保 Oracle Solaris 11.1 OS 安装在配置有 SMI VTOC 磁盘标签的磁盘上。
要与运行早期固件版本的系统保持向后兼容,请使用以下过程之一。否则,默认情况下引导磁盘将使用 EFI GPT 磁盘标签。以下过程显示了在系统固件版本至少为 8.4.0 的 SPARC T4 服务器上以及系统固件版本至少为 9.1.0 的 SPARC T5、SPARC M5 或 SPARC M6 服务器上和 XCP 版本至少为 2230 的 Fujitsu M10 服务器上,如何确保 Oracle Solaris 11.1 OS 安装在配置有 SMI VTOC 磁盘标签的引导磁盘中。
解决方法 1:删除 gpt 属性,以便固件不会报告其支持 EFI。
在 OpenBoot PROM 提示符下,禁用自动引导并重置要安装的系统。
ok setenv auto-boot? false ok reset-all
系统重置完成后,将返回到 ok 提示符下。
更改到 /packages/disk-label 目录并删除 gpt 属性。
ok cd /packages/disk-label ok " gpt" delete-property
开始 Oracle Solaris 11.1 OS 安装。
例如,执行网络安装:
ok boot net - install
解决方法 2:使用 format -e 命令在要安装 Oracle Solaris 11.1 OS 的磁盘上写入 SMI VTOC 标签。
在磁盘上写入 SMI VTOC 标签。
例如,选择 label 选项并指定 SMI 标签:
# format -e c1d0 format> label [0] SMI Label [1] EFI Label Specify Label type[1]: 0
配置磁盘,使用分片 0 和分片 2 覆盖整个磁盘。
该磁盘不应有其他任何分区。例如:
format> partition partition> print Current partition table (unnamed): Total disk cylinders available: 14087 + 2 (reserved cylinders) Part Tag Flag Cylinders Size Blocks 0 root wm 0 - 14086 136.71GB (14087/0/0) 286698624 1 unassigned wu 0 0 (0/0/0) 0 2 backup wu 0 - 14086 136.71GB (14087/0/0) 286698624 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0
重新写入 SMI VTOC 磁盘标签。
partition> label [0] SMI Label [1] EFI Label Specify Label type[0]: 0 Ready to label disk, continue? y
配置 Oracle Solaris Automatic Installer (AI) 以便在引导磁盘的分片 0 上安装 Oracle Solaris OS。
将 AI 清单中的 <disk> 摘录更改为如下内容:
<target> <disk whole_disk="true"> <disk_keyword key="boot_disk"/> <slice name="0" in_zpool="rpool"/> </disk> [...] </target>
执行 Oracle Solaris 11.1 OS 安装。
由于 Oracle Solaris OS 处理用于管理动态添加的内存的元数据所使用的方法,以后,您可能只能删除以前动态添加的整个内存块,而非该内存的合适子集。
内存较小的域动态增长到大得多的时候,可能会出现这种情况,如以下示例所示:
primary# ldm list ldom1 NAME STATE FLAGS CONS VCPU MEMORY UTIL UPTIME ldom1 active -n-- 5000 2 2G 0.4% 23h primary# ldm add-mem 16G ldom1 primary# ldm rm-mem 8G ldom1 Memory removal failed because all of the memory is in use. primary# ldm rm-mem 16G ldom1 primary# ldm list ldom1 NAME STATE FLAGS CONS VCPU MEMORY UTIL UPTIME ldom1 active -n-- 5000 2 2G 0.4% 23h
解决方法:使用 ldm add-mem 命令按顺序以较小的块(而非大于您将来可能要删除的块)来添加内存。
恢复:执行以下操作之一:
停止域、删除内存,然后重新启动域。
重新引导域,该操作会使 Oracle Solaris OS 重新分配其内存管理元数据,以便现在能够以较小的块动态删除之前添加的内存。