создание образа openstack вызывает BadRequestException

Я установил ussuri версию openstack, вроде все нормально, но есть странная проблема. Когда я использую команду glance image-create, все в порядке и работает правильно, но когда я использую команду openstack image create, как я уже упоминал ниже:

openstack image create --public --protected --disk-format raw --file ubuntu.raw ubuntu

он выдает это исключение:

BadRequestException: 400: Ошибка клиента для URL-адреса: http://controller:9292/v2/images, Предоставленный объект не соответствует схеме «изображение»: «Истина» не имеет «логического типа»: не удалось проверить «тип» в схеме [ 'properties']['protected']:: {'description': 'Если это правда, изображение нельзя будет удалить.',: 400 Bad Request: 'True': 'type': 'boolean'}: On instance[' защищен']:

Я использую CEPH для Glance бэкенда, но Openstack хранит изображения в /var/lib/glance/images! это мой файл конфигурации glance-api:

[DEFAULT]
[cinder]
[cors]
[database]
connection = mysql+pymysql://glance:password@controller/glance
[file]
[glance.store.http.store]
[glance.store.rbd.store]
[glance.store.s3.store]
[glance.store.swift.store]
[glance.store.vmware_datastore.store]
[glance_store]
stores = rbd
default_store = rbd
rbd_store_pool = images
rbd_store_user = glance
rbd_store_ceph_conf = /etc/ceph/ceph.conf
rbd_store_chunk_size = 8
[image_format]
disk_formats = ami,ari,aki,vhd,vhdx,vmdk,raw,qcow2,vdi,iso,ploop.root-tar
[keystone_authtoken]
password = password 
username = glance
project_name = service
user_domain_name = Default
project_domain_name = Default
auth_type = password
memcached_servers = controller:11211
auth_url = http://controller:5000
www_authenticate_uri = http://controller:5000
[oslo_concurrency]
[oslo_messaging_amqp]
[oslo_messaging_kafka]
[oslo_messaging_notifications]
[oslo_messaging_rabbit]
[oslo_middleware]
[oslo_policy]
[paste_deploy]
flavor = keystone
[profiler]
[store_type_location_strategy]
[task]
[taskflow_executor]

person MilaDroid    schedule 17.02.2021    source источник
comment
После удаления переключателя --protected ошибка изменилась на Объект «NoneType» не имеет атрибута «get»   -  person MilaDroid    schedule 17.02.2021
comment
Я думаю, что это просто ошибка. Обходной путь — пропустить --protected, как вы уже выяснили, и защитить изображение с помощью openstack image set .... Однако я также не знаю, откуда появилось новое сообщение об ошибке и несет ли оно какой-либо вред.   -  person berndbausch    schedule 18.02.2021


Ответы (1)


На самом деле, когда я вставил сюда ошибку, она стала удобочитаемой для человека, и я смог ее прочитать. Как вы можете видеть здесь:

Предоставленный объект не соответствует схеме «изображение»: «Истина» не относится к типу «логический»: не удалось проверить «тип» в схеме ['свойства']['защищено']

После того, как я удалил переключатель --protected из команды, он выдал это исключение:

Объект «NoneType» не имеет атрибута «получить»

но это сработало как шарм! Я понятия не имею, что случилось! Надеюсь, поможет :)

person MilaDroid    schedule 17.02.2021