Earlier  
Posted Nick Remark
#openstack-nova - 2024-10-02
17:22:29 sean-k-mooney we added that in caracal https://specs.openstack.org/openstack/nova-specs/specs/2024.1/implemented/libvirt-maxphysaddr-support.html
17:22:57 sean-k-mooney stephenfin: is there a reason you want to remvoe it
17:23:14 stephenfin see tkajinam's comment above about distutils
17:23:42 sean-k-mooney why woud lthis matter it trivcial to remove that dep
17:23:50 sean-k-mooney we are just using it to parse the version string
17:25:16 sean-k-mooney we have like 5 diffent thing that do somethign similar
17:25:25 sean-k-mooney granted some of them proably use distutils
17:26:29 sean-k-mooney but https://github.com/openstack/nova/blob/master/nova/scheduler/filters/image_props_filter.py#L87-L90 shoudl be fairly simple to repalce
17:27:58 sean-k-mooney stephenfin: the hyper_version is alwasy an int i think by the way
17:28:56 sean-k-mooney so we can litrally just do versionutils.convert_version_to_str can then use gratherthan to do the comparison if im not missing something
17:31:06 stephenfin versionpredicate supports anything you can put on the right side of a dependency in requirements.txt, so something like '> 6.1, < 7.0, != 6.1.0, != 6.1.1, != 6.1.2' is possible
17:31:32 sean-k-mooney ah i see
17:31:33 stephenfin so the solution is probably to vendor the code from cpython 3.11
17:31:37 stephenfin https://github.com/python/cpython/blob/3.11/Lib/distutils/versionpredicate.py
17:31:38 sean-k-mooney we supprot that for the compute capbality filter
17:32:38 sean-k-mooney ah sorry not that the json filter
17:32:42 sean-k-mooney https://github.com/openstack/nova/blob/master/nova/scheduler/filters/json_filter.py#L81-L112
17:33:21 sean-k-mooney or thather https://github.com/openstack/nova/blob/master/nova/scheduler/filters/json_filter.py#L81-L112
17:33:28 sean-k-mooney ... https://github.com/openstack/nova/blob/master/nova/scheduler/filters/json_filter.py#L31-L91
17:33:40 sean-k-mooney but yes that more ahhoying
17:34:16 sean-k-mooney stephenfin: we could certenly consider deprecating that but we have never remvoed an image property before
17:34:28 sean-k-mooney i dont know how people would fell about removing this
17:35:10 stephenfin Probably easiest to just vendor the code and go back to ignoring that filter until the next time it causes issues
17:36:09 sean-k-mooney vendor in https://github.com/openstack/oslo.utils/blob/master/oslo_utils/versionutils.py
17:36:12 sean-k-mooney or in nova
17:40:50 sean-k-mooney looking at https://github.com/python/cpython/blob/3.11/Lib/distutils/versionpredicate.py
17:41:21 sean-k-mooney we have much of th elogic in the json filter bug i kind of hate all the regex logic that uses
17:42:16 sean-k-mooney i kind of understand why but dynamicly building a set of predicates by parsing a string using regexes fells... slow
19:22:32 opendevreview Merged openstack/placement master: Move upper functional job to py312 https://review.opendev.org/c/openstack/placement/+/931052
#openstack-nova - 2024-10-03
01:01:02 opendevreview melanie witt proposed openstack/nova master: WIP libvirt: Add image multi-backend https://review.opendev.org/c/openstack/nova/+/930967
01:01:03 opendevreview melanie witt proposed openstack/nova master: api: Add microversion 2.97 to add image_type to block_device_mapping_v2 https://review.opendev.org/c/openstack/nova/+/930968
01:47:14 opendevreview melanie witt proposed openstack/nova master: WIP libvirt: Add image multi-backend https://review.opendev.org/c/openstack/nova/+/930967
01:47:15 opendevreview melanie witt proposed openstack/nova master: api: Add microversion 2.97 to add image_type to block_device_mapping_v2 https://review.opendev.org/c/openstack/nova/+/930968
06:30:52 opendevreview melanie witt proposed openstack/nova master: DNM try minimalistic imagebackend refactor https://review.opendev.org/c/openstack/nova/+/925635
06:30:52 opendevreview melanie witt proposed openstack/nova master: libvirt: Move cache filename generation to imagebackend https://review.opendev.org/c/openstack/nova/+/930961
06:30:53 opendevreview melanie witt proposed openstack/nova master: libvirt: Add base image format tracking with file extensions https://review.opendev.org/c/openstack/nova/+/930962
06:30:53 opendevreview melanie witt proposed openstack/nova master: db: Add image_type to block_device_mapping table https://review.opendev.org/c/openstack/nova/+/930964
06:30:54 opendevreview melanie witt proposed openstack/nova master: objects: Add image_type to BlockDeviceMapping object https://review.opendev.org/c/openstack/nova/+/930965
06:30:54 opendevreview melanie witt proposed openstack/nova master: virt: Add image_type to relevant DriverBlockDevice https://review.opendev.org/c/openstack/nova/+/930966
06:30:55 opendevreview melanie witt proposed openstack/nova master: WIP libvirt: Add image multi-backend https://review.opendev.org/c/openstack/nova/+/930967
06:30:55 opendevreview melanie witt proposed openstack/nova master: api: Add microversion 2.97 to add image_type to block_device_mapping_v2 https://review.opendev.org/c/openstack/nova/+/930968
06:55:04 ioni hi guys, i used to be able for years to do openstack server list --all-projects --host hostname and get the servers deployed on hostname server. now with latest version of openstackclient and nova, im not able to
06:55:12 ioni it returns nothing
06:56:18 ioni openstack version is 2023.1
06:56:55 ioni in the nova logs, i see a call for servers in the same way of using older version of openstack client, but with older version of openstacklient, nova gets another call for flavors
06:57:24 ioni is it a bug or openstackclient changed his behavior and i need to use other options?
06:58:37 ioni i tried with -all, --long, --no-name-lookup but i cannot returned to old behavior
06:59:04 ioni i mostly want to get uuid, status of instances on specific hypervisor
08:14:37 melwitt ioni: what is your openstackclient version? "openstack --version" I just tried with 6.6.0 (albeit with nova from the master branch) and --host works as long as it's an exact match on the hostname. it won't do a regex match
08:30:39 ioni @melwitt, 7.1.2
08:34:00 ioni @melwitt, https://paste.xinu.at/Ixy6/
08:40:00 ralonsoh sean-k-mooney, hello! I'm pinging you regarding
08:40:03 ralonsoh (sorry)
08:40:22 ralonsoh regarding WSGIServer. We have a similar implementation in Neutron (UnixDomainWSGIServer)
08:40:52 ralonsoh and is implemented with eventlet
08:41:15 ralonsoh I'm wondering if you have an alternative or if you have already started migrating it
09:02:00 sean-k-mooney ralonsoh: so we had 2 converstain on related topic. the first related to the nova-api consol script where we were considering entirly removing it and only provide wthe wsgi script allowing people to run it under uwsgi,apache2 mod_wsgi or gunicorn the alternitive was to to use one of python built in web servers
09:02:02 sean-k-mooney (https://docs.python.org/3/library/wsgiref.html#module-wsgiref.simple_server or https://docs.python.org/3/library/http.server.html#http.server.ThreadingHTTPServer) or use and external one like ( gunicorn or flask)
09:02:50 sean-k-mooney ralonsoh: the second converastaion was the wsgi framework to use instead fo eventlet and i was suggeign movign to falsk since keystone already did
09:03:36 sean-k-mooney there are others like fastapi ectra but flask is already used in openstack so why add another depency if we can avoid it
09:06:32 sean-k-mooney ralonsoh: i know neutron is in a slightly diffent place because you did not have a wsgi script and that was not the default way to run the api
09:07:10 sean-k-mooney ralonsoh: for nova the nova-api console script/binary has not been the recommended way to run it for 6+ years
09:07:45 sean-k-mooney in production and even in devstack the freestandign wsgi script is how that was executed so we were not using the eventlet web server
09:07:58 opendevreview Pierre Riteau proposed openstack/nova master: Fix missing backtick in configuration option help https://review.opendev.org/c/openstack/nova/+/931253
09:15:27 bauzas ioni: just saw your message, could you try an older version of openstackclient by installing it in a venv ?
09:16:17 bauzas OSC changed a lot between 6.x and 7.x as it now uses the SDK but we may have another regression :(
10:02:35 ralonsoh sean-k-mooney, ok, I see. The WSGIServer is used in WSGIService and only for the API
10:03:49 ralonsoh we had a different problem: the UnixDomainWSGIServer is used on the agents to provide a wsgi server for the metadata
10:07:59 sean-k-mooney ralonsoh: i think you can just swap the socket passed to the http server with a unix domain socket instead of tcp
10:08:28 ioni @bauzas, ive downgraded python-openstackclient to 6.6.0, still the same issue
10:08:38 ioni should i downgrade sdk as well?
10:08:41 sean-k-mooney i have not tired that but i dont think the stdlib webserver actully depend on the transprot protocol
10:08:43 ioni to what version?
10:09:29 ralonsoh sean-k-mooney, UnixDomainWSGIServer is using a unix socket
10:09:39 bauzas ioni: well, could you then use DEBUG level with OSC to see the call and the return ?
10:10:26 ioni @bauzas, sure thing, can you give me instructions ?
10:14:24 sean-k-mooney ralonsoh: right but what i mean is i think they way you use https://docs.python.org/3/library/http.server.html#http.server.SimpleHTTPRequestHandler for example is you create a socket server use that to serve the web server
10:19:30 ioni bauzas, whats interesting is that in --debug, i can see details regarding servers on that hypervisor but it doesn't print them
10:20:17 bauzas ioni: so this is a OSC bug
10:20:26 sean-k-mooney ralonsoh: currently https://docs.python.org/3/library/socketserver.html only provide tcp and udp concreate implamtion but you coudl inherit form https://docs.python.org/3/library/socketserver.html#socketserver.BaseServer and create a unix variaint and use the https://docs.python.org/3/library/socketserver.html#socketserver.ThreadingMixIn if needed
10:20:48 bauzas ioni: can you please provide a paste ?
10:20:53 ioni sure
10:21:02 sean-k-mooney ralonsoh: there may be better wasy i.e. if flask has a unix server or one of our other exsitng deps does
10:21:31 bauzas (with the DEBUG level, but if you want, just modify the compute nodes)
10:22:26 ioni @bauzas, https://paste.xinu.at/ZFZ8ic/
10:22:33 ioni @bauzas, is this what you need?
10:23:02 bauzas ioni: perfect
10:23:17 ioni @bauzas, i will delete the paste when you are done with it
10:23:19 bauzas stephenfin: apparently we have a OSC bug (even with 6.x) ^
10:23:40 ioni that's with 7.1.2 but with 6.6.0 is the same behavior
10:27:02 bauzas ioni: very quickly before I go off, I can see that Nova returns all the instances
10:27:45 bauzas REQ: curl -g -i -X GET "https://xxx.cloud:8774/v2.1/servers/detail?flavor=None&image=None&name=None&project_id=None&reservation_id=None&status=None&user_id=None&deleted=False&host=cj201&ip=None&ip6=None&changes-since=None&changes-before=None&all_tenants=True" -H "Accept: application/json" -H "OpenStack-API-Version: compute 2.95" -H "User-Agent: openstacksdk/4.0.0
10:27:47 bauzas keystoneauth1/5.8.0 python-requests/2.32.3 CPython/3.12.7" -H "X-Auth-Token: {SHA256}7be3037be38c6e0589e4a584f9d26b254f9fd49a435336b9f510b2fbfa64fa65" -H "X-OpenStack-Nova-API-Version: 2.95"
10:27:49 bauzas https://xxx.cloud:8774 "GET /v2.1/servers/detail?deleted=False&host=cj201&all_tenants=True HTTP/11" 200 171022
10:28:22 bauzas but then OSC returns none of them
10:28:35 ioni yes
10:29:30 ioni osc bug, i have an old venv with older versions of pip packages and it works
10:29:40 ioni but not sure in which module of python is the bug
10:29:57 bauzas gtk
10:41:21 stephenfin ioni: bauzas: https://review.opendev.org/c/openstack/openstacksdk/+/929742 https://review.opendev.org/c/openstack/releases/+/930934

Earlier   Later