Kurztipp: Update der Pulp-Datenbank nach Katello-Upgrade
Nach einem Upgrade von Katello stieß ich beim Aufrufen der Administrationsoberfläche auf den folgenden Fehler:
Ein Blick in das Protokoll des Webservers zeigte, dass offensichtlich ein Update der Datenbank das Problem verursachte:
1# tail /var/log/httpd/foreman-ssl_error_ssl.log
2[Wed Aug 17 09:42:51.536914 2016] [:error] [pid 3178] [remote 10.22.1.16:128] mod_wsgi (pid=3178): Target WSGI script '/usr/share/pulp/wsgi/webservices.wsgi' cannot be loaded as Python module.
3[Wed Aug 17 09:42:51.536946 2016] [:error] [pid 3178] [remote 10.22.1.16:128] mod_wsgi (pid=3178): Exception occurred processing WSGI script '/usr/share/pulp/wsgi/webservices.wsgi'.
4[Wed Aug 17 09:42:51.536960 2016] [:error] [pid 3178] [remote 10.22.1.16:128] Traceback (most recent call last):
5[Wed Aug 17 09:42:51.536971 2016] [:error] [pid 3178] [remote 10.22.1.16:128] File "/usr/share/pulp/wsgi/webservices.wsgi", line 19, in <module>
6[Wed Aug 17 09:42:51.536993 2016] [:error] [pid 3178] [remote 10.22.1.16:128] application = wsgi_application()
7[Wed Aug 17 09:42:51.537000 2016] [:error] [pid 3178] [remote 10.22.1.16:128] File "/usr/lib/python2.7/site-packages/pulp/server/webservices/application.py", line 117, in wsgi_application
8[Wed Aug 17 09:42:51.537010 2016] [:error] [pid 3178] [remote 10.22.1.16:128] raise e
9[Wed Aug 17 09:42:51.537026 2016] [:error] [pid 3178] [remote 10.22.1.16:128] InitializationException: The database has not been migrated to the current version. Run pulp-manage-db and restart the application.
Um die Pulp-Datenbank zu aktualisieren muss das Programm pulp-manage-db
als Apache-Benutzer ausgeführt werden. Hierzu ist es auch notwendig, kurzzeitig die Login-Shell zu ändern:
1# chsh -s /bin/bash apache
2Changing shell for apache.
3Shell changed.
4
5# runuser -l apache -c pulp-manage-db
6Attempting to connect to localhost:27017
7Attempting to connect to localhost:27017
8Write concern for Mongo connection: {}
9Loading content types.
10Loading type descriptors []
11Parsing type descriptors
12Validating type descriptor syntactic integrity
13Validating type descriptor semantic integrity
14...
15Database migrations complete.
16
17# chsh -s /sbin/nologin apache
18Changing shell for apache.
19Shell changed.
Anschließend funktionierte die Web-Oberfläche wieder wie gewohnt.