<div dir="ltr"><div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Wed, Oct 17, 2018 at 12:56 AM Jay Pipes <<a href="mailto:jaypipes@gmail.com">jaypipes@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 10/16/2018 10:11 AM, Sylvain Bauza wrote:<br>
> On Tue, Oct 16, 2018 at 3:28 PM Ignazio Cassano <br>
> <<a href="mailto:ignaziocassano@gmail.com" target="_blank">ignaziocassano@gmail.com</a> <mailto:<a href="mailto:ignaziocassano@gmail.com" target="_blank">ignaziocassano@gmail.com</a>>> wrote:<br>
> <br>
>     Hi everybody,<br>
>     when on my ocata installation based on centos7 I update (only update<br>
>     not  changing openstack version) some kvm compute nodes, I<br>
>     diescovered uuid in resource_providers nova_api db table are<br>
>     different from uuid in compute_nodes nova db table.<br>
>     This causes several errors in nova-compute service, because it not<br>
>     able to receive instances anymore.<br>
>     Aligning uuid from compute_nodes solves this problem.<br>
>     Could anyone tel me if it is a bug ?<br>
> <br>
> <br>
> What do you mean by "updating some compute nodes" ? In Nova, we consider <br>
> uniqueness of compute nodes by a tuple (host, hypervisor_hostname) where <br>
> host is your nova-compute service name for this compute host, and <br>
> hypervisor_hostname is in the case of libvirt the 'hostname' reported by <br>
> the libvirt API [1]<br>
> <br>
> If somehow one of the two values change, then the Nova Resource Tracker <br>
> will consider this new record as a separate compute node, hereby <br>
> creating a new compute_nodes table record, and then a new UUID.<br>
> Could you please check your compute_nodes table and see whether some <br>
> entries were recently created ?<br>
<br>
The compute_nodes table has no unique constraint on the <br>
hypervisor_hostname field unfortunately, even though it should. It's not <br>
like you can have two compute nodes with the same hostname. But, alas, <br>
this is one of those vestigial tails in nova due to poor initial table <br>
design and coupling between the concept of a nova-compute service worker <br>
and the hypervisor resource node itself.<br>
<br></blockquote><div><br></div><div>Sorry if I was unclear, but I meant we have a UK for (host, hypervisor_hostname, deleted) (I didn't explain about deleted, but meh).</div><div><a href="https://github.com/openstack/nova/blob/01c33c5/nova/db/sqlalchemy/models.py#L116-L118">https://github.com/openstack/nova/blob/01c33c5/nova/db/sqlalchemy/models.py#L116-L118</a></div><div><br></div><div>But yeah, we don't have any UK for just (hypervisor_hostname, deleted), sure.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Ignazio, I was tempted to say you may have run into this:<br>
<br>
<a href="https://bugs.launchpad.net/nova/+bug/1714248" rel="noreferrer" target="_blank">https://bugs.launchpad.net/nova/+bug/1714248</a><br>
<br>
But then I see you're not using Ironic... I'm not entirely sure how you <br>
ended up with duplicate hypervisor_hostname records for the same compute <br>
node, but some of those duplicate records must have had the deleted <br>
field set to a non-zero value, given the constraint we currently have on <br>
(host, hypervisor_hostname, deleted).<br>
<br>
This means that your deployment script or some external scripts must <br>
have been deleting compute node records somehow, though I'm not entirely <br>
sure how...<br>
<br></blockquote><div><br></div><div>Yeah that's why I asked for the compute_nodes records. Ignazio, could you please verify this ?</div><div>Do you have multiple records for the same (host, hypervisor_hostname) tuple ?</div><div><br></div><div>'select from compute_nodes where host=XXX and hypervisor_hostname=YYY'</div><div><br></div><div><br></div><div>-Sylvain</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Best,<br>
-jay<br>
<br>
<br>
<br>
_______________________________________________<br>
OpenStack-operators mailing list<br>
<a href="mailto:OpenStack-operators@lists.openstack.org" target="_blank">OpenStack-operators@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators</a><br>
</blockquote></div></div></div>