Linux Virtual Delivery Agent

监视服务守护程序

监视服务 ctxmonitord 是一个守护程序,用于监视 Linux VDA 的运行状况。它包含三个模块:

  • 主要进程监视模块:此模块委派 Systemd 在出现意外故障时自动重新启动关键服务,定期扫描和记录目标进程的状态,并确保及时清理 Xorg 残留项。日志存储在 /var/log/xdl/ms.log 中。
  • XDPing 集成模块:此模块定期执行 xDPing 分析和备份任务。这些任务的所有输出都可以在 /var/log/xdl/msxdping.log 中找到。
  • Linux VDA 自我更新模块:有关详细信息,请参阅通过 Azure 进行的 Linux VDA 自我更新

配置

默认情况下,当您启动 VDA 时,监视服务 ctxmonitord 会自动启动。使用管理员权限,你可以通过 /etc/xdl/ctxmonitord.conf 和 /etc/xdl/whitelist.conf 对其进行配置。

ctxmonitord.conf

此配置文件指定了监视服务 ctxmonitord 及其模块的行为。默认情况下,它配置如下:

     ; This is the configuration file for ctxmonitord service  


; Section 'service' configures the key process monitor module
[service]
MonitorEnable=true     ; true or false
DetectInterval=300      ; in seconds, minimum is 60

; Section 'xdping' configures the XDPing integration module
[xdping]
XdpingEnable=true      ; true or false
AnalysisInterval=600    ; in seconds, minimum is 60, 0 means disable
BackupInterval=1        ; in days, 0 means disable

; Section 'rules' configures the rules about how to monitor each key process
; Each rule should be named as rules.<ProcessName> where <ProcessName> is the name of the process to be monitored
; 'ProcessName' should be the name of the target process that is picked up from whitelist.conf
; 'MonitorType' should be 'HealthCheck' or 'ResidueCleanup'. All 'MonitorType' should be 'HealthCheck' except for 'Xorg'
[rules]
[rules.ctxhdx]
ProcessName=ctxhdx
MonitorType=HealthCheck

[rules.ctxvda]
ProcessName=ctxvda
MonitorType=HealthCheck

[rules.ctxjproxy]
ProcessName=ctxjproxy
MonitorType=HealthCheck

[rules.ctxpolicyd]
ProcessName=ctxjproxy
MonitorType=HealthCheck

[rules.ctxlogd]
ProcessName=ctxlogd
MonitorType=HealthCheck

[rules.xorg]
ProcessName=Xorg
MonitorType=ResidueCleanup
<!--NeedCopy-->

whitelist.conf

此配置文件指定要监视的目标进程的白名单。whitelist.conf 文件中还必须列出 ctxmonitord.conf 文件中指定的目标服务。默认情况下,它配置如下:

ctxhdx
ctxvda
ctxjproxy
ctxlogd
ctxcdm
ctxcups
ctxpolicyd
ctxusbsd
ctxceip
ctxsdcd
ctxrunatboot
ctxgdtd
ctxbcrd
ctxfidod
ctxpfwd
ctxwcamsd
ctxcertmgr
ctxscardsd  # Except for SLES
ctxfedsd    # Only for RHEL 8/9
Xorg
<!--NeedCopy-->

注意:

  • 要使您对 ctxmonitord.conf 和 whitelist.conf 文件所做的更改生效,请运行 systemctl restart ctxmonitord 命令来重新启动监视服务守护程序。

  • 要配置服务在出现意外故障时如何重新启动,请编辑 /usr/lib/systemd/system/ctx*.service 文件。例如,下面是默认的重新启动选项:

     Restart=on-failure
     RestartSec=5
     StartLimitInterval=60
     StartLimitBurst=3
     <!--NeedCopy-->
    
监视服务守护程序