Earlier  
Posted Nick Remark
#openstack-nova - 2020-08-26
16:14:22 rmart04 yes
16:14:27 sean-k-mooney ok then that makes sense
16:14:37 sean-k-mooney otherwise i was wondering how the vm booted :)
16:15:03 rmart04 I managed to get over that hurdle :P
16:15:17 sean-k-mooney rmart04: you should see >20% incresse form hugepages in most workloads
16:15:27 sean-k-mooney more if its memory or io bound
16:15:35 sean-k-mooney less if it compute bound
16:15:41 sean-k-mooney or disk bound
16:17:50 rmart04 ok great, thanks for all your help
16:18:38 sean-k-mooney by the way the reason i ask about oversubsrcitip is hugepage cant be swapped out ot disk but they also will never be reap as a result of OOM
16:18:56 sean-k-mooney so it shoudl solve your issue although there is a very small change that the qemu process can still be selected
16:20:00 sean-k-mooney qemu will be using relitvly little non hugepage memeory in this config so it will have a low memery pressur score vs other process and memeory will be balance evenly across both host numa nodes for the vm
16:20:53 yoctozepto morning nova folks - today's question is when nova compute host name can get different from nova hypervisor host name and how
16:21:43 sean-k-mooney yoctozepto: it will be different for ironic
16:22:00 yoctozepto sean-k-mooney: true, let's focus on nova+kvm :-)
16:22:16 sean-k-mooney out side of that it shoudl be the same unless you set teh HOST config element or you add a fqdn to you /etc/hostname
16:22:17 yoctozepto actually evaluating noonedeadpunk's https://review.opendev.org/728629 (for masakari)
16:23:03 stephenfin yoctozepto: You can manually override '[DEFAULT] host'
16:23:09 sean-k-mooney yoctozepto: this is how its set https://github.com/openstack/nova/blob/master/nova/conf/netconf.py#L50-L70
16:23:19 stephenfin it defaults to socket.gethostname()
16:23:24 stephenfin what sean-k-mooney just linked to
16:23:33 sean-k-mooney yep
16:23:42 sean-k-mooney so they should be the same unless you change that config option
16:24:04 sean-k-mooney if you use socket.fqdn() in your code it may not agreee
16:24:08 sean-k-mooney i fixed this in cyborg
16:24:14 yoctozepto then I would be changing the thing for nova-compute but not for the hypervisor, right?
16:24:32 sean-k-mooney yes
16:24:46 sean-k-mooney if you set [default]/host to something
16:25:03 yoctozepto ok, so where does the name for the hypervisor spawn and how's it kept linked? :D
16:25:03 sean-k-mooney hyperviour_hostname and host will not be the same for libvirt
16:25:08 sean-k-mooney or other virt dirvers
16:25:54 sean-k-mooney host is the compute service host and is set by that config and hypervisor_hostname is set by the virt driver
16:26:04 openstackgerrit Stephen Finucane proposed openstack/nova master: functional: Don't inherit from 'ProviderUsageBaseTestCase' https://review.opendev.org/748271
16:26:13 sean-k-mooney the libvirt driver get it form libvirt
16:26:25 sean-k-mooney and it calls socket.gethostname internally in c
16:26:29 stephenfin bauzas: https://review.opendev.org/748271
16:26:52 sean-k-mooney socket.gethostname is a fucntion provided by libc and pythons socket module jsut call the libc version
16:27:19 sean-k-mooney socket.gethostname() reads /etc/hostname if it exits on linux
16:27:23 yoctozepto sean-k-mooney: ah, so it's consulted each time with libvirt? I guess that's why I had a hard time figuring this one out
16:27:32 sean-k-mooney yes
16:27:37 yoctozepto yeah, the rest makes sense
16:27:40 stephenfin sean-k-mooney: https://review.opendev.org/#/c/748250/
16:27:49 yoctozepto I do wonder how noonedeadpunk (and some others) ended up desynchronizing them
16:28:05 bauzas stephenfin: I don't get your comment, you're saying you can't just use the InstanceMixin ?
16:28:08 noonedeadpunk I have situnation where socket.gethostname and socket.getfqdn are different things
16:28:13 bauzas stephenfin: directly I mean ?
16:28:31 yoctozepto noonedeadpunk: hmm, ah
16:28:40 yoctozepto but then sean-k-mooney was only about gethostname
16:28:52 yoctozepto you mean libvirt is actually doing getfqdn?
16:28:52 bauzas stephenfin: of course, you'd have to specify the latest microversion but is that terrible to do ?
16:29:01 stephenfin bauzas: Not really. I'd have to copy-paste all of this https://github.com/openstack/nova/blob/master/nova/tests/functional/integrated_helpers.py#L1107-L1132
16:29:10 sean-k-mooney yoctozepto: no its getting the hostname
16:29:23 stephenfin bauzas: Which seems worse than having functions available that I'm not using
16:29:51 noonedeadpunk sean-k-mooney: but I think that libvirt checks for the socket.getfqdn...
16:29:52 sean-k-mooney stephenfin: lol ok
16:29:54 stephenfin '_IntegratedTestBase' is basically what you're asking for but with all that boilerplate inline
16:29:59 yoctozepto then there is a conflict between your testimonies, noonedeadpunk and sean-k-mooney :-)
16:30:00 sean-k-mooney noonedeadpunk: it does not
16:30:05 yoctozepto investigation ongoing!
16:30:07 yoctozepto :D
16:30:12 sean-k-mooney noonedeadpunk: unless they changed it wich would be a breaking change
16:30:20 stephenfin there are some differences around policy but I'm resolving those in separate patches
16:30:57 noonedeadpunk sean-k-mooney: http://paste.openstack.org/show/797181/
16:31:03 yoctozepto https://github.com/libvirt/libvirt/blob/7ba4838a18afb609d900190c57b0cbfb842ccbdf/src/util/virutil.c#L470
16:31:08 noonedeadpunk I can judge only by this...
16:31:25 stephenfin melwitt: want to unbork cloning on Windows? https://review.opendev.org/#/c/748250/
16:31:43 yoctozepto it seems they are training to canonicalize on master
16:31:51 yoctozepto that's how they ended up with an fqdn
16:31:55 bauzas stephenfin: technically, you'd need to do things like https://github.com/openstack/nova/blob/master/nova/tests/functional/regressions/test_bug_1849409.py
16:32:09 sean-k-mooney yoctozepto: noonedeadpunk we cant change this behavior
16:32:12 yoctozepto so yeah, they b0rked
16:32:14 sean-k-mooney its used in plamcnet
16:32:14 bauzas stephenfin: but that should be it
16:32:27 yoctozepto sean-k-mooney: what's plamcnet? ;d
16:32:42 noonedeadpunk sean-k-mooney: yeah, that's fine) just sharing feedback about fqdn vs gethostname - fighting this 3 years I guess...
16:32:49 sean-k-mooney the placement service
16:32:56 yoctozepto noonedeadpunk: but now we know
16:32:58 yoctozepto sean-k-mooney: ack
16:33:23 elod lyarwood: no need to squash, it's good as it is. will review now
16:33:31 sean-k-mooney noonedeadpunk: it is technially allowed to return an fqdn if you put an fqdn in /etc/hostname which you should not do but some people do
16:33:33 stephenfin bauzas: Yes, but those are nearly identical. The only difference is the use of the CinderFixture and fake image service (essentially GlanceFixture)
16:33:34 yoctozepto ok, this was a very worthwhile chat, thanks sean-k-mooney, stephenfin and noonedeadpunk
16:33:52 yoctozepto sean-k-mooney: you can also get trapped by dns
16:33:58 stephenfin bauzas: oh, and the cast as call
16:34:05 sean-k-mooney the masikari patch is not correct by the way
16:34:10 melwitt stephenfin: sure, but curious what does your comment mean about sphinx not finding the reno? does that mean the release note will disappear from the release notes? I had thought it would still be included even if the name is changed?
16:34:29 yoctozepto sean-k-mooney: any reviews appreciated!
16:34:35 yoctozepto any and all* I mean
16:34:41 stephenfin melwitt: it'll find the reno with the new name but complain about a file matching the old name being missing
16:34:51 bauzas stephenfin: yup, we would probably just need another base testclass which wouldn't pull all the placementesque methods
16:34:52 sean-k-mooney yoctozepto: the seach is using hyperviour_hostname in the host filed
16:34:54 noonedeadpunk sean-k-mooney: it's more complicated than that.. In /etc/hostname I have uacloud-nova03. But the thing is that python gets it not from /etc/hostname, but from /etc/hosts
16:34:56 stephenfin i.e. "this existed in the past but I can't find it now; skipping"
16:35:01 sean-k-mooney that only works for libvirt
16:35:09 melwitt stephenfin: ah ok. thanks
16:35:11 bauzas stephenfin: but in the meantime, instancemixin seems better to use IMHO + those extra lines
16:35:13 yoctozepto sean-k-mooney: nah, that's bad naming
16:35:28 stephenfin bauzas: We have it. It's call '_IntegratedTestBase'
16:35:29 yoctozepto actually masakari uses this-called-string for corosync and nova-compute
16:35:36 yoctozepto and asssumes that they are the same

Earlier   Later