Wednesday, 2020-11-04

openstackgerritSam Morrison proposed openstack/trove master: Pass availability zone through to volume creation.  https://review.opendev.org/76125000:18
sorrisonlxkong: I'm wondering what the upgrade strategy is too, I see some changes to the guestagent API and thinking we really need to version this API and get the guest agents to send us their supported version00:28
sorrisonthe change in signature to the 'upgrade' method in guestagent.api I think is going to cause issues00:29
sorrisonthe changes to prepare, start_db_with_conf_changes, resize_fs add arguments but the changes to stop_db, attach_replica remove arguments so it essentially makes it impossible to upgrade00:31
sorrisonWhat is the order, trove-taskmanager/api first and then guestagents or the other way around?00:32
sorrisonactually because the removed args have defaults I think it would be ok it guest agents upgraded first and then api/taskmakager etc.00:33
lxkongsorrison: for the ram quota, why do you need to refresh quota_usage table? Trove can add the row automatically if the resource type doesn't exist.00:59
lxkongsorrison: have you tested in your local env to verify?00:59
lxkongtrove guest agent API version is something i was thinking when doing changes, currently we have to upgrade trove-guestagent toghether with upgrading trove itself, that's why I implemented 'rebuild' API. Otherwise, newer version Trove can't talk to older version guest agent.01:02
lxkongthat part is not carefully designed in the past01:02
lxkongthe relationship between trove itself and guest agent is like octavia and amphora. If there is change in amphora code, the operator needs to do manually failover after upgrading Octavia.01:05
sorrisonyeah if the project already has existing instances01:05
sorrisonthen the quota usage for ram will be 0 instead of what it is actually using01:05
lxkongoh, right01:06
lxkongthat's a little bit tricky01:06
sorrisonI don't know of a nice way to do it, as could do it in a db migration but it would need to talk to nova which I don't think is good01:06
lxkongyeah, either we provide script to fill out the table, or need explicitly tell the customer that the quota takes effect for the new instances but ignore the existing ones01:07
sorrisonShould I make the release note a bit more explicit01:08
lxkongyes, please01:08
sorrisonI think for guest api it's a bit different to octavia as that can be done independently and without user downtime01:10
lxkongyeah, we could figure out a way to achieve that01:11
sorrisoncan we have a policy of upgrading taskmaster/api before guestagent?01:11
lxkongsure01:11
sorrisonand then have it so it supports n-1 guest agents?01:11
sorrisonwe could do this a couple of ways. we could do oslo rpc versioning etc. and have version caps01:13
sorrisoneg. so taskmaster could be at wallaby but only send messages to guests at victoria version01:13
lxkongyep01:14
sorrisonversion caps are a bit easier, the other way would be to get guest agents to have a rpc version in the DB and so we would know which version to send01:14
lxkongsorrison: we probably need a simple design doc for this feature.01:16
* lxkong has to run errand now, will be back online later01:16
sorrisonyeah sure01:16
sorrisoncheers01:17
*** sapd1 has joined #openstack-trove01:33
*** rcernin has quit IRC02:48
*** rcernin has joined #openstack-trove02:49
sorrisonI've just realised all the stuff for doing guest api versioning and caps is already in there03:25
sorrisonso essentially we just need to start using it. I'll prepare a patch that will make things more backwards compatible03:26
sorrisonlxkong: I've got some stuff working, so I can get current master running with ussuri or victoria guest agents03:49
sorrisonone thing I'm confused about is the change in how upgrade works, it seems it doesn't do a nova rebuild anymore? How do you change to use a newer image now?03:49
lxkongwith docker, we don't need to rebuild to upgrade database.04:08
lxkongrebuilding image is for trove-guestagent upgrade04:08
lxkongsee https://docs.openstack.org/api-ref/database/?expanded=rebuild-instance-detail#rebuild-instance04:09
sorrisonah ok, I see now. We need the ability for users to upgrade their own DBs at a time that suits them.04:17
sorrisonI've been issuing trove upgrade commands and it doesn't seem to be doing anything and not getting to the taskmanager. has the actual API around how to issue an upgrade changed as well?04:17
sorrisonI would love to be able to upgrade to newer versions of trove but it is not possible without a lot of changes04:19
sorrisoneg curl -g -i -X PATCH http://trove.dev.rc.nectar.org.au:8779/v1.0/094ae1e2c08f4eddb444a9d9db71ab40/instances/ef5630f5-4c6c-4388-8ed0-7cc03e89371e -H "Accept: application/json" -H "Content-Type: application/json" -H "User-Agent: trove keystoneauth1/4.0.0 python-requests/2.18.4 CPython/3.6.9" -H "X-Auth-Token: {SHA256}xyz" -d '{"instance": {"datastore_version": "5.7-29"}}'04:21
*** sapd1 has quit IRC04:29
lxkongsorrison: https://docs.openstack.org/api-ref/database/?expanded=upgrade-datastore-version-for-instance-detail#upgrade-datastore-version-for-instance, have you tried using PUT?04:42
sorrisonI'm just using the openstack client04:43
lxkongwhat's you command>04:43
sorrisonopenstack database instance upgrade   ef5630f5-4c6c-4388-8ed0-7cc03e89371e 5.7-2904:44
sorrisonusing openstack 5.4.004:45
lxkongok, i will have a try after dinner in my env.04:46
sorrisonI'm using latest master04:46
sorrisonYeah ok I see the issue c4fd9cbe346de707281c3254bfbbda8f2759ec4d broke upgrade05:09
sorrisonis there a patch to fix functional testing in the gate? I'm happy to help05:10
openstackgerritSam Morrison proposed openstack/trove master: WIP Make guest agent api changes backwards compatible  https://review.opendev.org/76127005:21
sorrisoncan confirm that reverting c4fd9cbe346de707281c3254bfbbda8f2759ec4d fixes things05:22
*** spatel has joined #openstack-trove07:58
*** spatel has quit IRC08:03
*** rcernin has quit IRC08:05
*** rcernin has joined #openstack-trove08:37
*** tosky has joined #openstack-trove08:42
*** e0ne has joined #openstack-trove08:51
*** rcernin has quit IRC08:56
*** rcernin has joined #openstack-trove09:59
*** rcernin has quit IRC10:13
lxkongsorrison: hmm, yes, i found my note for that commit10:31
lxkongthere is a todo to support datastore version upgrade after that patch10:31
lxkongbut it is missed for some reason10:32
*** spatel has joined #openstack-trove10:59
*** spatel has quit IRC11:04
openstackgerritLingxian Kong proposed openstack/python-troveclient master: Fix help message of datastore version upgrade  https://review.opendev.org/76139311:06
lxkongsorrison: i will fix that11:12
*** e0ne has quit IRC11:26
*** e0ne has joined #openstack-trove11:58
*** e0ne has quit IRC12:14
*** spatel has joined #openstack-trove12:27
*** spatel has quit IRC12:32
*** e0ne has joined #openstack-trove13:17
*** sapd1 has joined #openstack-trove14:27
openstackgerritIvan Kolodyazhny proposed openstack/trove-dashboard master: Fix replica number input type  https://review.opendev.org/76141914:49
*** e0ne has quit IRC16:07
*** sapd1 has quit IRC16:54
*** tosky has quit IRC17:15
*** e0ne has joined #openstack-trove17:59
*** mugsie has quit IRC18:18
*** mugsie has joined #openstack-trove18:21
*** e0ne has quit IRC20:31
*** tosky has joined #openstack-trove20:35
openstackgerritLingxian Kong proposed openstack/trove master: Fix upgrading instance datastore version  https://review.opendev.org/76146521:17
lxkongsorrison: https://review.opendev.org/#/c/761465/, please review and test if you could21:19
*** rcernin has joined #openstack-trove21:41
*** rcernin has quit IRC22:09
*** rcernin has joined #openstack-trove22:09
sorrisonlxkong: ok will take a look. I've been looking into trove-tempest too. We are using an older version of trove tempest and it still has all the API tests in it. It looks like its failing a few pointing it to master trove22:26
sorrisonI'm going to submit a patch to reinstate all the api tests hopefully today too, it's a shame these were all removed. they are really needed22:27
*** rcernin has quit IRC23:04
*** spatel has joined #openstack-trove23:12
*** rcernin has joined #openstack-trove23:12
*** rcernin has quit IRC23:16
*** rcernin has joined #openstack-trove23:16
*** spatel has quit IRC23:17
lxkongyeah, collaboration and contribution are really important for open source project23:31
lxkongi am very happy you start doing that now23:31
lxkongalmost all the people left since Tesora was aquired, and we are deploying trove using Victoria, so i didn't take all the previous technical debt into consideration23:34
lxkongsome things are mostly refactored actually23:34
openstackgerritSam Morrison proposed openstack/trove-tempest-plugin master: [WIP] reinstate removed api tests  https://review.opendev.org/76147223:34
lxkongwhat Tesora did previously was not good for an openstack project. I am ok we move some stuff back but must in a reasonable way23:35
lxkonge.g. flavor API is one of them23:36
lxkongso don't blame open source, if you care about open source, open source cares about you :-)23:37

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