Попытка создать экземпляр из Horizon. Но клиенту отказано из-за конфигурации сервера, и отображение блочного устройства недействительно и завершилось неудачей.

Вопрос или проблема

DEBUG novaclient.v2.client REQ: curl -g -i -X POST http://controller:8774/v2.1/servers -H “Accept: application/json” -H “Content-Type: application/json” -H “OpenStack-API-Version: compute 2.60” -H “User-Agent: python-novaclient” -H “X-Auth-Token: {SHA256}2ac706cb1e4e19eeb414255df32d44f8515dd7a13d77aa1620ae570199ea1076” -H “X-OpenStack-Nova-API-Version: 2.60” -d ‘{“server”: {“name”: “TestInstance”, “imageRef”: “”, “flavorRef”: “0”, “key_name”: “xxx_laptop”, “min_count”: 1, “max_count”: 1, “security_groups”: [{“name”: “e7bd6c22-e789-46c0-a1c0-b6756e73f39a”}, {“name”: “85d01deb-bc4d-4649-acc0-780f4f466ecb”}], “availability_zone”: “nova”, “block_device_mapping_v2”: [{“source_type”: “image”, “destination_type”: “volume”, “delete_on_termination”: false, “uuid”: “b89274d2-b871-42b0-b44f-e5902152bb73”, “boot_index”: “0”, “volume_size”: 1}], “networks”: [{“uuid”: “369e44fa-ae0f-47a7-a09e-5c18a92df788”}], “OS-DCF:diskConfig”: “AUTO”}}’
[Пн 30 сен 2024 16:06:16.396265] [authz_core:error] [pid 3806006:tid 140283471709952] [client xxx.xx.xx.xx:51450] AH01630: доступ клиента запрещён конфигурацией сервера: /usr/bin/keystone-wsgi-public
[Пн 30 сен 2024 16:06:16.402290] [wsgi:error] [pid 3805994:tid 140283623089920] [remote xxx.xx.xx.xxx:50198] DEBUG novaclient.v2.client RESP: [400] Connection: keep-alive Content-Length: 134 Content-Type: application/json; charset=UTF-8 Date: Пн, 30 сен 2024 08:06:16 GMT Openstack-Api-Version: compute 2.60 Vary: OpenStack-API-Version, X-OpenStack-Nova-API-Version X-Compute-Request-Id: req-73280771-79cb-4f55-a72b-ce3407c368d4 X-Openstack-Nova-Api-Version: 2.60 X-Openstack-Request-Id: req-73280771-79cb-4f55-a72b-ce3407c368d4
[Пн 30 сен 2024 16:06:16.402659] [wsgi:error] [pid 3805994:tid 140283623089920] [remote xxx.xx.xx.xxx:50198] DEBUG novaclient.v2.client RESP BODY: {“badRequest”: {“code”: 400, “message”: “Ошибка блока устройства: не удалось получить изображение b89274d2-b871-42b0-b44f-e5902152bb73.”}}

Ответ или решение

Проблема, с которой вы столкнулись при попытке создать экземпляр в OpenStack через Horizon, выглядит как сочетание нескольких факторов, включая ошибки конфигурации сервера и некорректное отображение блочных устройств. Давайте рассмотрим, как можно решить данные проблемы.

Ошибка "client denied by server configuration"

  1. Проблемы с авторизацией:

    • Строка в логе: client denied by server configuration: /usr/bin/keystone-wsgi-public указывает на проблемы с доступом к Keystone, который отвечает за авторизацию пользователей в OpenStack.
    • Убедитесь, что конфигурация вашего веб-сервера (например, Apache) корректна и разрешает доступ к начальному сервису Keystone. Проверьте настройки файлы конфигурации Apache (например, /etc/httpd/conf/httpd.conf или /etc/apache2/sites-enabled/keystone.conf) и убедитесь, что там нет правил, запрещающих доступ к необходимым ресурсам.
  2. Права доступа:

    • Проверьте, что пользователь, под которым выполняется веб-сервер, имеет необходимые права для доступа к папкам и файлам Keystone. Это может включать права на чтение для конфигурационных файлов и прав доступа к базам данных.

Ошибка "Block Device Mapping is Invalid"

  1. Проблемы с UUID образа:

    • Лог указывает на ошибку: Block Device Mapping is Invalid: failed to get image b89274d2-b871-42b0-b44f-e5902152bb73. Это говорит о том, что образ, указанный в block_device_mapping_v2, не существует или недоступен.
    • Проверьте, что образ с указанным UUID действительно существует в вашем OpenStack. Это можно сделать с помощью команды:
      openstack image list
    • Если образ отсутствует, вам нужно либо создать его, либо использовать корректный UUID существующего образа.
  2. Параметры блочного устройства:

    • Убедитесь, что параметры в разделе block_device_mapping_v2 корректны. Если вы используете уже существующий образ, он должен быть в статусе active. Также проверьте, что размер тома (в вашем случае volume_size) соответствует минимальным требованиям для этого образа.

Общие рекомендации

  • Проверка конфигурации Horizon:

    • Убедитесь, что ваша конфигурация Horizon корректна и что все сервисы OpenStack правильно зарегистрированы. Проверьте файл local_settings.py в директории с настройками Horizon на наличие ошибок.
  • Логи OpenStack:

    • Всегда полезно просматривать логи всех компонентов OpenStack, чтобы получить больше информации о произошедших ошибках. Логи можно найти обычно в /var/log/nova/ для Nova, и /var/log/keystone/ для Keystone.

Следуя указанным шагам, вы сможете диагностировать и решить проблемы, связанные с созданием экземпляра в OpenStack. Если проблемы сохраняются, можно рассмотреть возможность обращения к документации OpenStack или к сообществу для получения дополнительной помощи.

Оцените материал
Добавить комментарий

Капча загружается...