我正在尝试使用HEAT模板自定义在openstack mikata中创建的新实例。使用OS :: Nova :: Server和user_data中的脚本可以正常工作。
接下来的想法是通过OS :: Heat :: SoftwareConfig做额外的步骤。 配置是:
type: OS::Nova::Server
....
user_data_format: SOFTWARE_CONFIG
user_data:
str_replace:
template:
get_file: vm_init1.sh
config1:
type: OS::Heat::SoftwareConfig
depends_on: vm
properties:
group: script
config: |
#!/bin/bash
echo "Running $0 OS::Heat::SoftwareConfig look in /var/tmp/test_script.log" | tee /var/tmp/test_script.log
deploy:
type: OS::Heat::SoftwareDeployment
properties:
config:
get_resource: config1
server:
get_resource: vm
实例安装得很好(上面的脚本vm_init1.sh运行正常),可以登录,但上面的“config1”示例永远不会执行。
分析 - 基本映像是Ubuntu 16.04,使用disk-image-create创建并包含“vm ubuntu os-collect-config os-refresh-config os-apply-config heat-config heat-config-script” - 从“openstack stack资源列表$ vm”可以看到部署永远不会fisnihe,OS :: Heat :: SoftwareDeployment status = CREATE_IN_PROGRESS - “openstack stack resource show $ vm config1”显示resource_status = CREATE_COMPLETE - 在vm中,/ var / log / cloud-init-output.log显示脚本vm_init1.sh的输出,但没有'config1'脚本的跟踪。 log os-apply-config.log是空的,这是正常的吗?
如何对OS :: Heat :: SoftwareDeployment配置进行故障排除?