[Bug 2013336] Re: agent fails if /boot/grub/menu.lst GRUB config file is not present

Launchpad Bug Tracker 2013336 at bugs.launchpad.net
Tue May 30 19:15:01 UTC 2023


This bug was fixed in the package hibagent - 1.0.1-0ubuntu2.22.10.1

---------------
hibagent (1.0.1-0ubuntu2.22.10.1) kinetic; urgency=medium

  * d/p/lp1896638-set-resume-device-by-partition-uuid: Set resume device
    by PARTUUID instead of by name. Thanks to Tony Nie <zirann at amazon.com>.
    (LP: #1896638)
  * d/p/lp2013336-do-not-modify-GRUB-config-on-GRUB2-systems: Do not attempt to
    modify non existent GRUB config file. Thanks to Robert Schweikert
    <rjschwei at suse.com>. (LP: #2013336)

 -- Alberto Contreras <alberto.contreras at canonical.com>  Tue, 04 Apr
2023 18:03:13 +0200

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to hibagent in Ubuntu.
https://bugs.launchpad.net/bugs/2013336

Title:
  agent fails if /boot/grub/menu.lst GRUB config file is not present

Status in hibagent package in Ubuntu:
  Fix Released
Status in hibagent source package in Focal:
  Fix Released
Status in hibagent source package in Jammy:
  Fix Released
Status in hibagent source package in Kinetic:
  Fix Released

Bug description:
  [ Impact ]

   * This bug prevents the agent to correctly set up instances
     for hibernation. It disallows AWS to hibernate spot instances.

  [ Test Plan ]

   * Spin up an EC2 spot instance with `hibernate` as `Interruption behavior` [1].
   * Install the latest hibagent: `sudo apt-get install hibagent`
   * Enable hibernation: `sudo /usr/bin/enable-ec2-spot-hibernation`
   * Create an AWS FIS experiment template to send a spot-instance-interruption signal [2], make it point to the created instance and launch it.
     Note: This step is optional, one can wait for AWS EC2 to send the interruption signal, but it could take a lot of time.
   * After some minutes, EC2 will send a signal to resume the interrupted instance.
   * Verify the instance has correctly been resumed from hibernation.

  [1] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/interruption-behavior.html#specifying-spot-interruption-behavior
  [2] https://catalog.us-east-1.prod.workshops.aws/workshops/5fc0039f-9f15-47f8-aff0-09dc7b1779ee/en-US/030-basic-content/078-ec2-spot/020-spot-ec2-interrup

  [ Where problems could occur ]

   * On affected releases, hibagent modifies config files for both GRUB and
     GRUB2. The upstream patch only modifies the GRUB config file if it is
     present. Thus, if there is a regression it would affect releases with GRUB,
     but we are going to include it in series that ship with GRUB2.

  [ Other Info ]

   * Bionic ships GRUB2 but the images contain the old and not needed
     /boot/grub/menu.lst . CPC has confirmed that there are no plans
     to remove that file as that would constitute a breaking change for
     an LTS. That's why this bug does not affect bionic.

  [Original Description]

  The agent fails to initialize the swap when /boot/grub/menu.lst is not present.
  That file is related to GRUB and is not needed on systems with GRUB2 installed.

  # /usr/bin/enable-ec2-spot-hibernation
  # journalctl -u hibagent
  ...
  Mar 30 10:51:10 ip-172-31-34-23 /hibagent[615]: Failed to initialize swap, reason: [Errno 2] No such file or directory: '/boot/grub/menu.lst'
  Mar 30 10:51:11 ip-172-31-34-23 /hibagent[615]: Background swap initialization thread is complete.

  I expected the agent to not require config files of older grub
  versions to be present to correctly configure the system for
  hibernation.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/hibagent/+bug/2013336/+subscriptions




More information about the foundations-bugs mailing list