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 backend
를 NFS
로 사용하는 경우에 자주 발생한다.
- 오픈스택 구성시에 잘못하여
glace image backend
를NFS
로 하였으나 실제 노드의 OS에는 마운트가 되어있지 않은경우 - 노드 부팅시
NFS
가Docker
보다 늦게 동작하여 마운트는 되어있으나docker container
에서는 해당 경로를 인식하지 못하는 경우
1번의 경우 OS의 fstab
에 실제로 등록되어있는지 확인하여 처리하면 되고 2번의 경우 Glance image NFS 설정시 주의사항 문서를 참고한다.
로그인하면 댓글을 남길 수 있습니다.