Red Hat Training

A Red Hat training course is available for Red Hat Virtualization

A.2. VDSM Hook

VDSM 可以通过 hook 进行扩展。hook 就是一些脚本程序,当特定事件发生时,这些 hook 将会在主机上运行。VDSM 会按主机上的 /usr/libexec/vdsm/hooks/nn_event-name/ 中的文件名的顺序执行其中可执行的 hook 脚本。每个 hook 脚本都会被分配给一个两位数的数字添加到文件名的前面,这样就可以清楚地知道这些 hook 脚本运行的顺序。在本章中所包括的实例使用 Python,但您可以使用任何编程语言来创建 hook 脚本。
请注意,在主机上为某个事件所定义的所有 hook 脚本都会被执行。如果您的某个 hook 只需要在主机上的某些虚拟机上运行,您需要在您的 hook 脚本中通过检查虚拟机的自定义属性(Custom Properties) 来实现。

警告

VDSM 脚本有影响到 Red Hat Virtualization 正常操作的可能。如果您的 VDSM hook 中有 bug,就有可能导致虚拟机出现错误并丢失数据。因此,在使用 VDSM hook 前,请对它们进行全面的测试。另外,hook API 还是一个新的技术,它们可能会在以后有较大的变化。