Earlier  
Posted Nick Remark
#openstack-nova - 2024-09-05
19:50:45 sean-k-mooney JayF: i assume an admin could just manually set the lessee on the ironic node if they wanted too
19:51:59 JayF We do not have an ironic-manage command, I was just going to add something to our tools/ directory
19:52:24 JayF basically just for each ironic node with non-null instance_uuid, check nova for instance owner, and set it on the node
19:52:44 JayF with probably an option for shard (so you can do N processes to parallelize)
19:53:06 sean-k-mooney JayF: oh really so you dont have an ironic-manage db_sync?
19:53:16 sean-k-mooney how do ye manage db upgrade in ironic?
19:53:19 JayF I thought it was ironic-dbsync?
19:53:20 JayF IMBW
19:53:58 sean-k-mooney yep https://opendev.org/openstack/ironic/src/branch/master/setup.cfg#L49
19:54:23 sean-k-mooney ok i tought <project>-manage was the normal convention for that tool
19:54:34 sean-k-mooney but i ugess there is no really reason not to call it something else
19:54:56 sean-k-mooney ok actully stoping for today this time o/
19:54:58 JayF yeah and TBH, with my operator hat on, I prefer tools like this not to require the whole app
19:55:19 JayF (pip install nova to get nova-manage just feels overkill, even if it's not, really)
19:55:53 sean-k-mooney well its internally using the same oslo version object and db fucntion ectra
19:56:06 sean-k-mooney but ya we normally intend it to be run form where the conductor is
19:56:17 JayF yeah, in this case though, I want to write a tool that's 100% API-shaped, no db magic needed
19:56:23 sean-k-mooney it can be run remotely but that not what we expect peopel to do
19:56:32 JayF I can tell you I've worked zero places that ran it, at upgrade time, from a nova-anything :)
19:56:34 sean-k-mooney right makes sense
19:57:15 sean-k-mooney well its normally ran form yoru openstack contoler nodes
19:57:44 sean-k-mooney in contaieriesed installer yousually the nova-conductor container just because it already had the correct configs
19:58:23 sean-k-mooney we have discussed having the conductore be able to just do it automatically in teh past when its starts
19:58:36 sean-k-mooney but that alway felt a little too much out fo scope
20:01:25 JayF yeah most places I worked did "N" version upgrades at once, so we'd just have someone spin up a dedicated machine that we'd upgrade through the intermediate versions to do all the migrations
20:01:52 JayF we went O->U at one place using that kinda model
23:08:58 opendevreview melanie witt proposed openstack/nova master: docs: Change note:: to warning:: for service user token https://review.opendev.org/c/openstack/nova/+/928308
#openstack-nova - 2024-09-06
00:27:02 opendevreview melanie witt proposed openstack/nova master: docs: Show the recommended way to PXE boot an instance https://review.opendev.org/c/openstack/nova/+/928309
02:11:11 opendevreview sean mooney proposed openstack/nova master: [WIP] Add functional repoducer for ephemeral disks https://review.opendev.org/c/openstack/nova/+/928310
08:10:56 elodilles melwitt: sean-k-mooney explained perfectly o:) thanks sean-k-mooney o/
11:07:13 opendevreview Fabian Wiesel proposed openstack/nova master: Vmware: Remove uuid parameter from get_vmdk_info call https://review.opendev.org/c/openstack/nova/+/910627
13:08:23 opendevreview OpenStack Release Bot proposed openstack/os-vif stable/2024.2: Update .gitreview for stable/2024.2 https://review.opendev.org/c/openstack/os-vif/+/928353
13:08:25 opendevreview OpenStack Release Bot proposed openstack/os-vif stable/2024.2: Update TOX_CONSTRAINTS_FILE for stable/2024.2 https://review.opendev.org/c/openstack/os-vif/+/928355
13:08:27 opendevreview OpenStack Release Bot proposed openstack/os-vif master: Update master for stable/2024.2 https://review.opendev.org/c/openstack/os-vif/+/928356
13:08:31 opendevreview OpenStack Release Bot proposed openstack/osc-placement stable/2024.2: Update .gitreview for stable/2024.2 https://review.opendev.org/c/openstack/osc-placement/+/928358
13:08:33 opendevreview OpenStack Release Bot proposed openstack/osc-placement stable/2024.2: Update TOX_CONSTRAINTS_FILE for stable/2024.2 https://review.opendev.org/c/openstack/osc-placement/+/928359
13:08:34 opendevreview OpenStack Release Bot proposed openstack/osc-placement master: Update master for stable/2024.2 https://review.opendev.org/c/openstack/osc-placement/+/928360
13:08:42 opendevreview OpenStack Release Bot proposed openstack/python-novaclient stable/2024.2: Update .gitreview for stable/2024.2 https://review.opendev.org/c/openstack/python-novaclient/+/928363
13:08:43 opendevreview OpenStack Release Bot proposed openstack/python-novaclient stable/2024.2: Update TOX_CONSTRAINTS_FILE for stable/2024.2 https://review.opendev.org/c/openstack/python-novaclient/+/928364
13:08:44 opendevreview OpenStack Release Bot proposed openstack/python-novaclient master: Update master for stable/2024.2 https://review.opendev.org/c/openstack/python-novaclient/+/928366
13:38:45 sean-k-mooney dansmith: so i tought i had a fix for https://review.opendev.org/c/openstack/nova/+/928310/1/nova/tests/functional/regressions/test_bug_backing_file_partion_tables.py
13:39:05 sean-k-mooney and then whe i treid it i reasised that its more complex then i hoped
13:39:57 sean-k-mooney tl;dr is the mbr/gpt inspector is not only looking for a gpt partion table to exist its also looking for a os partion
13:40:22 sean-k-mooney for epmeral and swap disk that is not really a valid expecatoin
13:40:56 sean-k-mooney so just addign a gpt tabel and vfat partion is not enough to pass the safty check
13:42:17 dansmith It's not looking at the gpt part at all,
13:42:26 dansmith it's looking at the PMBR to make sure you have the right single entry
13:42:59 sean-k-mooney yes its looking at the mbr part
13:44:15 dansmith the mbr needs to have at least one partition that is not type EE, or a single type EE starting at the first sector
13:44:56 sean-k-mooney i likely can make that happen
13:45:18 sean-k-mooney but using our existign create partion tbale and create partion functions didnt seam to be enough
13:45:52 dansmith can you show me fdisk -l of what we create?
13:46:25 sean-k-mooney sure ill need to recreate the image but ill chuck taht in termbin in a sec
13:49:02 sean-k-mooney https://termbin.com/86m6
13:49:29 sean-k-mooney i can get it to pass the first test_create_file but not test_cache_file
13:49:51 opendevreview Merged openstack/os-vif master: Update master for stable/2024.2 https://review.opendev.org/c/openstack/os-vif/+/928356
13:50:11 dansmith okay that doesn't show the mbr part because it skips right over, but must have a real pmbr
13:50:28 dansmith can you grab just the first like 4k of that and post it for me somewhere?
13:50:36 dansmith (if it's easy)
13:51:38 sean-k-mooney sure i have this running in a debugger adn im stop right after we hcage created the image but before we call mkfs on it
13:51:54 sean-k-mooney im wonder fi that will alter the output but ill grab the first 4k first and then proceed
13:52:16 dansmith hmm, how is mkfs going to run on just the partition of a file?
13:52:27 dansmith ...without kpartx or something
13:52:52 sean-k-mooney im actully expecting it to recreate teh gpt and partion table
13:52:59 dansmith mkfs will definitely not do that
13:53:14 sean-k-mooney ok then we might need to actuly loop mount it
13:53:17 dansmith if you run mkfs on a file it will create a filesystem starting at byte/sector 0 in the file, wiping the table
13:53:26 sean-k-mooney the current code calls mkfs direcly on the file
13:54:02 dansmith okay so maybe we're creating a partition table for the unformatted case, but if we format with a filesystem, we immediately blow that away and then hand the guest a whole-disk filesystem with no partition table?
13:54:03 sean-k-mooney ya so that might be the problem im coing to quickly copy that file and leave mkfs run
13:54:34 dansmith and to be clear, changing that is not easy
13:54:39 sean-k-mooney dansmith: so creating the partition tabel and partion was what i added to try and "fix" this
13:54:47 sean-k-mooney the exisign code just ran mkfs on the file
13:54:50 dansmith oh okay
13:55:00 sean-k-mooney or block device depending on the code path
13:55:24 dansmith but we were creating a fs in the file and that was being detected as GPT?
13:56:13 sean-k-mooney i can comment out my changes and verify i think it was detecated as a flatfile before but when used as a backinf file we expected something differnt
13:56:55 sean-k-mooney its proably better if i copy the files to a file share so you can look at it and also comment out the code i added to see the behavior before and after
13:57:23 dansmith and was this with vfat? because apparently vfat looks a lot like an MBR (unsurprisingly)
13:57:37 dansmith so maybe that inspector needs to look for something specific to not think fat is an MBR
13:58:26 sean-k-mooney ya so i chose vfat for the repoducer beacuse it is what we use if you dont specify a a format in the config and os_type is not set in the galnce image
13:58:58 sean-k-mooney if ostype is set in the glance iamge we will either use ntfs or ext4 but you have everal options for the config option
13:59:33 dansmith lol yep, vfat has a boot record and the same signature as an MBR in the first sector
13:59:39 dansmith thanks a lot 1980s MSFT
14:00:09 sean-k-mooney ok that might be the issue
14:00:16 dansmith "boot record" meaning 16-bit real-mode x86 executable code to show the message "this is not a bootable disk" :D
14:00:45 dansmith I have to run do something but when I get back I'll see what I can do to not be fooled into thinking a vfat is an MBR, but we'll see
14:01:24 dansmith still seems like we should be able to skip the backing file and skip the safety check on blank disks we create ourselves
14:01:28 sean-k-mooney well we have a few options but ya lets talk about it later
14:01:30 dansmith brb
14:02:13 sean-k-mooney yep i was also goign to explore that route by adding a flag to the image backend create_image to say if we should safty check it
14:02:37 sean-k-mooney but before doing that i wanted to see if i could avoid chaning the interface
14:04:41 sean-k-mooney https://fileshare.seanmooney.info/ephemeral_before_mkfs.img and https://fileshare.seanmooney.info/ephemeral_after_mkfs.img are teh relevent images, so the mkfs call undid what i was trying to do so that what nova produces today
14:05:22 sean-k-mooney this is the fdisk output https://termbin.com/bvvp
14:06:26 sean-k-mooney i renamed the files to .img and fixed the hardcoded extion im doing localy so ignore the fact it refecnce .qcow in the output
14:06:45 sean-k-mooney we alway use raw backing files for epmeral disks
14:07:09 sean-k-mooney well or ploop for openvz but we can ignore that
14:07:28 sean-k-mooney that proably broken too now but i dont think we care as much
14:08:43 sean-k-mooney we have not had any testing of openvz/Virtuozzo supprort for years so its unlikely that even still works without this
14:20:02 dansmith yeah, mkfs will definitely overwrite the partition table bits, the problem is vfat creates one again itself and adds a boot record (because it's actually a partition within a partition)

Earlier   Later