Earlier  
Posted Nick Remark
#openstack-nova - 2020-02-19
15:29:16 gibi for me the cyborg fake driver created FPGA rc and inventory with a CUSTOM_FAKE_DEVICE trait
15:29:19 dansmith yeah, looking for the former
15:29:59 dansmith now I get complaints about two traits that don't exist, so I guess I need to create those too?
15:31:02 gibi dansmith: can it be that you need to create a device profile that asks for FPGA resource and some fake device ?
15:31:24 dansmith gibi: I dunno, I was expecting this to all kinda be done for me in devstack, so I'm not sure what I'm expected to do
15:31:31 dansmith gibi: did you get it working?
15:31:45 gibi dansmith: the device profile Sundar's script describes does not match with what the fake driver provides
15:32:20 gibi dansmith: I was able to stack a devstack but did not created any device profile yet to consume
15:32:34 dansmith yeah, I'm right about there myself
15:33:02 gibi dansmith: I think the mistmatch is in http://paste.openstack.org/show/789709/ Sundar provided. Those examples are not aligned with the fake driver
15:33:45 dansmith okay
15:33:54 gibi we nead sean-k-mooney to show us what kind of device profile he uses
15:34:11 dansmith yeah he said he was going to do that this morning I think
15:34:51 gibi sorry I have to leave for today :/ I will read back tomorrow
15:34:56 dansmith o/
15:35:03 gibi o/
15:38:01 dansmith it also seems like there is a bunch in that "script" that could/should be replaced with client calls
15:38:06 dansmith instead of curl'ing everything
15:39:11 openstackgerrit Dongcan Ye proposed openstack/nova master: libvirt: Check the guest support UEFI https://review.opendev.org/685678
15:48:13 dansmith efried: is there any way in the placement osc client to tell what providers are parent/child of each other?
15:48:47 efried dansmith: Almost sure you can see parent RP IDs, but there's not going to be like a tree view or anything.
15:49:01 dansmith do I need a microversion for that?
15:49:05 dansmith in rp show, I don't see anything
15:49:37 dansmith ah yeah, picked a random higher microversion and I see parent_uuid
15:49:46 efried dansmith: there's a --in-tree
15:50:09 dansmith so, the cyborg fake driver is creating a RP peer to the compute node RP, not in a tree
15:50:36 efried oops :P
15:50:43 dansmith I've been kinda punting on looking at how these are modeled, but... is that how it's supposed to be? are we using aggregates to associate those?
15:50:50 efried (I would set OS_PLACEMENT_API_VERSION=1.36 so you don't have to worry about it anymore)
15:51:05 efried No, it's supposed to be a child of the compute node
15:51:18 dansmith okay
15:51:19 efried unless something drastic changed about the design.
15:51:21 dansmith thought so
15:52:11 dansmith dan@guaranine:~$
15:52:11 dansmith efried: btw, Invalid placement client version '1.36'. must be one of: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10, 1.11, 1.12, 1.13, 1.14, 1.15, 1.16, 1.17, 1.18, 1.19, 1.20, 1.21, 1.22, 1.28
15:53:00 efried That's an odd max version, middle of rocky.
15:53:30 efried oh, unless the osc commands individually cap, which they very well might :(
15:53:48 dansmith ugh, osc version handling sucks so bad
15:53:50 openstackgerrit Lee Yarwood proposed openstack/nova master: images: Allow the output format of qemu-img info to be controlled https://review.opendev.org/706898
15:53:50 openstackgerrit Lee Yarwood proposed openstack/nova master: images: Move qemu-img info calls into privsep https://review.opendev.org/706897
15:53:51 openstackgerrit Lee Yarwood proposed openstack/nova master: libvirt: Correctly resize encrypted LUKSv1 volumes https://review.opendev.org/706900
15:53:51 openstackgerrit Lee Yarwood proposed openstack/nova master: virt: Pass request context to extend_volume https://review.opendev.org/706899
15:53:52 openstackgerrit Lee Yarwood proposed openstack/nova master: DNM - Test TEMPEST_EXTEND_ATTACHED_ENCRYPTED_VOLUME https://review.opendev.org/707593
15:53:53 efried so, never mind, that env var isn't helpful. Yes, agree.
15:54:28 dansmith every time I have to tell people to specify a specific version to do some thing I die a little inside
15:54:30 efried I'm sure it came from a place of, "This command has only been coded to handle up to microversion X, so using anything higher might blow it up, so let's cap it"
15:54:37 dansmith yeah
15:55:02 dansmith and that's fine, but I should be able to specify a max, or have it use its own max when in CLI mode like we do in nova
15:55:19 efried right, you should be able to say 'latest' and have it do the latter.
15:55:29 dansmith so,
15:55:44 dansmith it looks like the fake driver just exports devices and something in cyborg itself is what creates the providers
15:56:20 dansmith which really shouldn't happen without a parent, AFAICT, so I guess cyborg itself has a bug, both in how it is creating the provider, and that it is agreeing to create one as a root
16:10:35 sean-k-mooney dansmith: you mean in how the cyborg agent on the compute node does an rpc call to the conductor to create and update then placment RP form a perodic task
16:10:53 sean-k-mooney because yse i think that is also an architural bug
16:11:06 dansmith not sure I parsed that
16:11:24 dansmith sean-k-mooney: there should be an RP created by cyborg, which is a child of the compute node provider right?
16:11:27 sean-k-mooney the cyborg agents dont call placement to create the RPs or update them
16:11:33 sean-k-mooney yes
16:11:56 dansmith sean-k-mooney: in my stack, cyborg has created a root provider called "FakeDevice", not child under the compute node
16:12:10 sean-k-mooney in my case its a child
16:12:35 dansmith okay, not sure how that got screwed up for me, but this is basically a virgin stack
16:13:13 sean-k-mooney am it could be down to the oder in which they started
16:13:23 sean-k-mooney or if the config name is not correct in the cyborg config
16:13:33 dansmith that's a bug then,
16:13:34 dansmith because it shouldn't create it as a root if it doesn't find the parent
16:13:42 sean-k-mooney ya
16:14:03 sean-k-mooney it should likely fail to start the agent and complain loudly in the log
16:14:09 dansmith yes
16:14:22 dansmith I don't have a hostname configured in my cyborg.conf, if that's what you mean
16:14:22 sean-k-mooney but it think that is a sideffect fo the fact the agentd dont create or manage the RPs
16:14:42 dansmith it shouldn't matter
16:14:52 dansmith if you need a uuid for the parent and don't find one, you should not create a root one
16:15:09 sean-k-mooney the [DEFAULT]/host option
16:15:18 sean-k-mooney yes
16:15:21 sean-k-mooney well
16:15:23 sean-k-mooney actully no
16:15:38 sean-k-mooney so in the case where cyborg is managning a device on a node that is not a compute node you should
16:15:45 sean-k-mooney there cinder like use case
16:15:46 dansmith sure, but not in this case
16:15:51 sean-k-mooney ya
16:16:02 sean-k-mooney im not sure they have a way to tell however
16:16:09 dansmith well, then *that* is broken :)
16:16:31 sean-k-mooney ya they may have or need a is_compute_node config option
16:16:35 dansmith so are you thinking that I could delete the provider and restart the conductor and have it re-create it?
16:16:49 sean-k-mooney yes
16:17:19 sean-k-mooney i dont know if it will work but i think it should
16:18:17 dansmith 9-700a-4401-915f-3a9036bf4d4a - - - - -] Error, provider guaranine can not be found: IndexError: list index out of range
16:18:40 dansmith but my compute node provider is the fqdn
16:19:08 sean-k-mooney it could be a fqdn vs host name issue
16:19:18 dansmith the log is full of those errors, yet it's returning None from the _get_root_provider() which is letting it create it without a parent
16:19:34 dansmith so if it's really an error (as evidenced by the log level) it should not be just silently returning None and creating the provider anyway
16:19:46 dansmith is cyborg on storyboard?
16:22:00 sean-k-mooney :( yes i think so
16:22:26 dansmith guh, it's nearly empty
16:22:33 dansmith how do I file a bug? create a new story?
16:26:15 sean-k-mooney dansmith: sorry on downstream call but yes i think storybord unfrotunetly
16:27:28 dansmith lol, got a 400 and a 500 from storyboard while trying to save my bug
16:36:06 dansmith sean-k-mooney: ah, I missed it but I did get host=$short in my cyborg.conf file
16:38:25 dansmith deleting the provider, updating the conf, restarting the agent fixed me
16:42:55 sean-k-mooney cool

Earlier   Later