IPA fails to deploy partition image with CoreOS based ramdisk
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ironic-python-agent |
Fix Released
|
High
|
Unassigned |
Bug Description
Using current DevStack master and virtual nodes with agent_ssh driver, I can not deploy user's partition images.
Image is build with "disk-image-create ubuntu baremetal grub2" and 3 parts of it uploaded to Glance (kernel, initrd and qcow2 root partition).
Flavor extra_specs and node properties are set to capability boot_option local.
Virtual Ironic Node has 2GB RAM and single virtio disk of 10GB (11GiB)
Failure is specifically with CoreOS-based ramdisk image, tinyipa does not have this problem
$ tail -F ir-cond.log | grep ERROR
2016-06-08 17:35:08.638 ERROR ironic.
relevant VM log:
[ 960.210378] chroot[440]: 2016-06-08 14:35:06.427 440 INFO ironic_
[ 960.250977] chroot[440]: 2016-06-08 14:35:06.468 440 INFO ironic_
[ 961.826376] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root [-] Command failed: prepare_image, error: Error writing configdrive to device: Writing configdrive to device /dev/vda failed with exit code 1. stdout: copy_configdriv
[ 961.832737] chroot[440]: copy_configdriv
[ 961.842312] chroot[440]: copy_configdriv
[ 961.849416] chroot[440]: . stderr: partx: /dev/vda: failed to read partition table
[ 961.857572] chroot[440]: parted: invalid token: primary
[ 961.865729] chroot[440]: Error: Expecting a file system type.
[ 961.873891] chroot[440]: .
[ 961.881924] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root Traceback (most recent call last):
[ 961.890403] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root File "/usr/local/
[ 961.898718] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root result = self.execute_
[ 961.907284] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root File "/usr/local/
[ 961.911709] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root _write_
[ 961.916391] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root File "/usr/local/
[ 961.921386] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root e.stderr)
[ 961.925551] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root ConfigDriveWrit
[ 961.930405] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root copy_configdriv
[ 961.934873] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root copy_configdriv
[ 961.940466] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root . stderr: partx: /dev/vda: failed to read partition table
[ 961.944886] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root parted: invalid token: primary
[ 961.950484] chroot[440]: 2016-06-08 14:35:08.030 440 ERROR root Error: Expecting a file system type.
I suspect "parted" might have been updated, and now its output is parsed incorrectly - "primary" definitely refers to partition type, not filesystem type expected.
summary: |
- IPA fails to deploy partition image + IPA fails to deploy partition image with CoreOS based ramdisk |
description: | updated |
description: | updated |
Changed in ironic-python-agent: | |
status: | New → Confirmed |
importance: | Undecided → High |
Changed in ironic-python-agent: | |
status: | Confirmed → Triaged |
Changed in ironic-python-agent: | |
assignee: | nobody → Anup (anup-d-navare) |
Changed in ironic-python-agent: | |
assignee: | Anup (anup-d-navare) → nobody |
Hi,
I faced the same issue during baremetal node deployment using bifrost.
The below you can find errors from the ironic log file:
2016-07-25 13:26:40.638 22176 DEBUG ironic. drivers. modules. agent_client [req-a743c1dd- 3be2-4b0b- a629-bf235ab5a9 ad - - - - -] Status of agent commands for node 00000000- 0000-0000- 0000-0000000000 02: prepare_image: result "None", error "{u'message': u'Error writing configdrive to device: Writing configdrive to device /dev/sda failed with exit code 1. stdout: copy_configdriv e_to_disk. sh: Working on MBR only device /dev/sda\ ncopy_configdri ve_to_disk. sh: Adding configdrive partition to /dev/sda\ ncopy_configdri ve_to_disk. sh: Error creating configdrive on /dev/sda\n. stderr: partx: /dev/sda: failed to read partition table\nparted: invalid token: primary\nError: Expecting a file system type.\n.', u'code': 500, u'type': u'ConfigDriveWr iteError' , u'details': u'Writing configdrive to device /dev/sda failed with exit code 1. stdout: copy_configdriv e_to_disk. sh: Working on MBR only device /dev/sda\ ncopy_configdri ve_to_disk. sh: Adding configdrive partition to /dev/sda\ ncopy_configdri ve_to_disk. sh: Error creating configdrive on /dev/sda\n. stderr: partx: /dev/sda: failed to read partition table\nparted: invalid token: primary\nError: Expecting a file system type.\n.'}" get_commands_status /usr/local/ lib/python2. 7/dist- packages/ ironic/ drivers/ modules/ agent_client. py:113 drivers. modules. agent_client [req-a743c1dd- 3be2-4b0b- a629-bf235ab5a9 ad - - - - -] Status of agent commands for node 00000000- 0000-0000- 0000-0000000000 02: prepare_image: result "None", error "{u'message': u'Error writing configdrive to device: Writing configdrive to device /dev/sda failed with exit code 1. stdout: copy_configdriv e_to_disk. sh: Working on MBR only device /dev/sda\ ncopy_configdri ve_to_disk. sh: Adding configdrive partition to /dev/sda\ ncopy_configdri ve_to_disk. sh: Error creating configdrive on /dev/sda\n. stderr: partx: /dev/sda: failed to read partition table\nparted: invalid token: primary\nError: Expecting a file system type.\n.', u'code': 500, u'type': u'ConfigDriveWr iteError' , u'details': u'Writing configdrive to device /dev/sda failed with exit code 1. stdout: copy_configdriv e_to_disk. sh: Working on MBR only device /dev/sda\ ncopy_configdri ve_to_disk. sh: Adding configdrive partition to /dev/sda\ ncopy_configdri ve_to_disk. sh: Error creating configdrive on /dev/sda\n. stderr: partx: /dev/sda: failed to read partition table\nparted: invalid token: primary\nError: Expecting a file system type.\n.'}" get_commands_status /usr/local/ lib/python2. 7/dist- packages/ ironic/ drivers/ modules/ agent_client. py:113 drivers. modules. agent_client [req-a743c1dd- 3be2-4b0b- a629-bf235ab5a9 ad - - - - -] Status of agent commands for node 00000000- 0000-0000- 0000-0000000000 02: prepare_image: result "None", error "{u'message': u'Error writing configdrive to device: Writing configdrive to device /dev/sda failed with exit code 1. stdout: copy_configdriv e_to_disk. sh: Working on MBR only device /dev/sda\ ncopy_configdri ve_to_disk. sh: Adding configdrive partition to /dev/sda\ ncopy_configdri ve_to_dis. ..
2016-07-25 13:26:40.646 22176 DEBUG ironic.
2016-07-25 13:26:40.679 22176 DEBUG ironic.