Создание 1 главного узла экземпляра и 2 экземпляров миньонов из теплового шаблона.
Я хочу записать ip-адреса всех экземпляров minion_group в файл ip.txt главного экземпляра.
ip-адреса группы миньоновget from {get_attr: [minion_group, first_address]}
но этот тип возврата не был строкой.
Так что он не может использовать str_replace.
У кого-нибудь есть идеи?
Вот мой шаблон о разделе ресурсов:
resources:
master:
type: OS::Nova::Server
depends_on: minion_group
properties:
flavor: {get_param: master_flavor}
image: {get_param: image}
key_name: {get_param: key}
networks:
- port: {get_param: network}
user_data_format: SOFTWARE_CONFIG
minion_group:
type: OS::Heat::ResourceGroup
properties:
count: 2
resource_def:
type: OS::Nova::Server
properties:
name:
list_join:
- '-'
- [{ get_param: 'OS::stack_name' }, 'minion', '%index%']
flavor: {get_param: minion_flavor}
image: {get_param: image}
key_name: {get_param: key}
networks:
- network: {get_param: network}
get_ip:
type: OS::Heat::SoftwareConfig
properties:
group: script
config:
str_replace:
template: |
#!/bin/bash
echo ${minion_group_ip} > /opt/ip.txt
params:
$minion_group_ip: {get_attr: [minion_group, first_address] }
deployment:
type: OS::Heat::SoftwareDeployment
properties:
signal_transport: HEAT_SIGNAL
config: {get_resource: get_ip}
server: {get_resource: master}