記一次openstack維護經歷----openstack-dashboard 500

背景:

清明節放假期間,公司有項目問題,需要緊急處理,結果物業停電,公司所有服務器都斷電了,再次上電後,好多機器的自啓沒做,只好讓同事到公司手動開啓,但是公司的openstack服務器起來後,訪問不了網頁。

問題現象:

登錄openstack,報error 500, Internal server error

 

經過:

之前沒有玩過openstack,更別提解決問題了,只好百度;

1、先檢查openstack 服務啓動情況

查到命令 nova-manage service list

[root@localhost ~]# nova-manage service list
Option "verbose" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.
Option "notification_topics" from group "DEFAULT" is deprecated. Use option "topics" from group "oslo_messaging_notifications".
DEPRECATED: Use the nova service-* commands from python-novaclient instead or the os-services REST resource. The service subcommand will be removed in the 14.0 release.
Binary           Host                                 Zone             Status     State Updated_At
nova-osapi_compute 0.0.0.0                              internal         enabled    XXX   None      
nova-metadata    0.0.0.0                              internal         enabled    XXX   None      
nova-cert        localhost.localdomain                internal         enabled    :-)   2020-04-10 00:01:40
nova-consoleauth localhost.localdomain                internal         enabled    :-)   2020-04-10 00:01:40
nova-scheduler   localhost.localdomain                internal         enabled    :-)   2020-04-10 00:01:40
nova-conductor   localhost.localdomain                internal         enabled    :-)   2020-04-10 00:01:39
nova-compute     localhost.localdomain                nova             enabled    :-)   2020-04-10 00:01:36
[root@localhost ~]# 

根據描述state爲XXX的表示沒有啓動成功,當時也沒多少經驗,就一直在研究這兩個XXX的服務爲啥沒起來

2、檢查metadata、osapi_compute爲啥沒起來

從/usr/lib/systemd/system目錄查看openstack服務

[root@localhost ~]# ll /usr/lib/systemd/system/openstack*
-rw-r--r-- 1 root root 326 Feb 16  2016 /usr/lib/systemd/system/openstack-cinder-api.service
-rw-r--r-- 1 root root 335 Feb 16  2016 /usr/lib/systemd/system/openstack-cinder-backup.service
-rw-r--r-- 1 root root 344 Feb 16  2016 /usr/lib/systemd/system/openstack-cinder-scheduler.service
-rw-r--r-- 1 root root 335 Feb 16  2016 /usr/lib/systemd/system/openstack-cinder-volume.service
-rw-r--r-- 1 root root 248 Mar 21  2016 /usr/lib/systemd/system/openstack-glance-api.service
-rw-r--r-- 1 root root 256 Mar 21  2016 /usr/lib/systemd/system/openstack-glance-glare.service
-rw-r--r-- 1 root root 258 Mar 21  2016 /usr/lib/systemd/system/openstack-glance-registry.service
-rw-r--r-- 1 root root 254 Mar 21  2016 /usr/lib/systemd/system/openstack-glance-scrubber.service
-rw-r--r-- 1 root root 242 May 25  2016 /usr/lib/systemd/system/openstack-keystone.service
-rw-r--r-- 1 root root 571 Aug  9  2016 /usr/lib/systemd/system/openstack-losetup.service
-rw-r--r-- 1 root root 230 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-api.service
-rw-r--r-- 1 root root 232 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-cert.service
-rw-r--r-- 1 root root 302 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-compute.service
-rw-r--r-- 1 root root 242 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-conductor.service
-rw-r--r-- 1 root root 251 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-consoleauth.service
-rw-r--r-- 1 root root 244 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-console.service
-rw-r--r-- 1 root root 248 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-metadata-api.service
-rw-r--r-- 1 root root 304 Jun 18  2016 /usr/lib/systemd/system/openstack-nova-novncproxy.service
-rw-r--r-- 1 root root 248 Jun 18  2016 /usr/lib/systemd/system/openstack-nova-os-compute-api.service
-rw-r--r-- 1 root root 242 Jun 17  2016 /usr/lib/systemd/system/openstack-nova-scheduler.service
-rw-r--r-- 1 root root 216 Jun 18  2016 /usr/lib/systemd/system/openstack-nova-xvpvncproxy.service

找到對應的openstack-nova-metadata-api和openstack-nova-os-compute-api服務,然後瘋狂的重啓這倆服務 ,雖然最後證明跟他倆沒關係

重啓metadata-api時,提示端口被佔用,又是該端口,又是改配置,沒招了,換個思路,從源頭查找,開始去找日誌

 3、檢查openstack-dashboard的服務

根據百度【openstack登錄error 500, Internal server error】,都是讓設置openstack-dashboard.conf

WSGIApplicationGroup %{GLOBAL}

但是都沒用;

後來看到有說到權限問題

各種方法沒用的情況,只能試一試,

chown apache:apache /usr/share/openstack-dashboard

bingo!

奇蹟發生了,500錯誤神奇的消失了,取而代之的期待已久的登錄界面!

淚奔啊!

兩天啊!

終於解決了!!!

 

通過這次的問題發現到解決,說起來不是啥大問題,但是對於一個不熟悉openstack的來說,找個日誌在哪裏都要百度一下,思路都混亂了,沒有去找到一個解決辦法。

解決問題,重要的是思路

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章