OpenStack Keystone port 5000, используемый Python
Я следую официальной документации OpenStack для создания своей первой среды и застрял в настройке Keystone (последний шаг от http://docs.openstack.org/kilo/install-guide/install/apt/content/keystone-install.html)
При попытке перезапустить Apache я получаю сообщение об ошибке об использовании порта 5000
* Restarting web server apache2
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:5000
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:5000
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
Netstat говорит, что порт используется Python, а дальнейшие исследования показывают, что он как-то связан с Keystone
/usr/bin/python /usr/bin/keystone-all --config-file=/etc/keystone/keystone.conf --log-file=/var/log/keystone/keystone.log
Какой путь я должен предпринять в этой ситуации? Переконфигурировать apache для использования другого порта или попытаться использовать Python для использования другого?
РЕДАКТИРОВАТЬ
Ссылаясь на https://ask.openstack.org/en/question/47137/devstack-fails-to-start-apache2-address-already-in-use-could-not-bind-to-address/ я изменил /etc/apache2/sites-available/wsgi-keystone.conf
от <VirtualHost *:5000>
в <VirtualHost *:80>
, но ошибка сохранилась. Сообщение прямо сейчас
* Restarting web server apache2
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:35357
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:35357
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
Журнал ошибок Apache, очевидно, пуст, поэтому я не могу найти там что-нибудь полезное.
1 ответ
Вы видите ошибку, потому что Keystone работает с устаревшим Eventlet, поэтому он прослушивает порт 5000
, Чтобы заставить его работать с Apache, вы должны остановить и отключить службу Keystone. Keystone не будет выполняться как сервис, так как он будет выполняться как приложение WSGI в Apache с использованием mod_wsgi
,
Итак, чтобы все заработало, откатите свою конфигурацию, чтобы <VirtualHost *:5000>
снова. Затем остановите и отключите keystone
обслуживание и перезапуск Apache:
service keystone stop
update-rc.d keystone disable
service apache2 restart