本部分介绍如何检查 Oracle VDI 提供的各种服务的状态;以及如何查看日志文件以进行故障排除。在 Oracle Solaris 平台上,某些服务还在服务管理工具 (Service Management Facility, SMF) 的控制下运行。
Oracle VDI 服务和中心代理在 Common Agent Container (Cacao) 中作为模块运行。如果您遇到任何问题,请检查 Cacao 和模块的状态以及 Oracle VDI 服务的状态。
使用 vda-center status 命令检查 Oracle VDI 中心的状态。此命令可获得 Oracle VDI 中心中各台主机的信息。对于每台主机,将显示主机状态、主机的数据库角色(如果使用嵌入式 MySQL 数据库)和 Oracle VDI 中心服务的状态。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center status
例如:
# /opt/SUNWvda/sbin/vda-center status HOST NAME HOST STATUS SERVICE SERVICE STATUS primary.example.com Up VDI Database Replication Up secondary.example.com Up VDI Database Up 2 host(s) in center.
如果出现问题,请查看日志文件,查找以 com.sun.vda.cluster
开头的消息,请参见第 9.3.2 节 “如何查看 Oracle VDI 日志文件”。
Oracle VDI 事件记录在以下位置中的 Cacao 日志文件中:
Oracle Solaris 平台:/var/cacao/instances/vda/logs/cacao.0
Oracle Linux 平台:/var/opt/sun/cacao2/instances/vda/logs/cacao.0
SEVERE 或 WARNING 级别的日志消息也将转发至 syslog
守护进程。
默认情况下,所有 Oracle VDI 事件均记录在 Cacao 日志文件中。日志文件的默认大小上限为 95 MB。达到该限制后,系统会关闭当前日志文件并创建一个新日志文件。默认情况下,Oracle VDI 保留十个日志文件。您可以更改日志记录级别、日志文件数量和日志文件大小限制。
显示可用日志过滤器级别列表。
以超级用户身份运行以下命令:
# cacaoadm list-filters -l -i vda
在 Linux 平台上,cacaoadm 命令位于 /opt/sun/cacao2/bin
中。
日志记录级别从 SEVERE(显示的详细信息最少)到 FINEST(显示的详细信息最多)。
更改日志记录级别。
以超级用户身份运行以下命令:
# cacaoadm set-filter -p com.sun.vda.service=<log-level>
-i vda
例如,要降低日志记录级别以记录提示性消息:
# cacaoadm set-filter -p com.sun.vda.service=INFO -i vda
例如,要将 Oracle VDI 服务的日志记录级别重置为默认值:
# cacaoadm set-filter -p com.sun.vda.service=ALL -i vda
重新启动 Cacao。
更改日志记录级别后,您必须重新启动 Cacao,更改才能生效。
以超级用户身份运行以下命令:
# cacaoadm stop -f -i vda # cacaoadm start -i vda
停止 Cacao。
以超级用户身份运行以下命令:
# cacaoadm stop -f -i vda
更改 Oracle VDI 保留的日志文件的数量。
以超级用户身份运行以下命令:
# cacaoadm set-param log-file-count=<num>
-i vda
其中,<num>
是要保留的日志文件的数量。默认值为 10。
更改日志文件大小限制。
以超级用户身份运行以下命令:
# cacaoadm set-param log-file-limit=<size>
-i vda
其中,<size>
是日志文件的大小上限(以字节为单位)。默认值为 100000000。允许的最大值为 2147483647。
检查配置更改是否已生效。
以超级用户身份运行以下命令:
# cacaoadm list-params -i vda
重新启动 Cacao。
以超级用户身份运行以下命令:
# cacaoadm start -i vda
通过 Oracle VDI,您可以使用嵌入式 MySQL 数据库,也可以连接至自己的远程 MySQL 数据库。使用 vda-db-status 命令检查任一数据库类型的状态。
以超级用户身份运行以下命令。
# /opt/SUNWvda/sbin/vda-db-status
例如:
# /opt/SUNWvda/sbin/vda-db-status Ip/Hostname Database host Role Status ---------------------------------------------------------------------- primary.example.com Master up secondary.example.com Slave up
如果出现问题,请查看位于 /var/svc/log/application-database-vdadb:default.log
的日志文件。
在 Oracle Solaris 平台上,您还可以使用服务管理工具检查 Oracle VDI 数据库的状态。这只会检查本地主机上数据库的状态,并且仅当您使用嵌入式 MySQL Server 数据库时可用。主数据库在主要主机上运行。从数据库服务在添加至 Oracle VDI 中心的第一台辅助主机中运行。
在主要主机或第一台辅助主机上,以超级用户身份运行以下命令。
# svcs svc:/application/database/vdadb:default
例如:
# svcs svc:/application/database/vdadb:default STATE STIME FMRI online Sep_30 svc:/application/database/vdadb:default
使用 vda-service status 命令显示 Cacao 管理守护进程是否已启用、其进程数量及其正常运行时间。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-service status
例如:
# /opt/SUNWvda/sbin/vda-service status vda instance is ENABLED at system startup. Smf monitoring process: 11761 11762 Uptime: 2 day(s), 23:22
如果出现问题,请查看日志文件,请参见第 9.3.2 节 “如何查看 Oracle VDI 日志文件”。
使用 brokeradm status 命令检查 Oracle VDI RDP 代理程序和代理服务是否正在运行。
以超级用户身份运行以下命令。
# /opt/SUNWvda-rdpb/bin/brokeradm status
例如:
# /opt/SUNWvda-rdpb/bin/brokeradm status broker is running (PID 18204) proxy is running (PID 18223)
如果出现问题,请查看位于 /var/svc/log/application-rdpb-broker:default.log
和 /var/svc/log/application-rdpb-proxy:default.log
的日志文件。
在 Oracle Solaris 平台上,RDP 代理程序和代理服务还在服务管理工具控制下运行。以超级用户身份运行以下命令。
# svcs svc:/application/rdpb-broker:default # svcs svc:/application/rdpb-proxy:default
例如:
# svcs svc:/application/rdpb-broker:default svc:/application/rdpb-proxy:default STATE STIME FMRI online Sep_30 svc:/application/rdpb-broker:default online Sep_30 svc:/application/rdpb-proxy:default
使用 vda-center agent-status 命令检查 Oracle VDI 中心代理是否正在运行(以及运行多长时间)和显示主机的 SSL 证书的 MD5 指纹。
以超级用户身份运行以下命令:
# /opt/SUNWvda/sbin/vda-center agent-status
例如:
# /opt/SUNWvda/sbin/vda-center agent-status Agent is up for 2 day(s), 23:32. MD5 fingerprint is 07:A0:6C:4C:1D:5F:5B:20:A0:2A:FE:EA:1F:DB:B2:24.
如果出现问题,请查看日志文件,查找以 com.sun.vda.cluster
开头的消息,请参见第 9.3.2 节 “如何查看 Oracle VDI 日志文件”。
使用 vda-webserver status 命令检查 Oracle VDI Manager 是否正在运行。
以超级用户身份运行以下命令。
# /opt/SUNWvda/sbin/vda-webserver status
例如:
# /opt/SUNWvda/sbin/vda-webserver status Virtual Desktop Infrastructure Manager is running (pid 18106).
如果出现问题,请查看位于 /var/opt/SUNWvda/log/webserver0.log
的日志文件。
使用 cacaoadm 命令检查 Cacao 和各个 Oracle VDI 模块的状态。在 Oracle Solaris 平台上,Cacao 随操作系统附带。在 Oracle Linux 平台上,Cacao 作为 Oracle VDI 的一部分进行安装。在 Oracle Linux 平台上,cacaoadm 命令位于 /opt/sun/cacao2/bin
中。
当您检查 Cacao 的状态时,该命令会显示 Cacao 管理守护进程是否已启用、与其关联的进程数量及其正常运行时间。
当您检查各个模块的状态时,这些命令会报告关于模块的以下信息:
运行状态:ENABLED
(该模块能够提供服务)或 DISABLED
(该模块不能提供服务)。DISABLED
状态表示 Cacao 已检测到该模块有一个错误,该模块未在运行。
管理状态:LOCKED
(该模块不得提供服务)或UNLOCKED
(该模块必须提供服务)。
可用性状态:除非运行状态设置为 DISABLED
,否则可用性状态为空。如果发生这种情况,这些值可能是 DEPENDENCY
(该模块无法运行,因为它所依赖的其他资源不可用)、OFF_LINE
(需要执行例程操作才能让该模块恢复使用)或 FAILED
(该模块有内部故障,无法运行)。
如果出现问题,请查看日志文件,请参见第 9.3.2 节 “如何查看 Oracle VDI 日志文件”。
以超级用户身份运行以下命令。
# cacaoadm status -i vda
例如:
# cacaoadm status -i vda vda instance is ENABLED at system startup. Smf monitoring process: 11761 11762 Uptime: 2 day(s), 23:22
vda-service status 命令可显示相同的信息,请参见第 9.3.5 节 “如何检查 Oracle VDI 服务的状态”。
或者,使用 Oracle Solaris 服务管理工具。
# svcs svc:/application/management/common-agent-container-1:vda
以超级用户身份运行以下命令。
# cacaoadm status -i vda com.sun.vda.service
例如:
# cacaoadm status -i vda com.sun.vda.service Operational State:ENABLED Administrative State:UNLOCKED Availability Status:[] Module is in good health.
以超级用户身份运行以下命令。
# cacaoadm status -i vda com.sun.vda.center
例如:
# cacaoadm status -i vda com.sun.vda.center Operational State:ENABLED Administrative State:UNLOCKED Availability Status:[] Module is in good health.