Earlier  
Posted Nick Remark
#openstack-nova - 2021-05-06
10:11:12 sean-k-mooney https://bugzilla.redhat.com/show_bug.cgi?id=1900500 and https://bugzilla.redhat.com/show_bug.cgi?id=1952073
10:11:12 openstack bugzilla.redhat.com bug 1900500 in openstack-neutron "Hostname in neutron agent's config don't match what is stored in placement by nova" [High,New] - Assigned to skaplons
10:11:12 openstack bugzilla.redhat.com bug 1900500 in openstack-neutron "Hostname in neutron agent's config don't match what is stored in placement by nova" [High,New] - Assigned to skaplons
10:11:13 openstack bugzilla.redhat.com bug 1952073 in openstack-nova "[OSP16.1] Failed to schedule VMs with minimum bandwidth - SR-IOV bandwidth aware scheduling" [High,Closed: duplicate] - Assigned to nova-maint
10:11:13 openstack bugzilla.redhat.com bug 1952073 in openstack-nova "[OSP16.1] Failed to schedule VMs with minimum bandwidth - SR-IOV bandwidth aware scheduling" [High,Closed: duplicate] - Assigned to nova-maint
10:11:14 sean-k-mooney are basically caused by this
10:11:14 sean-k-mooney are basically caused by this
10:11:21 sean-k-mooney they could use the config options
10:11:21 sean-k-mooney they could use the config options
10:11:35 gibi the fix was the config opiton
10:11:35 gibi the fix was the config opiton
10:11:38 gibi option
10:11:38 gibi option
10:11:51 gibi I don't get why they don't use it
10:11:51 gibi I don't get why they don't use it
10:11:56 gibi why they cannot use it
10:11:56 gibi why they cannot use it
10:12:16 sean-k-mooney they could but really neutron should use the hypervior api no?
10:12:16 sean-k-mooney they could but really neutron should use the hypervior api no?
10:13:18 sean-k-mooney gibi: they can totally workaround it using the config options
10:13:18 sean-k-mooney gibi: they can totally workaround it using the config options
10:13:19 gibi I assume this naming is static so it can be configured deployment time
10:13:19 gibi I assume this naming is static so it can be configured deployment time
10:13:38 sean-k-mooney it could but the UX of that approch sucks
10:13:38 sean-k-mooney it could but the UX of that approch sucks
10:14:05 sean-k-mooney it works but it would be nice if it just worked out of hte box
10:14:05 sean-k-mooney it works but it would be nice if it just worked out of hte box
10:14:46 gibi I don't get how this can be working without input from the deployer who know what are the matching host names
10:14:46 gibi I don't get how this can be working without input from the deployer who know what are the matching host names
10:15:29 sean-k-mooney by default socket.gethostname() will match the hostname returned by libvirt
10:15:29 sean-k-mooney by default socket.gethostname() will match the hostname returned by libvirt
10:15:45 gibi if the neutron agent sees a different hostname than the nova-compute then how can the nova hypervisor API help in that
10:15:45 gibi if the neutron agent sees a different hostname than the nova-compute then how can the nova hypervisor API help in that
10:16:46 sean-k-mooney gibi: we reqire the [DEFAULT]/host config option to be the same in both the nova and neutron config
10:16:46 sean-k-mooney gibi: we reqire the [DEFAULT]/host config option to be the same in both the nova and neutron config
10:16:59 sean-k-mooney so you can find the compute service assocatied with the host
10:16:59 sean-k-mooney so you can find the compute service assocatied with the host
10:17:14 sean-k-mooney then get its uuid
10:17:14 sean-k-mooney then get its uuid
10:17:35 gibi so the problematic case is when the hypervisor_hostname != hostname? But why that happen in case of libvirt?
10:17:35 gibi so the problematic case is when the hypervisor_hostname != hostname? But why that happen in case of libvirt?
10:17:58 sean-k-mooney because of https://github.com/libvirt/libvirt/blob/master/src/util/virutil.c#L454-L473
10:17:59 sean-k-mooney because of https://github.com/libvirt/libvirt/blob/master/src/util/virutil.c#L454-L473
10:18:52 sean-k-mooney if you have the fqdn as the canonical host name in /etc/hosts then libvirt will return an fqdn but socket.gethostname() will be the short hostname
10:18:52 sean-k-mooney if you have the fqdn as the canonical host name in /etc/hosts then libvirt will return an fqdn but socket.gethostname() will be the short hostname
10:19:44 gibi and don't we require CONF.host to be set to fqdn is enough in this case?
10:19:44 gibi and don't we require CONF.host to be set to fqdn is enough in this case?
10:20:08 gibi sorry my english is breaking up :0
10:20:08 gibi sorry my english is breaking up :0
10:20:29 gibi so if in this case CONF.host is set to fqdn then everything is in synch isn't it?
10:20:29 gibi so if in this case CONF.host is set to fqdn then everything is in synch isn't it?
10:20:34 sean-k-mooney nope ooo already hardcodes that to the fqdn
10:20:34 sean-k-mooney nope ooo already hardcodes that to the fqdn
10:21:22 gibi don't we use that fqdn as the RP name ?
10:21:22 gibi don't we use that fqdn as the RP name ?
10:21:33 sean-k-mooney no
10:21:39 sean-k-mooney well somethimes
10:21:39 sean-k-mooney well somethimes
10:21:45 sean-k-mooney we do not use the config value
10:21:45 sean-k-mooney we do not use the config value
10:21:51 sean-k-mooney so we use what libvirt returns
10:21:51 sean-k-mooney so we use what libvirt returns
10:22:03 sean-k-mooney socket.gethostname will never be the fqdn
10:22:03 sean-k-mooney socket.gethostname will never be the fqdn
10:22:54 sean-k-mooney libvirt will return the fqdn if you have "172.17.1.17 compute-0.redhat.local compute-0" and short name if you have "172.17.1.17 compute-0 compute-0.redhat.locaL"
10:22:54 sean-k-mooney libvirt will return the fqdn if you have "172.17.1.17 compute-0.redhat.local compute-0" and short name if you have "172.17.1.17 compute-0 compute-0.redhat.locaL"
10:23:45 sean-k-mooney gibi: one way to fix this is to try using the hostname and then the fqdn to lookup the rp
10:23:45 sean-k-mooney gibi: one way to fix this is to try using the hostname and then the fqdn to lookup the rp
10:24:05 sean-k-mooney gibi: we could also start using socket.gethostname in nova in the libvirt driver
10:24:05 sean-k-mooney gibi: we could also start using socket.gethostname in nova in the libvirt driver
10:24:15 sean-k-mooney for hypervior hostname
10:24:15 sean-k-mooney for hypervior hostname
10:27:01 sean-k-mooney gibi: we can look at fixing this in ooo
10:27:01 sean-k-mooney gibi: we can look at fixing this in ooo
10:27:29 sean-k-mooney by having it generate the name that libvirt will return and put it in the neutorn config or we can do https://bugzilla.redhat.com/show_bug.cgi?id=1957363
10:27:30 sean-k-mooney by having it generate the name that libvirt will return and put it in the neutorn config or we can do https://bugzilla.redhat.com/show_bug.cgi?id=1957363
10:27:31 openstack bugzilla.redhat.com bug 1957363 in tripleo-ansible "Canonical name should be a short name instead of FQDN" [High,New] - Assigned to rhos-maint
10:27:31 openstack bugzilla.redhat.com bug 1957363 in tripleo-ansible "Canonical name should be a short name instead of FQDN" [High,New] - Assigned to rhos-maint
10:28:42 gibi I see that the name returned from libvirt is highly host configuration dependent. But I don't think we have to automate all the possible combinations to work, if there is at least one set of configuration that make the system work for every libvirt case
10:28:42 gibi I see that the name returned from libvirt is highly host configuration dependent. But I don't think we have to automate all the possible combinations to work, if there is at least one set of configuration that make the system work for every libvirt case
10:29:41 sean-k-mooney well since this is not a problem with devstack as we see form the ci jobs it pretty clear that its actully caused by ooo's configuration of the host
10:29:41 sean-k-mooney well since this is not a problem with devstack as we see form the ci jobs it pretty clear that its actully caused by ooo's configuration of the host
10:29:59 sean-k-mooney gibi: the defualt we have in code do work out of the box just not as deployed by ooo
10:29:59 sean-k-mooney gibi: the defualt we have in code do work out of the box just not as deployed by ooo
10:30:06 gibi does tripleo configures the hostname on the compute host ?
10:30:06 gibi does tripleo configures the hostname on the compute host ?
10:30:24 gibi I mean the /etc/hosts and /etc/hostname
10:30:24 gibi I mean the /etc/hosts and /etc/hostname
10:30:28 sean-k-mooney yes
10:30:30 sean-k-mooney both
10:30:30 sean-k-mooney both
10:30:44 sean-k-mooney it templates out /etc/host with the fqdn first
10:30:44 sean-k-mooney it templates out /etc/host with the fqdn first
10:30:54 sean-k-mooney it alsso sets /etc/hostname
10:30:54 sean-k-mooney it alsso sets /etc/hostname
10:31:08 sean-k-mooney one way to "fix" it woudl be to put the fqdn in /etc/hostname
10:31:08 sean-k-mooney one way to "fix" it woudl be to put the fqdn in /etc/hostname
10:31:22 sean-k-mooney but that is kind of a hack
10:31:22 sean-k-mooney but that is kind of a hack
10:31:25 gibi so then tripleo can make actually configures (indirectly) what hypervisor hostname libvirt returns

Earlier   Later