image_has_no_associated_data

Image has no associated data

오픈스택에서 octavia 로드밸런서 또는 인스턴스 생성중에 아래와 유사한 에러가 발생하는 경우가 있다.

2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor Traceback (most recent call last):
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor   File "/var/lib/kolla/venv/lib64/python3.9/site-packages/taskflow/conductors/backends/impl_executor.py", line 178, in _dispatch_job
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor     stage_func()
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor   File "/var/lib/kolla/venv/lib64/python3.9/site-packages/taskflow/conductors/backends/impl_executor.py", line 164, in _run_engine
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor     for _state in engine.run_iter():
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor   File "/var/lib/kolla/venv/lib64/python3.9/site-packages/taskflow/engines/action_engine/engine.py", line 340, in run_iter
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor     failure.Failure.reraise_if_any(er_failures)
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor   File "/var/lib/kolla/venv/lib64/python3.9/site-packages/taskflow/types/failure.py", line 338, in reraise_if_any
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor     failures[0].reraise()
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor   File "/var/lib/kolla/venv/lib64/python3.9/site-packages/taskflow/types/failure.py", line 350, in reraise
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor     raise value
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor   File "/var/lib/kolla/venv/lib64/python3.9/site-packages/taskflow/engines/action_engine/executor.py", line 52, in _execute_task
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor     result = task.execute(**arguments)
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor   File "/var/lib/kolla/venv/lib64/python3.9/site-packages/octavia/controller/worker/v2/tasks/compute_tasks.py", line 301, in execute
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor     raise exceptions.ComputeBuildException(fault=fault)
2024-07-18 15:09:35.160 18 ERROR taskflow.conductors.backends.impl_executor octavia.common.exceptions.ComputeBuildException: Failed to build compute instance due to: {'code': 500, 'created': '2024-07-18T06:09:32Z', 'message': 'Build of instance 5ff6ac5d-69f3-4cc5-bd79-5b33ddd8d77e aborted: Image 73bd0e3f-b7c1-4c3d-9fc7-3c83ae3acdf0 is unacceptable: Image has no associated data', 'details': 'Traceback (most recent call last):\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/compute/manager.py", line 2632, in _build_and_run_instance\n    self.driver.spawn(context, instance, image_meta,\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/driver.py", line 4619, in spawn\n    created_instance_dir, created_disks = self._create_image(\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/driver.py", line 5029, in _create_image\n    created_disks = self._create_and_inject_local_root(\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/driver.py", line 5161, in _create_and_inject_local_root\n    self._try_fetch_image_cache(backend, fetch_func, context,\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/driver.py", line 11392, in _try_fetch_image_cache\n    image.cache(fetch_func=fetch_func,\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/imagebackend.py", line 301, in cache\n    self.create_image(fetch_func_sync, base, size,\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/imagebackend.py", line 676, in create_image\n    prepare_template(target=base, *args, **kwargs)\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/oslo_concurrency/lockutils.py", line 412, in inner\n    return f(*args, **kwargs)\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/imagebackend.py", line 298, in fetch_func_sync\n    fetch_func(target=target, *args, **kwargs)\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/libvirt/utils.py", line 487, in fetch_image\n    images.fetch_to_raw(context, image_id, target, trusted_certs)\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/images.py", line 187, in fetch_to_raw\n    fetch(context, image_href, path_tmp, trusted_certs)\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/virt/images.py", line 109, in fetch\n    IMAGE_API.download(context, image_href, dest_path=path,\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/image/glance.py", line 1299, in download\n    return session.download(context, image_id, data=data,\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/image/glance.py", line 384, in download\n    raise exception.ImageUnacceptable(image_id=image_id,\nnova.exception.ImageUnacceptable: Image 73bd0e3f-b7c1-4c3d-9fc7-3c83ae3acdf0 is unacceptable: Image has no associated data\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/compute/manager.py", line 2447, in _do_build_and_run_instance\n    self._build_and_run_instance(context, instance, image,\n  File "/var/lib/kolla/venv/lib64/python3.9/site-packages/nova/compute/manager.py", line 2717, in _build_and_run_instance\n    raise exception.BuildAbortException(instance_uuid=instance.uuid,\nnova.exception.BuildAbortException: Build of instance 5ff6ac5d-69f3-4cc5-bd79-5b33ddd8d77e aborted: Image 73bd0e3f-b7c1-4c3d-9fc7-3c83ae3acdf0 is unacceptable: Image has no associated data\n'}

유의해서 봐야할 부분은 Image has no associated data 이다. 말 그대로 이미지에 데이터가 없다는 말인데 분명히 정상적으로 이미지가 등록되었음에도 불구하고 이런 오류가 발생한다면 이미지를 못찾기 때문이다.

대표적으로 glance image backendNFS로 사용하는 경우에 자주 발생한다.

  1. 오픈스택 구성시에 잘못하여 glace image backendNFS로 하였으나 실제 노드의 OS에는 마운트가 되어있지 않은경우
  2. 노드 부팅시 NFSDocker 보다 늦게 동작하여 마운트는 되어있으나 docker container에서는 해당 경로를 인식하지 못하는 경우

1번의 경우 OS의 fstab에 실제로 등록되어있는지 확인하여 처리하면 되고 2번의 경우 Glance image NFS 설정시 주의사항 문서를 참고한다.

로그인하면 댓글을 남길 수 있습니다.
  • image_has_no_associated_data.txt
  • 마지막으로 수정됨: 2024/07/18 06:37
  • 저자 koov