canonical / cloud-init

Official upstream for the cloud-init: cloud instance initialization
https://cloud-init.io/
Other
2.92k stars 871 forks source link

[Ubuntu 22.04]cloud-init failed to complete after 10 minutes of waiting was shown during Installation via iDRAC Virtual Console #4009

Closed ubuntu-server-builder closed 1 year ago

ubuntu-server-builder commented 1 year ago

This bug was originally filed in Launchpad as LP: #1986781

Launchpad details
affected_projects = ['subiquity', 'casper (Ubuntu)', 'casper (Ubuntu Focal)', 'casper (Ubuntu Jammy)', 'casper (Ubuntu Kinetic)']
assignee = None
assignee_name = None
date_closed = 2022-09-16T19:09:09.209707+00:00
date_created = 2022-08-17T09:55:27.968812+00:00
date_fix_committed = None
date_fix_released = None
id = 1986781
importance = undecided
is_complete = True
lp_url = https://bugs.launchpad.net/cloud-init/+bug/1986781
milestone = None
owner = shubhakara
owner_name = Shubhakar Gowda P S
private = False
status = invalid
submitter = shubhakara
submitter_name = Shubhakar Gowda P S
tags = ['se-sponsor-mfo', 'sts', 'verification-done', 'verification-done-jammy']
duplicates = [1969919, 1971181, 2003152]

Launchpad user Shubhakar Gowda P S(shubhakara) wrote on 2022-08-17T09:55:27.968812+00:00

[Impact]

 * Users that install Ubuntu Server through slow    media (eg, virtual optical drive over network,    which may be common on enterprise deployments)    might hit the following subiquity startup error:

  'cloud-init failed to complete after 10 minutes of waiting'

 * (That in addition to 10 minutes of waiting themselves.)

 * This happens because casper-md5check.service is    (slowly) verifying the integrity of install media,    which blocks multi-user.target,    which blocks cloud-final.service,    which blocks cloud-init status --wait    which is used in subiquity / waiting on cloud-init).

[Fix]

 * The adopted solution (merged on lunar) is simply    not to block multi-user.target, but rather run    after it.

[Test Steps]

 For a synthetic reproducer of slowness of casper-md5check:

  boot with break=init to break into initramfs-tools    before exec() systemd.   chroot /root /bin/bash   edit /usr/lib/systemd/system/casper-md5check.service   prepend strace --inject read:delay_enter=5s to the    command in ExecStart, to introduce a 5 secs delay    to every read() syscall performed by casper-md5check.  * exit twice (chroot, initramfs shell) to resume boot.

  See comment 37 for examples.

[Regression Potential]

 * There's a cosmetic glitch in the proposed solution:    the systemd line when casper-md5check finishes    shows up on top of subiquity's menu (screenshot):

   "[ OK ] Finished casper-md5check Verify Live ISO checksums."

   Dan Bungert mentioned this is known and should be    addressed in a future change to subiquity, and is    not supposed to block the SRU for Jammy / 22.04.2.

[Original Description]

Description:

On Dell EMC PowerEdge system when Install Ubuntu 22.04 via iDRAC Virtual Console, cloud-init failed to complete after 10 minutes of waiting.

Steps to Reproduce:

  1. Login to iDRAC and Launch Virtual Console.
  2. Connect to Virtual Media and Map ubuntu 22.04 iso file using Map CD/DVD option.
  3. Try Installing Ubuntu server.
  4. "cloud-init" failed to complete after 10 minutes of waiting was shown during Installation.

Expected Results :-

Installation should be successful.