Openstack deployed with kolla-ansible. Skyline-apiserver is in unhealthy state with the following error.

Bug #2037086 reported by Debasis
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
skyline apiserver
New
Undecided
Unassigned

Bug Description

Openstack deployed with kolla-ansible. Skyline-apiserver is in unhealthy state with the following error.

h11._util.RemoteProtocolError: illegal request line
[2023-09-22 17:38:46 +0530].017 1015 WARNING [-] Invalid HTTP request received.
Traceback (most recent call last):
  File "/var/lib/kolla/venv/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 129, in handle_events
    event = self.conn.next_event()
  File "/var/lib/kolla/venv/lib/python3.10/site-packages/h11/_connection.py", line 487, in next_event
    exc._reraise_as_remote_protocol_error()
  File "/var/lib/kolla/venv/lib/python3.10/site-packages/h11/_util.py", line 77, in _reraise_as_remote_protocol_error
    raise self
  File "/var/lib/kolla/venv/lib/python3.10/site-packages/h11/_connection.py", line 469, in next_event
    event = self._extract_next_receive_event()
  File "/var/lib/kolla/venv/lib/python3.10/site-packages/h11/_connection.py", line 411, in _extract_next_receive_event
    event = self._reader(self._receive_buffer)
  File "/var/lib/kolla/venv/lib/python3.10/site-packages/h11/_readers.py", line 79, in maybe_read_from_IDLE_client
    raise LocalProtocolError("illegal request line")

Deployment backend is exposed via HTTPs with self-signed certs and clients are exposed via trusted certs from letsencrypt. How can I solve the issue?

Revision history for this message
Shuai Qian (iauhsnaiq) wrote :

this is a bug of release-2023.1 in kolla-ansible, so if you deploy other versions, you wouldn't hit this.

and the tmp solutions for the issue is as following:

1. add the following 2 lines into /etc/kolla/skyline-apiserver/gunicorn.py
(these two files should be in skyline_apiserver container, generated by kolla-ansible.)
```
keyfile = "/etc/skyline/certs/skyline-key.pem"
certfile = "/etc/skyline/certs/skyline-cert.pem"
```

then /etc/kolla/skyline-apiserver/gunicorn.py is like
# something
bind = "172.16.150.185:9998"
workers = 5
worker_class = "uvicorn.workers.UvicornWorker"
timeout = 300
keepalive = 5
reuse_port = True
proc_name = "skyline"
keyfile = "/etc/skyline/certs/skyline-key.pem"
certfile = "/etc/skyline/certs/skyline-cert.pem"
# something

2. restart skyline-apiserver container.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.