Revision history [back]

click to hide/show revision 1
initial version

Heat update - replaced or not?

Hello, I would like to know, if theres way to tell, which resources will be replaced when running stack update. Mostly interested in knowing behaviour of Nova::server.

For testing ive created stack with 2 vms and immediately ran stack update

 $ openstack stack update -e devci1-env.yaml --wait -t prod_ci/sandbox/tonda_test.yaml tonda_test --timeout 3600 --os-project-id d7ab62d3c3f1415ab99b2d2cb9a8de19 --show-nested --dry-run
+-----------+----------------------------------------------------------------------------------------------------------------+
| Field     | Value                                                                                                          |
+-----------+----------------------------------------------------------------------------------------------------------------+
| added     | []                                                                                                             |
| deleted   | []                                                                                                             |
| replaced  | [                                                                                                              |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "server_with_volume",                                                                     |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Nova::Server",                                                                       |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/server_with_volume"                                                                  |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1",                                                                    |
|           |     "required_by": [                                                                                           |
|           |       "wait_condition"                                                                                         |
|           |     ],                                                                                                         |
|           |     "parent_resource": "tonda-test1",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "accessIPv6": null,                                                                                      |
|           |       "name": null,                                                                                            |
|           |       "accessIPv4": null,                                                                                      |
|           |       "tags": null,                                                                                            |
|           |       "instance_name": null,                                                                                   |
|           |       "networks": null,                                                                                        |
|           |       "os_collect_config": null,                                                                               |
|           |       "console_urls": null,                                                                                    |
|           |       "addresses": null,                                                                                       |
|           |       "first_address": null                                                                                    |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "wait_condition",                                                                         |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::WaitCondition",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/wait_condition"                                                                      |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1",                                                                    |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "tonda-test1",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "data": "{}"                                                                                             |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "default_init",                                                                           |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::SoftwareConfig",                                                               |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/default_init"                                                                        |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1-cloud_init",                                                         |
|           |     "required_by": [                                                                                           |
|           |       "cloud_init"                                                                                             |
|           |     ],                                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "cloud_init",                                                                             |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::MultipartMime",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/cloud_init"                                                                          |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1-cloud_init",                                                         |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "server_with_volume",                                                                     |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Nova::Server",                                                                       |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/server_with_volume"                                                                  |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2",                                                                    |
|           |     "required_by": [                                                                                           |
|           |       "wait_condition"                                                                                         |
|           |     ],                                                                                                         |
|           |     "parent_resource": "tonda-test2",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "accessIPv6": null,                                                                                      |
|           |       "name": null,                                                                                            |
|           |       "accessIPv4": null,                                                                                      |
|           |       "tags": null,                                                                                            |
|           |       "instance_name": null,                                                                                   |
|           |       "networks": null,                                                                                        |
|           |       "os_collect_config": null,                                                                               |
|           |       "console_urls": null,                                                                                    |
|           |       "addresses": null,                                                                                       |
|           |       "first_address": null                                                                                    |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "wait_condition",                                                                         |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::WaitCondition",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/wait_condition"                                                                      |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2",                                                                    |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "tonda-test2",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "data": "{}"                                                                                             |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "default_init",                                                                           |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::SoftwareConfig",                                                               |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/default_init"                                                                        |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2-cloud_init",                                                         |
|           |     "required_by": [                                                                                           |
|           |       "cloud_init"                                                                                             |
|           |     ],                                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "cloud_init",                                                                             |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::MultipartMime",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/cloud_init"                                                                          |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2-cloud_init",                                                         |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   }                                                                                                            |
|           | ]                                                                                                              |

Why are those resources marked as replaced, even though there are no changes at all? When I run stack update in this state, VMs are not replaced. Update finishes immediately.

When for example I change AZ for those servers, dry run shows the exact same resources and VMs are recreated/replaced.

Heat update - replaced or not?

Hello, I would like to know, if theres way to tell, which resources will be replaced when running stack update. Mostly interested in knowing behaviour of Nova::server.

For testing ive created stack with 2 vms and immediately ran stack update

 $ openstack stack update -e devci1-env.yaml --wait -t prod_ci/sandbox/tonda_test.yaml tonda_test --timeout 3600 --os-project-id d7ab62d3c3f1415ab99b2d2cb9a8de19 --show-nested --dry-run
