Friday, 2026-11-13

opendevreviewAlfredo Moralejo proposed openstack/watcher master: Only cancel non-terminal audits and action plans on sync  https://review.opendev.org/c/openstack/watcher/+/101538409:12
opendevreviewAlfredo Moralejo proposed openstack/watcher master: Add support to update status_message in update_audit_state  https://review.opendev.org/c/openstack/watcher/+/101434209:14
opendevreviewAlfredo Moralejo proposed openstack/watcher master: Version the parameters spec of strategies  https://review.opendev.org/c/openstack/watcher/+/101456909:15
opendevreviewAlfredo Moralejo proposed openstack/watcher master: Version the parameters spec of strategies  https://review.opendev.org/c/openstack/watcher/+/101456913:17
opendevreviewAlfredo Moralejo proposed openstack/watcher master: Version the parameters spec of strategies  https://review.opendev.org/c/openstack/watcher/+/101456915:12
amoralej_dviroel, reading https://review.opendev.org/c/openstack/watcher-specs/+/1007853/comment/335e1948_f26feca1/ 16:02
amoralej_wrt "We can, based on your suggestion, include also a always_skip_pinned policy for the Migrate Action, instead of adding a new paramter?"16:02
amoralej_i'm not following that16:02
amoralej_that should be up to the strategy16:02
amoralej_the strategy should know which actions should be created16:03
amoralej_if include_az_pinned_instances: False, it should simply not create those actions16:03
dviroelamoralej_: the same problem stays, one thing is what strategy creates, other is the instance properties at action execution time. The instance that wasn't pinned at audit execution time may be pinned at AP execution. Always skip policy would not allow any pinned instance to migrate, and be aligned with audit input_parameters.16:22
dviroelthat was my intention with that16:23
amoralej_for me, those are two totally different things16:24
amoralej_" The instance that wasn't pinned at audit execution time may be pinned at AP execution. "16:24
amoralej_for that, the easiest is to just add the pinned_az value to the action when was created16:24
amoralej_and compare to the one actually in the instance at execution time16:25
amoralej_if differs, the action should be skipped whatever the policy is probably16:25
amoralej_imo, we are trying to do too many things with the policy parameter16:26
dviroelbut i am not also sure that we also need to keep including parameters16:27
amoralej_i think that's the easiest way to manage incorrect info in the model16:29
amoralej_and would only be optional, to not affect other strategies16:29
dviroelTBH, I think that we need to be clear in documentation, and let user knows that what was defined at Audit execution time, may differ from the execution time too. And that manual actions like pin/unpin instances will have that effect16:29
amoralej_but having logic to manage in different ways stale instances in the model depending on the rest of parameters... for me is overcomplicating it16:30
amoralej_think in another case, currently if source_host != actual_source_host -> the action is skipped16:31
amoralej_for the src_az to dst_az case, it may be the case that the instance has been moved from one host to another in the same src_az, so actually the instance still needs to be moved16:32
amoralej_but i don't think we need to add logic to guess "ok, the instance has been moved to a different host after AP was created, but it's in the same AZ, so let's not skip it and migrate it"16:33
amoralej_we should just skip it, and report it as skipped it16:33
amoralej_user can always run the audit again16:33
amoralej_actually, new instances may also have been created in the src_az, i.e. after creating the audit. I mean, an audit can produce inexact results specially if there has passed time betwen audit execution and ap execution16:34
amoralej_actually, ideally, users should re-run the audit after hosts have been disabled, i.e.16:35
amoralej_so, yeah, i think documenting that is good, actually, for any strategy can happen16:36
dviroelso yeah, I think that this behavior needs to be documented, to mention that any change in the related resources may cause Action to be skip or even fail. This is valid for pin/unpin, but as you mentioned also for a instance migrates in between audit solution and AP execution16:38
amoralej_yep16:39
dviroelSo i am not sure if we really need to freak out about that in the end16:39
dviroelI get your point on providing the pinned_az info to the Migrate Action too16:39
amoralej_i'd say, if we can implement something simple, it's fine16:39
dviroelwe could identify that an instance was pinned after the audit run16:40
dviroelor in a stale model16:40
dviroelbut16:40
dviroelnot sure if we should fix, or just make users aware of that16:40
dviroelmaybe we should go simple16:40
amoralej_i think skipping in that situation is fine16:41
dviroelthe policy proposal is an extra thing in the end, allow users to Drain and also fix the  previous pinning 16:41
amoralej_for me, it has value to let the users decide what to do with the instances migrated in terms of pinning16:41
amoralej_initially, i think the idea was to always apply the "relocate" policy, right?16:42
amoralej_for me that's the default and doing only that, i think the feature makes sense and is useful16:45
amoralej_If we can easily add also the option to the users to define what to do with the pinned_az on destination, that's good and i see use cases for them16:45
dviroelsean-k-mooney: we are discussing it here too, just in case you are around :)16:51
dviroelamoralej_: right, my second concern was about changing the behavior of existing strategies16:51
dviroelthe auto/relocate(in the spec) being the default would start to unpin/pin for all strategies in the end16:52
amoralej_yes, i agree with that16:53
sean-k-mooneywell it woudl only do that if your using AZ16:54
sean-k-mooneyit woudlhave no effect if you were not passing a dest az right16:54
amoralej_imo, th Migrate action should not try any unpin/pin, to not affect other strategies16:54
sean-k-mooneycorrect16:55
sean-k-mooneythis woudl nto be somethign determind by the action16:55
sean-k-mooneyit need to be spercfied by the stragy/desions enginv via the produce action plan16:55
sean-k-mooneyactuions shoudl nto make desiones16:55
amoralej_sean-k-mooney, we don't want zone_migrate to support repin using source_host destination_host ?16:55
amoralej_i understood we want16:55
sean-k-mooneyi dont think we shoudl no16:55
sean-k-mooneyi mean we could but that does then change the behvior16:56
amoralej_i understood we wanted those options to be also valid for host based migrations16:56
sean-k-mooneyi was expecting us to need to opt into az aware migration via using the az16:56
sean-k-mooneyif we are supporting it for all host based migrtion then the policy need to default differntly16:57
amoralej_if we don't, it's much simpler, as you said, migrations by host keep current behavior, by az, new one16:57
amoralej_that was the point, it's different the default value for the action and for the strategy16:58
sean-k-mooneywe coudl supprot specifyign a dest az and host16:58
sean-k-mooneyfor change az and move to this host16:58
sean-k-mooneybut the entrie point of the fature was tha tnova woudl choose the host when crossing azs16:58
amoralej_yep16:59
dviroelwe could initially not support the pin/unpin for dest-host17:00
dviroeli was thiking on making available for both17:01
amoralej_So, i guess that's the first decission to make. if we want that include_az_pinned_instances and availability_zone_pinning_policy (or whatever name) applies only when using src_az and dst_az17:03
dviroelhttps://www.irccloud.com/pastebin/qEKz0iuA/17:05
dviroelthis is how it would looks like today.17:05
dviroelwe would accept the 3 options for src_host/dest_host17:06
dviroelamoralej_: what is your opinion on that? 17:08
dviroelI was originaly in favor of making to work with both AZ and Host17:08
amoralej_me too, i understood we agreed on that, tbh17:08
dviroelbut I was not expecting these issues17:08
amoralej_but, it's also true that implementing the az options for host based strategies complicates it17:09
sean-k-mooney```he central design decision of this proposal is that Watcher does not17:09
sean-k-mooneychoose destination hosts. That choice is delegated to Nova, and depends on a17:09
sean-k-mooneynew feature proposed by the `Nova migrate-to-availability-zone blueprint`_,17:09
sean-k-mooneywhich adds an optional ``availability_zone`` parameter to the move APIs.17:09
sean-k-mooneyThis keeps the strategy free of capacity accounting, avoids duplicating17:09
sean-k-mooneyscheduler logic, and gives a real AZ guarantee that a "no destination"17:09
sean-k-mooneyhost cannot.```17:09
sean-k-mooneythat https://review.opendev.org/c/openstack/watcher-specs/+/1007853/8/specs/2027.1/approved/zone-migration-az-drain.rst#9317:09
sean-k-mooneythat to me ment thsi spec only added this fucntionality for moves where the AZ is specified17:10
dviroelsean-k-mooney: right, but at the same time we are improving some other pain points (e.g. counters, etc)17:11
sean-k-mooneywe dotn have any usecase for movign to a specific host in a diffent az17:11
dviroelwe don't 17:11
amoralej_"The following options are accepted on both node-pair and zone-pair entries:17:11
amoralej_  ``include_az_pinned_instances`` ..."17:11
amoralej_i'm fine to decide now, anyway17:12
dviroelI took the decision to have it working for both in the end17:12
dviroelin my point of view, since these options were inside "compute_nodes" they could work for both17:12
dviroelsame for "disable_source_services" 17:13
sean-k-mooneyfo waht its wroth i tink this is going to end up not happing this cycle17:13
amoralej_yeah, for disable_source_services i see no conflict, we should support it in both17:13
sean-k-mooneyits lookign more and more like we wil not have az for cold migration17:13
sean-k-mooneyso we wont be able to proceed with the watcher feature17:13
dviroelouch17:13
sean-k-mooneyand im feeling pretty low because of that right now so i dont really have the engergy to go into this in deail now17:14
amoralej_would we want to implement it only for active instances?17:14
dviroelit could work only for live, it would be another restriction for the AZ drain17:14
sean-k-mooneyno17:14
sean-k-mooneyi really dont think we shoudl17:14
sean-k-mooneytis a posibally but i dont think its reason to add AZ to only live migtion in nova17:14
amoralej_ok, so let's discuss it on monday17:15
dviroelack17:15
sean-k-mooney+1 for next week17:15
dviroelack17:15
amoralej_at least, now we know where to start the discussion from :) 17:15
sean-k-mooneyhonestly though im pretty burntout now17:15
dviroelTL;DR; for me today is make it simple but functional17:16
amoralej_no problem sean-k-mooney , takt time to rest17:16
dviroelsean-k-mooney: yeah, lets have that discussion next week 17:16
sean-k-mooneyexding the policy concept to support hosts is not really a problem17:17
sean-k-mooneywe may have to change the allwoed options or have no default and reuiqre you set one if we woudl be changing az17:17
sean-k-mooneybut lest regroup on monday17:18
sean-k-mooneyif ye want to continue dicussisng it here go for it 17:18
dviroellets think a bit more and  discuss on monday yeah17:19
dviroelif you folks have an idea, we can discuss and reach an agreement17:19
dviroelalread late for you guys17:20
dviroelfor a friday at least17:20
dviroeltake a rest o/17:20
-opendevstatus- NOTICE: The Gerrit service on review.opendev.org will be offline briefly while we reboot for system updates, but should return within a few minutes.17:43
amoralej_have a nice weekend!17:44
dviroelo/18:13

Generated by irclog2html.py 4.1.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!