| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2020-03-03 | |||
| 09:20:02 | openstackgerrit | Lee Yarwood proposed openstack/nova master: libvirt: Use oslo.utils >= 4.1.0 to fetch format-specific image data https://review.opendev.org/710785 | |
| 09:20:03 | openstackgerrit | Lee Yarwood proposed openstack/nova master: libvirt: Always provide the size in bytes when calling virDomainBlockResize https://review.opendev.org/707590 | |
| 09:20:03 | openstackgerrit | Lee Yarwood proposed openstack/nova master: images: Remove Libvirt specific configurable use from qemu_img_info https://review.opendev.org/707591 | |
| 09:20:04 | openstackgerrit | Lee Yarwood proposed openstack/nova master: libvirt: Remove QEMU_VERSION_REQ_SHARED https://review.opendev.org/710239 | |
| 09:38:16 | happyhemant | Hello folks, I am having trouble creating instance with sriov network port. I tried creating normal instance it works really fine but creating it with sriov network port dosent seems to work for me. The logs of nova-conductor shows `No valid host found`. Look at my config of nova and neutron did i miss anything there ? help will be muc appreciated thank you so much | |
| 09:38:16 | happyhemant | https://www.irccloud.com/pastebin/tCZBhkNZ/ | |
| 09:40:47 | happyhemant | nova.conf https://www.irccloud.com/pastebin/4RPX1qJm/ | |
| 09:42:14 | happyhemant | neutron conf https://www.irccloud.com/pastebin/wByQoY60/ | |
| 10:08:08 | stephenfin | happyhemant: That _looks_ correct. Could you give us the output of 'lspci -vvv' and try again with nova-compute in DEBUG mode though? | |
| 10:11:22 | stephenfin | happyhemant: Also, what's the output of '/sys/class/net/eno1/device/sriov_numvfs' ? | |
| 10:12:07 | stephenfin | happyhemant: Are these VFs you're attempting to use or PFs? eno1 sounds like the latter. If so, you need to do some additional configuration | |
| 10:18:31 | happyhemant | stephenfin: Thank you so much for reply so basically i have two computes so the result of `/sys/class/net/eno1/device/sriov_numvfs`this https://www.irccloud.com/pastebin/BSSYQc9T/ | |
| 10:24:02 | happyhemant | stephenfin: also have look lscpi -vvv output https://pastebin.com/raw/XetJLPuD | |
| 10:25:41 | happyhemant | stephenfin: I will also try to add DEBUG mode and will try to redeploy it | |
| 10:28:03 | stephenfin | happyhemant: okay, you've that configured wrong :) | |
| 10:28:48 | stephenfin | you use 'devname' to passthrough a specific device, so what you're asking nova to passthrough is the PFs eno1 and eno2 | |
| 10:28:53 | stephenfin | not their VFs | |
| 10:31:00 | openstackgerrit | Brin Zhang proposed openstack/nova master: WIP Add functional tests for PATCH volume attachments API https://review.opendev.org/710965 | |
| 10:33:00 | stephenfin | happyhemant: so you need to either (a) find and use the product IDs of the VFs or (b) use the PCI addresses instead | |
| 10:34:44 | happyhemant | stephenfin: well thank you so much stephenfin i will try this and will let you know | |
| 10:37:15 | stephenfin | No problem. Let me know if you get it going. There's a guide for this at [1] and if you think we're missing information, I'd encourage you to submit a patch. Even a draft that one of us can finish for you would be good (y) [1] https://docs.openstack.org/neutron/latest/admin/config-sriov.html | |
| 10:58:07 | happyhemant | stephenfin: hey stephenfin hi again `passthrough_whitelist: '[{physical_network": "public", "vendor_id":"10df", "product_id":"0720"}, {"physical_network": "public", "vendor_id":"10df", "product_id":"0720"}]'` this should be good ? ` | |
| 10:58:42 | stephenfin | 0720 is the VF product_id, yeah? | |
| 10:58:48 | stephenfin | and not the PF | |
| 10:59:04 | happyhemant | https://www.irccloud.com/pastebin/VWAbYQER/ | |
| 10:59:05 | stephenfin | (they nearly always have different product_id's) | |
| 10:59:11 | happyhemant | i found this | |
| 10:59:41 | happyhemant | where `VF offset: 32, stride: 1, Device ID: 0720` | |
| 10:59:51 | stephenfin | ah, perfect | |
| 11:00:06 | stephenfin | they'll show up if you do 'lspci -nn' too, I'd imagine | |
| 11:00:38 | stephenfin | in any case, assuming those are correct then that looks good to me | |
| 11:00:52 | stephenfin | make sure you're in DEBUG mode and away you go | |
| 11:01:51 | happyhemant | stephenfin: yeah sure i already enabled debug mode in nova and neutron conf | |
| 11:02:22 | happyhemant | i am newbie but thanks for 'lspci -nn' `04:00.0 Ethernet controller [0200]: Emulex Corporation OneConnect NIC (Skyhawk) [10df:0720] (rev 10)` | |
| 11:02:29 | happyhemant | this is what i got | |
| 11:02:41 | happyhemant | so i think i am good to go to try this out | |
| 11:02:48 | stephenfin | hmm, not sure that's right | |
| 11:03:13 | stephenfin | what about 'lspci -nn | grep 04:04.0' ? | |
| 11:03:44 | stephenfin | happyhemant: ^ | |
| 11:04:31 | happyhemant | https://www.irccloud.com/pastebin/3Y9y6QdG/ | |
| 11:05:03 | happyhemant | stephenfin: ^ | |
| 11:05:35 | stephenfin | So they use the same product_id. Lovely | |
| 11:05:46 | stephenfin | okay, I think nova will just filter out the PFs so you should be good to go still | |
| 11:05:54 | stephenfin | try that and let me know how it goes | |
| 11:06:43 | happyhemant | stephenfin: but does this sound reasonable to you ? `passthrough_whitelist: '[{"physical_network": "public", "vendor_id":"10df", "product_id":"0720"}, { "physical_network": "public", "vendor_id":"10df", "product_id":"0720"}]' | |
| 11:07:17 | stephenfin | Mostly. You don't need to specify it twice since they say the same thing now, right? | |
| 11:07:31 | happyhemant | yeah | |
| 11:07:48 | happyhemant | thats my question shall specify it one time ? | |
| 11:08:23 | stephenfin | just once, yeah | |
| 11:09:05 | happyhemant | stephenfin: cool will let you know if it works or not | |
| 11:21:39 | happyhemant | stephenfin: i think the conf is not good for me i am missing something ` Invalid PCI devices Whitelist config: Invalid entry: 'map[physical_network:public product_id:0720 vendor_id:10df]'` | |
| 11:22:40 | happyhemant | `passthrough_whitelist: [{ "physical_network": "public", "vendor_id":"10df", "product_id":"0720" }]`this is what i have right now | |
| 11:23:18 | stephenfin | I'm assuming you're using some deployment too. Does it need to be escaped or anything, seeing as it's JSON in a string | |
| 11:25:16 | happyhemant | yes i am using deployment https://www.irccloud.com/pastebin/Uu9vQV2e/ | |
| 11:26:17 | happyhemant | i have no idea tbh | |
| 11:31:46 | stephenfin | happyhemant: Can you put that into a string | |
| 11:31:55 | stephenfin | so passthrough_whitelist: '[{ "physical_network": "public", "vendor_id":"10df", "product_id":"0720" }]' | |
| 11:32:07 | stephenfin | (notice the extra quotes) | |
| 11:32:26 | happyhemant | stephenfin: heyy i think i found out i was missing '' this :( | |
| 11:32:30 | happyhemant | my bad sorry | |
| 11:33:12 | happyhemant | missing quotes sometimes blows your mind :D | |
| 11:39:09 | happyhemant | https://www.irccloud.com/pastebin/etoeESAh/ | |
| 11:39:54 | happyhemant | stephenfin: i created two instances but result is still the same :( https://www.irccloud.com/pastebin/9xC23uMj/ | |
| 11:40:16 | stephenfin | Damn. What are the logs saying? | |
| 11:40:46 | stephenfin | and how are you creating the ports and instances? openstackclient? Can you share the commands you're executing? | |
| 11:40:56 | happyhemant | nova-conductor https://www.irccloud.com/pastebin/UnFf1AUh/ | |
| 11:41:04 | happyhemant | yes using openstackclient | |
| 11:41:40 | stephenfin | what about nova-scheduler? | |
| 11:42:20 | happyhemant | nova-schedular https://www.irccloud.com/pastebin/1cafm67C/ | |
| 11:43:19 | happyhemant | for creating instance i have some script https://www.irccloud.com/pastebin/GNNjRZbJ/ | |
| 11:43:47 | happyhemant | so at the end i do `create_sriov <name> <flavor-name>` | |
| 11:46:42 | stephenfin | happyhemant: Okay, unfortunately I'm not sure how much debug logging there is for this stuff so you might need to hack on the code a little to figure out what's going wrong. It's a misconfiguration but I can't figure out where :-\ | |
| 11:47:26 | stephenfin | happyhemant: The code you want is in 'nova/pci/stats.py'. The 'PciPassthroughFilter' calls that | |
| 11:49:32 | stephenfin | happyhemant: If you go stick in a load of debug logging in that file, restart the services and then try again, you should be able to grok what's going on. For example, it would be good to ensure '_filter_pools_for_spec' is returning something https://github.com/openstack/nova/blob/master/nova/pci/stats.py#L328 | |
| 11:50:20 | stephenfin | so literally add 'LOG.debug('Got matching_pools: %r', matching_pools)' after that line | |
| 11:50:52 | stephenfin | ditto for every other 'matching_pools' assignment. That will let us figure out what's causing the PCI devices to be dropped | |
| 11:52:07 | happyhemant | stephenfin: thanks stephenfin again i will dig in more into that code i am not much familiar but will try to find out. Btw i use the same config with queens and it worked for me without any error | |
| 11:52:24 | stephenfin | what version are you on now? | |
| 11:52:41 | happyhemant | i am using master branch | |
| 11:53:42 | stephenfin | yeah, not a lot has changed there in a few releases. The only changes we made was the ability to configure NUMA affinity, but that won't affect you since you're not using that feature | |
| 11:53:57 | stephenfin | hence my thought that it's some configuration issue that we just haven't spotted | |
| 11:54:05 | stephenfin | anyway | |
| 11:54:49 | happyhemant | no problem but let me know if you find something and bon appetit | |
| 11:55:03 | happyhemant | i will try to dig in more | |
| 13:09:25 | openstackgerrit | Balazs Gibizer proposed openstack/nova master: WIP: Hey let's support routed networks y'all! https://review.opendev.org/656885 | |
| 13:18:30 | Sundar | dansmith, sean-k-mooney, gibi, efried, brinzhang: Re. https://review.opendev.org/#/c/674726/3/nova/exception.py@159 , if the client attempts an operation despite documentation that it is unsupported, is that not a client error? | |
| 13:21:44 | gibi | Sundar: for me it is a client error. but I have no hard oppinion on 400 or 403 both works for me | |
| 13:21:51 | gibi | alex_xu: ^^ ? | |
| 13:22:18 | brinzhang_ | gibi, Sundar, me too. | |
| 13:22:34 | brinzhang_ | 400 or 403 all works good for me | |
| 13:26:09 | Sundar | gibi, brinzhang_: It is currently handled in https://review.opendev.org/#/c/674726/3/nova/api/openstack/compute/servers.py@758 . However, the resulting error code is not 403, but is 500. I am still looking into that. Off the top of your head, do you see why? | |
| 13:27:46 | gibi | Sundar: are you sure that you hit Line 760 in your test? | |
| 13:30:32 | gibi | Sundar: as at a first glance your code looks correct | |
| 13:31:01 | Sundar30 | Sorry, got disconnected due to network issues. | |
| 13:31:54 | gibi | 14:27 < gibi> Sundar: are you sure that you hit Line 760 in your test? | |
| 13:31:54 | gibi | 14:30 < gibi> Sundar: as at a first glance your code looks correct | |
| 13:33:28 | Sundar30 | gibi: I'll double check that. Without that, one should have got 403 error code. | |
| 13:34:08 | Sundar30 | Back in 10 min. | |
| 13:36:16 | gibi | Sundar30: I'm on a meeting for 90 minutes so it will take time to answere | |
| 13:39:20 | brinzhang_ | Sundar30: How about inherit Forbidden class? it's code also 403, and your case is suitable for Forbidden, just need to override msg_fmt, do you think so? | |