Neutron metadata service returns http code 500 if nova metadata service is down
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
High
|
Anton Kurbatov |
Bug Description
We discovered that if the nova metadata service is down, then the neutron metadata service starts printing stack traces with a 500 HTTP code to the user.
Demo on a newly installed devstack
$ systemctl stop <email address hidden>
Then inside a VM:
$ curl http://
<html>
<head>
<title>500 Internal Server Error</title>
</head>
<body>
<h1>500 Internal Server Error</h1>
An unknown error has occurred. Please try your request again.<br /><br />
</body>
</html>$
Stack trace:
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
ERROR neutron.
INFO eventlet.
Also, in our installation the nova service is behind nginx. And if we stop nova metadata service we also get 500 http code but with another traceback:
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.985 24 ERROR neutron.
2024-03-25 20:27:01.988 24 INFO eventlet.
It seems to me that it is also better to handle nginx-like gateway errors a bit more correctly.
These 500 HTTP codes worries us because we are trying to create an alert system one of the criteria for which is 500 codes.
Changed in neutron: | |
status: | New → In Progress |
Changed in neutron: | |
importance: | Undecided → High |
assignee: | nobody → Anton Kurbatov (akurbatov) |
Fix proposed to branch: master /review. opendev. org/c/openstack /neutron/ +/914154
Review: https:/