故障转移使 Oracle VDI 中心可以自动恢复,避免丢失主要主机。仅在 Oracle VDI 中心配置为高可用性时提供故障转移。当您向 Oracle VDI 中心添加第一台辅助主机时,高可用性会自动启用。请参见第 3.1 节 “关于 Oracle VDI 中心和主机”,了解 Oracle VDI 中心配置和高可用性的详细信息。
您可以通过 vda-config 命令向 Oracle VDI 中心添加主机和从中删除主机。有关更多信息,请参见以下内容:
第 3.6 节 “如何在主要主机上配置 Oracle VDI”
第 3.7 节 “如何在辅助主机上配置 Oracle VDI”
第 3.9 节 “如何在主机上重新配置 Oracle VDI”
故障转移会自动进行,由 Oracle VDI 中心中的主要主机故障触发。故障转移过程中,会将包含复制数据库的辅助主机自动提升成为 Oracle VDI 中心中的新主要主机。原始主要主机的连接恢复后,该原始主要主机会被重新配置为辅助主机,并托管复制数据库。
一个 Oracle VDI 中心只能有一个复制数据库,所有其他辅助主机都没有数据库角色。要更改复制主机,请参见第 9.8.1 节 “如何更改复制数据库主机”。如果您使用的是远程数据库,而不是嵌入式 MySQL Server 数据库,则会在 Oracle VDI 外部配置数据库的高可用性。
要在 Oracle VDI 中心中手动更改主要主机,请参见第 9.8.2 节 “如何在 Oracle VDI 中心中更改主要主机”。
Oracle VDI 中心代理是可在 Oracle VDI 主机之间提供安全通信的组件,它能处理自动故障转移以及对 Oracle VDI 中心的其他配置更改。
如果您使用的是嵌入式 MySQL Server 数据库,则 Oracle VDI 中心中的主要主机运行 Oracle VDI 数据库(主数据库)。会将添加至 Oracle VDI 中心的第一台辅助主机配置为托管复制数据库(从数据库)。按照以下步骤更改复制数据库主机。要更改运行主数据库的主机,请参见第 9.8.2 节 “如何在 Oracle VDI 中心中更改主要主机”。
转至“设置“→“VDI 中心“。
转至“数据库“选项卡。
将显示 VDI 中心中的 Oracle VDI 主机列表。
选择 Oracle VDI 主机并单击“激活 VDI 数据库复制“。
将显示一条消息,说明新复制主机已激活。
更改复制主机。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center setprops -p db.replication.host=<host name>
如果您指定空 <host name>
,则将关闭复制和高可用性。
检查更改是否生效。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center status
主要 Oracle VDI 主机可形成 Oracle VDI 中心。更改主要主机后,原始主要主机会被重新配置为辅助主机并托管复制数据库(如果您使用的是嵌入式 MySQL Server 数据库)。要更改复制数据库,请参见第 9.8.1 节 “如何更改复制数据库主机”。按照以下步骤更改主要主机。
更改主要主机。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center setprops -p vda.primary.host=<host name>
检查更改是否生效。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center status
在某些情况下(例如当自动故障转移不成功时),您可能想要手动触发故障转移。要手动触发故障转移,您要在 Oracle VDI 中心中将包含复制数据库的辅助主机更改为主要主机。有关详细信息,请参见第 9.8.2 节 “如何在 Oracle VDI 中心中更改主要主机”。
通常,您可以使用 vda-config 命令向 Oracle VDI 中心添加主机和从中删除主机。但是,如果某个主机无响应,您可能无法使用此命令。在这种情况下,您可以从 Oracle VDI 中心中强制删除该主机。
从 Oracle VDI 中心中删除主机。
在 Oracle VDI 中心中其余任意主机上以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center purge <host name>
检查更改是否生效。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center status
可以通过调整 Oracle VDI 中心的属性来调整自动故障转移行为。下表列出了可用属性及其控制的内容。
特性 | 说明 |
---|---|
| 数据库连接的连接超时设置(以毫秒为单位)。 如果尝试连接 Oracle VDI 数据库的用时超过此超时设置,Oracle VDI 服务会向 Oracle VDI 中心代理报告数据库错误。 默认为 1000 毫秒。 |
| Oracle VDI 中心代理在开始故障转移之前所等待的时间段(以秒为单位)。 Oracle VDI 中心代理会监视来自 Oracle VDI 服务的数据库错误报告。如果这段时间连续报告数据库错误,则数据库被视为发生故障。如果使用的是嵌入式 Oracle VDI 数据库,则会触发故障转移。 默认为 15 秒。 |
| Oracle VDI 中心代理是否自动配置数据库复制。允许的值为 true 或 false。 如果设置为 true,当添加第一台辅助主机或执行故障转移时,会在辅助主机级上自动配置复制数据库。 如果设置为 false,则不会自动配置复制数据库。在管理员手动配置复制数据库主机之前,高可用性一直禁用,请参见第 9.8.1 节 “如何更改复制数据库主机”。这使您可以更好地控制用于复制数据库的主机,但也意味着必须手动配置高可用性。 默认值为 true。 |
配置所需属性。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center setprops -p<key>
=<value>
例如:
# /opt/SUNWvda/sbin/vda-center setprops -p db.failover.timeout=20
检查更改是否生效。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center listprops