+-----------+----------------------------------------------------------------------------------------------------------------+
| Field     | Value                                                                                                          |
+-----------+----------------------------------------------------------------------------------------------------------------+
| added     | []                                                                                                             |
| deleted   | []                                                                                                             |
| replaced  | [                                                                                                              |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "server_with_volume",                                                                     |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Nova::Server",                                                                       |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/server_with_volume"                                                                  |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1",                                                                    |
|           |     "required_by": [                                                                                           |
|           |       "wait_condition"                                                                                         |
|           |     ],                                                                                                         |
|           |     "parent_resource": "tonda-test1",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "accessIPv6": null,                                                                                      |
|           |       "name": null,                                                                                            |
|           |       "accessIPv4": null,                                                                                      |
|           |       "tags": null,                                                                                            |
|           |       "instance_name": null,                                                                                   |
|           |       "networks": null,                                                                                        |
|           |       "os_collect_config": null,                                                                               |
|           |       "console_urls": null,                                                                                    |
|           |       "addresses": null,                                                                                       |
|           |       "first_address": null                                                                                    |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "wait_condition",                                                                         |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::WaitCondition",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/wait_condition"                                                                      |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1",                                                                    |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "tonda-test1",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "data": "{}"                                                                                             |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "default_init",                                                                           |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::SoftwareConfig",                                                               |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/default_init"                                                                        |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1-cloud_init",                                                         |
|           |     "required_by": [                                                                                           |
|           |       "cloud_init"                                                                                             |
|           |     ],                                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "cloud_init",                                                                             |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::MultipartMime",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/cloud_init"                                                                          |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test1-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test1-cloud_init",                                                         |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "server_with_volume",                                                                     |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Nova::Server",                                                                       |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/server_with_volume"                                                                  |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2",                                                                    |
|           |     "required_by": [                                                                                           |
|           |       "wait_condition"                                                                                         |
|           |     ],                                                                                                         |
|           |     "parent_resource": "tonda-test2",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "accessIPv6": null,                                                                                      |
|           |       "name": null,                                                                                            |
|           |       "accessIPv4": null,                                                                                      |
|           |       "tags": null,                                                                                            |
|           |       "instance_name": null,                                                                                   |
|           |       "networks": null,                                                                                        |
|           |       "os_collect_config": null,                                                                               |
|           |       "console_urls": null,                                                                                    |
|           |       "addresses": null,                                                                                       |
|           |       "first_address": null                                                                                    |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "wait_condition",                                                                         |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::WaitCondition",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/wait_condition"                                                                      |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2",                                                                  |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2",                                                                    |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "tonda-test2",                                                                          |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "data": "{}"                                                                                             |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "default_init",                                                                           |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::SoftwareConfig",                                                               |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/default_init"                                                                        |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2-cloud_init",                                                         |
|           |     "required_by": [                                                                                           |
|           |       "cloud_init"                                                                                             |
|           |     ],                                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   },                                                                                                           |
|           |   {                                                                                                            |
|           |     "updated_time": null,                                                                                      |
|           |     "creation_time": null,                                                                                     |
|           |     "resource_name": "cloud_init",                                                                             |
|           |     "physical_resource_id": "",                                                                                |
|           |     "resource_action": "INIT",                                                                                 |
|           |     "resource_status": "COMPLETE",                                                                             |
|           |     "resource_status_reason": "",                                                                              |
|           |     "resource_type": "OS::Heat::MultipartMime",                                                                |
|           |     "resource_identity": {                                                                                     |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": "/resources/cloud_init"                                                                          |
|           |     },                                                                                                         |
|           |     "stack_identity": {                                                                                        |
|           |       "tenant": "d7ab62d3c3f1415ab99b2d2cb9a8de19",                                                            |
|           |       "stack_name": "tonda_test-tonda-test2-cloud_init",                                                       |
|           |       "stack_id": "None",                                                                                      |
|           |       "path": ""                                                                                               |
|           |     },                                                                                                         |
|           |     "stack_name": "tonda_test-tonda-test2-cloud_init",                                                         |
|           |     "required_by": [],                                                                                         |
|           |     "parent_resource": "cloud_init",                                                                           |
|           |     "description": "",                                                                                         |
|           |     "metadata": {},                                                                                            |
|           |     "attributes": {                                                                                            |
|           |       "config": null                                                                                           |
|           |     }                                                                                                          |
|           |   }                                                                                                            |
|           | ]                                                                                                              |

Why are those resources marked as replaced, even though there are no changes at all? When I run stack update in this state, VMs are not replaced. Update finishes immediately.

When for example I change AZ for those servers, dry run shows the exact same resources and VMs are recreated/replaced.

Versions - Stein:

nova: 19.0.1
heat: 12.0.0
cinder: 14.0.0