此部分包含以下主题:
您可以自定义启动脚本的自动行为,以便为组件提供自定义功能。
在下列一个文件中定义以下参数:
/etc/sysconfig/applogic_init
组件 Init 配置
如果文件 /etc/sysconfig/applogic_init 存在,APK init 脚本会使用“.”命令将其读取为 shell include 脚本。
重要提示:在检索或应用任何配置数据之前,执行 /etc/sysconfig/applogic_init 文件。 这样,脚本无法依靠任何组件配置文件的存在。 不要使用此文件来执行初始化代码,而只能将其用于以上定义的配置变量。
示例 /etc/sysconfig/applogic_init:
APK_CONFIG_FILES=/etc/httpd/conf.d/myconfig.conf APK_AUTH_KEY_PATH=/root/.ssh/alternate_keys
下列参数可在上述任一脚本中定义:
|
APK_AUTH_KEY_PATH |
存储组件 SSH 访问公钥的位置。 3t comp ssh 命令使用匹配的私钥连接到组件。 默认值是 /root/.ssh。 设置为空字符串的密钥不会存储在任何位置。 |
|
APK_CONFIG_FILES |
要应用组件属性的文件的列表(以空格分隔)。 使用 APK 的组件将使用位于此组件上的 APK_CONFIG_FILES 列表,而不是在 GUI 中指定的列表。 如果组件未使用 APK,这将替换在 GUI 基础架构编辑器的“修改边界”对话框中指定的配置文件列表。 重要提示:如果在现有组件中安装 APK,请在类描述符中验证配置文件。 类描述符位于基础架构编辑器的“修改边界”对话框的“配置文件”选项卡中。 将文件列表传输到组件中的 APK_CONFIG_FILES 设置。 |
|
APK_CONFIG_DNS |
此参数控制系统名称解析器配置的更新。 值:
|
|
APK_HOSTNAME_UPDATE |
将此参数设置为 No 会禁用将主机名或计算机名更改为从组件实例名称衍生出的字符串这一默认行为。 禁用自动的主机名更改对于“虚拟私有或专用服务器”组件可能是合乎需要的,在这种情况下,由组件所有者维护其配置的各个方面,包括主机名。 重要信息! 如果将 APK_HOSTNAME_UPDATE 设置为 Yes(或根本没有设置),主机名更改将触发操作系统的重新启动。 这将在首次启动时发生,或每当组件的实例名更改并重新启动时发生。 因为此重新启动在 APK 报告成功启动之前完成,所以观察到的效果就是组件似乎花了两倍的时间来启动。 如果 APK 触发了重新启动,则将显示一条关于在启动进度详细信息中进入维护模式的消息。 |
|
APK_AUTOMOUNT |
将该参数设置为 No 将禁用驱动器盘符或挂接点的自动分配,如组件类中所指定的那样。 这也会禁用 APK 中的所有卷状态检查。 重要信息! 如果组件配备了 CD-ROM 设备(通过将 ISO 格式化映像分配为自己的虚拟磁盘之一),就必须使用该选项。 APK 自动挂接无法在此组合中工作,并将导致组件启动失败。 |
组件启动后检查
如果文件 /etc/sysconfig/applogic_appliance 或 \aookiguc\config\applogic_appliance 存在,APK late init 脚本会在组件上的其他所有服务都启动后使用“.”命令将其读取为 shell include 脚本。 脚本的返回状态表示该组件将被视为启动成功还是失败。
如果脚本将消息输出至 stderr 并返回错误,则此消息的最后一行将被用作发送至控制器的错误消息。
Web 服务器组件的启动后检查文件示例。 这将验证服务器是否启动并响应 HTTP GET 来跳转到主页:
if ! wget -q -O /dev/null http://localhost/ ; then echo "start failed - web server is not responding" >&2 return 1 fi return 0
避免将 /etc/sysconfig/applogic_appliance 用作启动脚本来启动组件服务。 这将防止您的设置在安装有 APK 的组件之外使用或测试。
重要提示:在 Windows 中,applogic_appliance 启动后检查是在 Windows SCM(service control manager,服务控制管理器)加载所有服务之后启动的,而不是在完成初始化时启动的。 这与 APK 支持的其他平台有所不同。
在 Windows 中,一些服务是由其他服务使用 API 调用启动的,而不是作为显式依存关系启动的。 因此无法简单地以等待自动服务加载完成事件来解释。 任何添加到 /etc/sysconfig/applogic_appliance 文件的“启动检查”代码都必须考虑这一点,并等待自己需要监控的任何服务(防止其尚未初始化)。
|
版权所有 © 2013 CA。
保留所有权利。
|
|