| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-10-17 | |||
| 08:49:38 | bauzas | which will change the task to spawn | |
| 08:52:02 | bauzas | actually, https://docs.openstack.org/nova/latest/reference/vm-states.html#create-instance-states | |
| 08:52:29 | bauzas | we unset the task state before plugging the network and the devices | |
| 08:52:56 | bauzas | but since you're still on 'scheduling', I bet nothing goes down to compute and stays on conductor | |
| 08:52:58 | bauzas | again, logs... | |
| 08:55:01 | eandersson | If I search for the req from VM create I only find the api call | |
| 08:55:17 | eandersson | I only find the compute because it's in the database. | |
| 08:56:16 | eandersson | If I could reproduce it in the lab I could give you all the logs you can dream off :p | |
| 08:59:35 | bauzas | eandersson: even on production, can't you just query through some specific request-id ? | |
| 08:59:43 | eandersson | Yes | |
| 08:59:56 | eandersson | I can give you anything that is INFO or higher =] | |
| 09:00:39 | bauzas | that's enough | |
| 09:01:00 | bauzas | also, you could just query the os-instance-action API to get you a bit of what happened https://docs.openstack.org/api-ref/compute/?expanded=#servers-actions-servers-os-instance-actions | |
| 09:01:52 | bauzas | eandersson: accordingly, for a specific request-id corresponding to a server create, are you able to track the last service involved ? | |
| 09:02:10 | eandersson | nova.api is the last service with that request-id | |
| 09:02:26 | bauzas | crazy | |
| 09:02:27 | eandersson | > [<req> <x> <y>]<IP> "POST /v2.1/<tenant>/servers" status: 202 len: 472 microversion: 2.1 time: 1.453706 | |
| 09:03:29 | eandersson | I can see the scheduling request in the database under request_specs | |
| 09:03:35 | bauzas | eandersson: I'd suggest you to use the os-instance-action API then | |
| 09:03:45 | bauzas | and look at the events, if you enabled them | |
| 09:04:16 | bauzas | eandersson: the request_spec record is created by the nova-api service so that doesn't prove it reached the scheduler service | |
| 09:04:29 | eandersson | Sure | |
| 09:04:48 | eandersson | Wouldn't specifying the host actually by-pass the scheduler? | |
| 09:04:57 | bauzas | it depends, which release ? | |
| 09:05:00 | eandersson | Rocky | |
| 09:05:09 | sean-k-mooney | if you use the avialbality zone way partly | |
| 09:05:09 | bauzas | nope, it won't then | |
| 09:05:20 | sean-k-mooney | it will check that the az exists | |
| 09:05:21 | bauzas | sean-k-mooney: even with this, it will call out the scheduler | |
| 09:05:29 | sean-k-mooney | and then skip the rest | |
| 09:05:32 | sean-k-mooney | sure | |
| 09:05:38 | sean-k-mooney | but it does not run all the filters | |
| 09:05:43 | bauzas | oh yeah, syre | |
| 09:05:59 | bauzas | but eandersson tells us that nothing but nova-api shows evidence of the request ID | |
| 09:06:05 | bauzas | even not the conductor | |
| 09:06:11 | sean-k-mooney | it will still call the schduler however so you should see something in the log for it | |
| 09:06:13 | eandersson | Well conductor logs nothing | |
| 09:06:23 | eandersson | We have many thousands vms per day and the logs in the conductor is zero | |
| 09:06:40 | bauzas | you should call Alice to follow the rabbit... | |
| 09:06:54 | eandersson | ... | |
| 09:07:23 | sean-k-mooney | eandersson: is the only indication of this request the api log and the db entry? | |
| 09:07:35 | sean-k-mooney | e.g. are you not seeing it in any other service at all? | |
| 09:08:08 | eandersson | Let me search for the instance uuid | |
| 09:10:00 | eandersson | nova, placement and neutron-server are showing up | |
| 09:10:53 | bauzas | eandersson: we do non-blocking RPC calls for the nova-api service | |
| 09:11:25 | bauzas | eandersson: so I wouldn't be surprised if you wouldn't capture RPC timeouts | |
| 09:11:50 | bauzas | hence the rabbit queue checks | |
| 09:12:38 | eandersson | The rabbitmq queues look fine. Nothing queued, nothing stuck in unack'd. I could capture messages going to the queues. | |
| 09:13:21 | sean-k-mooney | in rocky we are not patching the api with eventlet so we dont have the heartbeat issue but i was just wondering how far it got in the boot process before going silent | |
| 09:14:34 | sean-k-mooney | if we only see reference to the instance boot request in the api but not in the conductor or schduler it implies its failing very early | |
| 09:14:51 | eandersson | I only see the compute in placement | |
| 09:15:10 | sean-k-mooney | ok so its getting to the schduler then | |
| 09:15:43 | sean-k-mooney | infact if its created the allcoation its pass the filters and selected the host | |
| 09:16:18 | sean-k-mooney | so its failing somethime beetween the schduler retruning to the conductor and the conductor callign the compute node | |
| 09:17:02 | bauzas | sean-k-mooney: that's not my understanding from what eandersson said by "I only see the compute in placement" | |
| 09:17:43 | sean-k-mooney | oh i may have misread that | |
| 09:17:47 | bauzas | eandersson: no GET logs on https://docs.openstack.org/api-ref/placement/?expanded=list-allocation-candidates-detail#list-allocation-candidates ? | |
| 09:18:03 | eandersson | I see build_and_run_instance hit the compute | |
| 09:18:16 | bauzas | WTF | |
| 09:18:20 | eandersson | when capturing a rabbitmq message | |
| 09:18:27 | eandersson | received by the compute | |
| 09:19:09 | bauzas | but no logs ? | |
| 09:19:21 | bauzas | I suspect your log factory not working then :D | |
| 09:19:29 | bauzas | that's... crazy | |
| 09:21:26 | eandersson | bauzas, talking about compute or conductor? | |
| 09:22:08 | bauzas | I frankly don't know what to say, I'm just lost | |
| 09:22:25 | eandersson | like look at the conductor https://zuul.opendev.org/t/openstack/build/9a820944e63e409cb8dbf5b83931263e/log/logs/screen-n-cond.txt.gz | |
| 09:22:29 | eandersson | and search for INFO | |
| 09:22:31 | bauzas | you're seeing only logs on api service, but you just told you're able to see a build call to compute | |
| 09:22:32 | eandersson | You'll find like 5 logs | |
| 09:22:58 | eandersson | https://zuul.opendev.org/t/openstack/build/d34ddb7bd62148968c33f4fe8f348e8b/log/controller/logs/screen-n-super-cond.txt.gz | |
| 09:23:29 | eandersson | I am not sure what you are talking about to be honest. | |
| 09:23:55 | eandersson | https://zuul.opendev.org/t/openstack/build/d34ddb7bd62148968c33f4fe8f348e8b/log/controller/logs/screen-n-sch.txt.gz | |
| 09:24:01 | eandersson | This is the scheduler, again search for INFO | |
| 09:24:05 | eandersson | you'll find like zero entries | |
| 09:24:44 | eandersson | We have 1k compute nodes, and enabling debug would be very... spammy | |
| 09:25:04 | eandersson | but unfortunately INFO does not provide a ton of logs outside of API | |
| 09:27:24 | bauzas | eandersson: as I proposed you, can you please do some 'nova instance-action-list' stuff to get more knowledge ? | |
| 09:27:39 | bauzas | but I understand your point, INFO logs aren't talkative | |
| 09:28:02 | bauzas | I thought we fixed that in Newton (or sometimes around it) | |
| 09:28:22 | eandersson | Is that the same as openstack server even list? | |
| 09:28:29 | eandersson | *event | |
| 09:29:02 | eandersson | because os-instance-actions just shows me the request id, server id, action and start time | |
| 09:29:16 | eandersson | let me check the body | |
| 09:33:58 | sean-k-mooney | bauzas: ya looking at the conductor logs for the gate jobs the non debug version is not very useful | |
| 09:34:08 | sean-k-mooney | we likely should make https://zuul.opendev.org/t/openstack/build/df644e9fdde346f2813e6220312a9ca5/log/controller/logs/screen-n-super-cond.txt.gz#867 info level | |
| 09:35:11 | eandersson | I enabled debug | |
| 09:35:40 | eandersson | > [instance: x] Selected host: compute1031; Selected node: compute1031; ; Alternates: [] schedule_and_build_instances | |
| 09:35:48 | bauzas | eandersson: I checked and events are shown by default if you are on Pike and above when you call out instance-action API | |
| 09:35:49 | eandersson | > Re-scheduling is disabled. populate_retry | |
| 09:36:08 | bauzas | eandersson: but you need to login with admin creds | |
| 09:36:22 | bauzas | https://docs.openstack.org/api-ref/compute/?expanded=show-server-action-details-detail#id170 | |
| 09:36:52 | bauzas | anyway, gotta run, | |
| 09:36:54 | bauzas | \o | |
| 09:37:21 | eandersson | http://paste.openstack.org/show/EUjnd5TWftogxGIVaSNP/ | |
| 09:37:25 | eandersson | This is the last log line | |
| 09:37:35 | eandersson | from the conductor / scheduler | |
| 09:38:13 | eandersson | yea bauzas nothing interesting in the events | |
| 09:39:06 | eandersson | Everything looks to be scheduled fine | |
| 09:39:21 | sean-k-mooney | right that is the last log for the instace we expect to see in the conductor log | |