)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"90c28f612a9e6a0dd25332f62a8986a2b4c57435","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"8dc20c5c_2b41dc81","updated":"2025-09-25 21:37:53.000000000","message":"The -1 is solely for wanting the \"don\u0027t change shards on nodes managed by nova\" warning. The rest is advisory feedback (or praise lol)","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"}],"doc/source/admin/availability-zones.rst":[{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"90c28f612a9e6a0dd25332f62a8986a2b4c57435","unresolved":true,"context_lines":[{"line_number":10,"context_line":"Overview"},{"line_number":11,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"While Ironic does not implement traditional OpenStack Availability Zones like Nova and Neutron, it provides a **three-tier approach** for resource partitioning and isolation that achieves comprehensive availability zone functionality:"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"* **Multiple Ironic Deployments**: Completely separate Ironic services targeted by different Nova compute nodes"},{"line_number":16,"context_line":"* **Conductor Groups**: Physical/geographical resource partitioning within a deployment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"159a7acc_b19d331f","line":13,"updated":"2025-09-25 21:37:53.000000000","message":"nit: we often wrap these lines for readability in plaintext editors","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5e9ded6b9e58573f5636aff197b5c80e060d782d","unresolved":true,"context_lines":[{"line_number":10,"context_line":"Overview"},{"line_number":11,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"While Ironic does not implement traditional OpenStack Availability Zones like Nova and Neutron, it provides a **three-tier approach** for resource partitioning and isolation that achieves comprehensive availability zone functionality:"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"* **Multiple Ironic Deployments**: Completely separate Ironic services targeted by different Nova compute nodes"},{"line_number":16,"context_line":"* **Conductor Groups**: Physical/geographical resource partitioning within a deployment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"32bd8c89_a3e08c1e","line":13,"in_reply_to":"159a7acc_b19d331f","updated":"2025-09-25 21:55:04.000000000","message":"Yeah, Claude seems to resist my requests to line wrap 😭","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ea2d37b5ee910b45c46bcb1db76e370b36aa9325","unresolved":false,"context_lines":[{"line_number":10,"context_line":"Overview"},{"line_number":11,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"While Ironic does not implement traditional OpenStack Availability Zones like Nova and Neutron, it provides a **three-tier approach** for resource partitioning and isolation that achieves comprehensive availability zone functionality:"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"* **Multiple Ironic Deployments**: Completely separate Ironic services targeted by different Nova compute nodes"},{"line_number":16,"context_line":"* **Conductor Groups**: Physical/geographical resource partitioning within a deployment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"11bbd5cb_54134604","line":13,"in_reply_to":"32bd8c89_a3e08c1e","updated":"2025-09-26 16:31:50.000000000","message":"Done","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"90c28f612a9e6a0dd25332f62a8986a2b4c57435","unresolved":true,"context_lines":[{"line_number":64,"context_line":"* Different operational policies per deployment"},{"line_number":65,"context_line":"* Complete API endpoint separation"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Tier 2: Conductor Groups (Physical Partitioning)"},{"line_number":68,"context_line":"-------------------------------------------------"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Within a single Ironic deployment, conductor groups provide **physical resource partitioning**."}],"source_content_type":"text/x-rst","patch_set":2,"id":"259bd5e9_c2ff0088","line":67,"updated":"2025-09-25 21:37:53.000000000","message":"I don\u0027t love the idea of presenting that conductor groups should be the initial, default way to split nodes up. I admit presenting it this way does prevent a \"decoder ring\" scenario so this isn\u0027t blocking feedback, but just a general wish that we could more clearly demonstrate the value of shards (without use of conductor groups -- for instance, when you want conductor groups to model your physical datacenter, but don\u0027t want to reveal that implementation detail at a nova level).","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5e9ded6b9e58573f5636aff197b5c80e060d782d","unresolved":true,"context_lines":[{"line_number":64,"context_line":"* Different operational policies per deployment"},{"line_number":65,"context_line":"* Complete API endpoint separation"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Tier 2: Conductor Groups (Physical Partitioning)"},{"line_number":68,"context_line":"-------------------------------------------------"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Within a single Ironic deployment, conductor groups provide **physical resource partitioning**."}],"source_content_type":"text/x-rst","patch_set":2,"id":"2f247ee0_31be6dd5","line":67,"in_reply_to":"259bd5e9_c2ff0088","updated":"2025-09-25 21:55:04.000000000","message":"I sort of had the same feeling from what it came up with, that being said, I think it\u0027s model of physical partitioning is also cleanly laid out in it\u0027s context. That being said, I think it is likely worth stressing physical partitioning of conductors and configuration is the aspect, not of just broad pools of nodes. That might work as a note?!","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ea2d37b5ee910b45c46bcb1db76e370b36aa9325","unresolved":true,"context_lines":[{"line_number":64,"context_line":"* Different operational policies per deployment"},{"line_number":65,"context_line":"* Complete API endpoint separation"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"Tier 2: Conductor Groups (Physical Partitioning)"},{"line_number":68,"context_line":"-------------------------------------------------"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"Within a single Ironic deployment, conductor groups provide **physical resource partitioning**."}],"source_content_type":"text/x-rst","patch_set":2,"id":"7b2b68c4_6f399748","line":67,"in_reply_to":"2f247ee0_31be6dd5","updated":"2025-09-26 16:31:50.000000000","message":"I\u0027ve added some additional prose to try and split and focus the perceptions as such. I don\u0027t think it is really framed as \"initial, default\" way of doing it, but do review my change and let me know.","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"90c28f612a9e6a0dd25332f62a8986a2b4c57435","unresolved":true,"context_lines":[{"line_number":92,"context_line":"* Horizontal scaling of operations"},{"line_number":93,"context_line":"* Parallelize maintenance tasks"},{"line_number":94,"context_line":"* Create logical groupings for different teams or projects"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":".. note::"},{"line_number":97,"context_line":"   Shards are client-side constructs - Ironic itself does not use shard values internally."},{"line_number":98,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"2efca0ee_613656c5","line":95,"updated":"2025-09-25 21:37:53.000000000","message":"Maybe add:\n\n\"Shards can be used by clients, including Nova, to limit scope of their requests to a subset of nodes. That permits another client to work freely on another shard without conflict.\"","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0a6247bb7a8e671cdc1d33e6562f66f0303bd28c","unresolved":true,"context_lines":[{"line_number":92,"context_line":"* Horizontal scaling of operations"},{"line_number":93,"context_line":"* Parallelize maintenance tasks"},{"line_number":94,"context_line":"* Create logical groupings for different teams or projects"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":".. note::"},{"line_number":97,"context_line":"   Shards are client-side constructs - Ironic itself does not use shard values internally."},{"line_number":98,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"d2a9cc39_d56d32af","line":95,"in_reply_to":"2efca0ee_613656c5","updated":"2025-09-25 22:01:56.000000000","message":"Ohh, that and also likely call out to limited views of nodes similar owner or lessee model restrictions.","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ea2d37b5ee910b45c46bcb1db76e370b36aa9325","unresolved":false,"context_lines":[{"line_number":92,"context_line":"* Horizontal scaling of operations"},{"line_number":93,"context_line":"* Parallelize maintenance tasks"},{"line_number":94,"context_line":"* Create logical groupings for different teams or projects"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":".. note::"},{"line_number":97,"context_line":"   Shards are client-side constructs - Ironic itself does not use shard values internally."},{"line_number":98,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"751e538c_98759164","line":95,"in_reply_to":"d2a9cc39_d56d32af","updated":"2025-09-26 16:31:50.000000000","message":"Done","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"90c28f612a9e6a0dd25332f62a8986a2b4c57435","unresolved":true,"context_lines":[{"line_number":126,"context_line":"   # nova-compute for EU West region"},{"line_number":127,"context_line":"   [ironic]"},{"line_number":128,"context_line":"   auth_url \u003d https://keystone-eu-west.example.com/v3"},{"line_number":129,"context_line":"   endpoint_override \u003d https://ironic-eu-west.example.com"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"Pattern 2: Single Region with Datacenter Separation"},{"line_number":132,"context_line":"----------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"0ef58e97_51078186","line":129,"updated":"2025-09-25 21:37:53.000000000","message":"Do we want to encourage use of endpoint_override? I don\u0027t think it\u0027s needed in most integrated cases, is it?","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5e9ded6b9e58573f5636aff197b5c80e060d782d","unresolved":true,"context_lines":[{"line_number":126,"context_line":"   # nova-compute for EU West region"},{"line_number":127,"context_line":"   [ironic]"},{"line_number":128,"context_line":"   auth_url \u003d https://keystone-eu-west.example.com/v3"},{"line_number":129,"context_line":"   endpoint_override \u003d https://ironic-eu-west.example.com"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"Pattern 2: Single Region with Datacenter Separation"},{"line_number":132,"context_line":"----------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"446d982c_8e475d6a","line":129,"in_reply_to":"0ef58e97_51078186","updated":"2025-09-25 21:55:04.000000000","message":"It is really going to depend on the pattern, a note explicitly stressing that the above configuration is for illustrative purposes and your exact configuration will vary based upon your keystone configurations.","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ea2d37b5ee910b45c46bcb1db76e370b36aa9325","unresolved":false,"context_lines":[{"line_number":126,"context_line":"   # nova-compute for EU West region"},{"line_number":127,"context_line":"   [ironic]"},{"line_number":128,"context_line":"   auth_url \u003d https://keystone-eu-west.example.com/v3"},{"line_number":129,"context_line":"   endpoint_override \u003d https://ironic-eu-west.example.com"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"Pattern 2: Single Region with Datacenter Separation"},{"line_number":132,"context_line":"----------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"366f148b_3e96629f","line":129,"in_reply_to":"446d982c_8e475d6a","updated":"2025-09-26 16:31:50.000000000","message":"Added a note stressing it is for illustrative purposes.","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"90c28f612a9e6a0dd25332f62a8986a2b4c57435","unresolved":true,"context_lines":[{"line_number":417,"context_line":"+-------------------------+-------------------+-----------------+---------------+"},{"line_number":418,"context_line":"| Geographic separation   | ✓ Best            | ✓ Good          | ✗ No          |"},{"line_number":419,"context_line":"+-------------------------+-------------------+-----------------+---------------+"},{"line_number":420,"context_line":"| Operational scaling     | ✗ Overhead        | ✓ Good          | ✓ Best        |"},{"line_number":421,"context_line":"+-------------------------+-------------------+-----------------+---------------+"},{"line_number":422,"context_line":"| Resource efficiency     | ✗ Lower           | ✓ Good          | ✓ Best        |"},{"line_number":423,"context_line":"+-------------------------+-------------------+-----------------+---------------+"}],"source_content_type":"text/x-rst","patch_set":2,"id":"902b66c9_68c63c97","line":420,"updated":"2025-09-25 21:37:53.000000000","message":"This chart might be the single most useful piece of Ironic architecture information committed to the repo in years. Seriously.","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5e9ded6b9e58573f5636aff197b5c80e060d782d","unresolved":true,"context_lines":[{"line_number":417,"context_line":"+-------------------------+-------------------+-----------------+---------------+"},{"line_number":418,"context_line":"| Geographic separation   | ✓ Best            | ✓ Good          | ✗ No          |"},{"line_number":419,"context_line":"+-------------------------+-------------------+-----------------+---------------+"},{"line_number":420,"context_line":"| Operational scaling     | ✗ Overhead        | ✓ Good          | ✓ Best        |"},{"line_number":421,"context_line":"+-------------------------+-------------------+-----------------+---------------+"},{"line_number":422,"context_line":"| Resource efficiency     | ✗ Lower           | ✓ Good          | ✓ Best        |"},{"line_number":423,"context_line":"+-------------------------+-------------------+-----------------+---------------+"}],"source_content_type":"text/x-rst","patch_set":2,"id":"a950ad30_e8e2b98c","line":420,"in_reply_to":"902b66c9_68c63c97","updated":"2025-09-25 21:55:04.000000000","message":"And it whipped it up!","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"90c28f612a9e6a0dd25332f62a8986a2b4c57435","unresolved":true,"context_lines":[{"line_number":500,"context_line":"   baremetal node set --conductor-group new-group \u003cnode-uuid\u003e"},{"line_number":501,"context_line":""},{"line_number":502,"context_line":"**Reassigning shards**:"},{"line_number":503,"context_line":""},{"line_number":504,"context_line":".. code-block:: bash"},{"line_number":505,"context_line":""},{"line_number":506,"context_line":"   # Change node shard assignment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"38357a52_9f2b77a8","line":503,"updated":"2025-09-25 21:37:53.000000000","message":"We need to mention in giant red flashing letters here that for integrated cases, Nova computes do not support provisioned instances moving shards.","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"5e9ded6b9e58573f5636aff197b5c80e060d782d","unresolved":true,"context_lines":[{"line_number":500,"context_line":"   baremetal node set --conductor-group new-group \u003cnode-uuid\u003e"},{"line_number":501,"context_line":""},{"line_number":502,"context_line":"**Reassigning shards**:"},{"line_number":503,"context_line":""},{"line_number":504,"context_line":".. code-block:: bash"},{"line_number":505,"context_line":""},{"line_number":506,"context_line":"   # Change node shard assignment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"dc3c65d3_c1b3bd4b","line":503,"in_reply_to":"38357a52_9f2b77a8","updated":"2025-09-25 21:55:04.000000000","message":"Great point! Sadly the blink tag is no longer a thing...","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"ea2d37b5ee910b45c46bcb1db76e370b36aa9325","unresolved":false,"context_lines":[{"line_number":500,"context_line":"   baremetal node set --conductor-group new-group \u003cnode-uuid\u003e"},{"line_number":501,"context_line":""},{"line_number":502,"context_line":"**Reassigning shards**:"},{"line_number":503,"context_line":""},{"line_number":504,"context_line":".. code-block:: bash"},{"line_number":505,"context_line":""},{"line_number":506,"context_line":"   # Change node shard assignment"}],"source_content_type":"text/x-rst","patch_set":2,"id":"7a5c936c_b667ca1d","line":503,"in_reply_to":"dc3c65d3_c1b3bd4b","updated":"2025-09-26 16:31:50.000000000","message":"Done","commit_id":"0015dfe71fed93a8f5841b12cbc61f08dfe0d886"}]}
