fstab entries written by cloud-config may not be mounted
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cloud-init |
Fix Released
|
Medium
|
Unassigned | ||
cloud-init (Ubuntu) |
Confirmed
|
Medium
|
Unassigned | ||
Xenial |
Confirmed
|
Medium
|
Unassigned | ||
Yakkety |
Won't Fix
|
Medium
|
Unassigned | ||
Zesty |
Won't Fix
|
Medium
|
Unassigned | ||
Artful |
Won't Fix
|
Medium
|
Unassigned |
Bug Description
=== Begin SRU Template ===
[Impact]
There is a race condition on a re-deployment of cloud-init on Azure
where /mnt will not get properly formatted or mounted. This is due to
"dirty" entries in /etc/fstab that cause a device to be busy when
cloud-init goes to format it. This shows itself usually as 'mkfs'
complaining that the device is busy. The cause is that systemd
starts an fsck and collides with cloud-init re-formatting the disk.
The problem can be seen other places but seemed to be most reproducible
and originally found on Azure.
[Test Case]
1.) Launch a Azure vm, ideally size L32S.
2.) Log in and verify the system properly mounted /mnt.
3.) Re-deploy the vm through the web ui and try again.
[Regression Potential]
Worst case scenario, these changes unnecessarily slow down boot and
do not fix the problem.
[Regression]
This SRU change caused bug 1717477.
[Other Info]
Upstream commit at
https:/
=== End SRU Template ===
As reported in bug 1686514, sometimes /mnt will not get mounted when re-delpoying or stopping-
Related bugs:
* bug 1686514: Azure: cloud-init does not handle reformatting GPT partition ephemeral disks
* bug 1717477: cloud-init generates ordering cycle via After=cloud-init in systemd-fsck
Related branches
- Scott Moser: Approve
-
Diff: 47 lines (+0/-12)3 files modifieddev/null (+0/-2)
packages/redhat/cloud-init.spec.in (+0/-6)
setup.py (+0/-4)
- Chad Smith: Approve
- Server Team CI bot: Approve (continuous-integration)
- Joshua Powers (community): Approve
- cloud-init Commiters: Pending requested
-
Diff: 48 lines (+9/-2)3 files modifiedcloudinit/util.py (+3/-2)
setup.py (+4/-0)
systemd/systemd-fsck@.service.d/cloud-init.conf (+2/-0)
- Balint Reczey (community): Needs Information
- Server Team CI bot: Approve (continuous-integration)
- cloud-init Commiters: Pending requested
-
Diff: 30 lines (+6/-0)2 files modifiedsetup.py (+4/-0)
systemd/systemd-fsck@.service.d/cloud-init.conf (+2/-0)
Changed in cloud-init: | |
assignee: | nobody → Balint Reczey (rbalint) |
Changed in cloud-init (Ubuntu): | |
status: | New → Confirmed |
importance: | Undecided → Medium |
Changed in cloud-init (Ubuntu Xenial): | |
status: | New → Confirmed |
Changed in cloud-init (Ubuntu Yakkety): | |
status: | New → Confirmed |
Changed in cloud-init (Ubuntu Zesty): | |
status: | New → Confirmed |
Changed in cloud-init (Ubuntu Xenial): | |
importance: | Undecided → Medium |
Changed in cloud-init (Ubuntu Yakkety): | |
importance: | Undecided → Medium |
Changed in cloud-init (Ubuntu Zesty): | |
importance: | Undecided → Medium |
Changed in cloud-init: | |
assignee: | Balint Reczey (rbalint) → nobody |
assignee: | nobody → Balint Reczey (rbalint) |
Changed in cloud-init: | |
status: | Confirmed → Fix Released |
description: | updated |
Changed in cloud-init: | |
status: | Fix Released → Fix Committed |
tags: |
added: verification-done-zesty removed: verification-needed verification-needed-zesty |
Changed in cloud-init (Ubuntu Yakkety): | |
status: | Confirmed → Won't Fix |
description: | updated |
Changed in cloud-init (Ubuntu Artful): | |
status: | Fix Released → Confirmed |
Changed in cloud-init: | |
status: | Fix Released → Confirmed |
Changed in cloud-init (Ubuntu Xenial): | |
status: | Fix Released → Fix Committed |
status: | Fix Committed → Confirmed |
Changed in cloud-init (Ubuntu Zesty): | |
status: | Fix Released → Confirmed |
Changed in cloud-init (Ubuntu Zesty): | |
status: | Confirmed → Won't Fix |
Changed in cloud-init (Ubuntu Artful): | |
status: | Confirmed → Won't Fix |
Changed in cloud-init: | |
status: | Confirmed → Fix Released |
These tarballs are collected with 'save-old-data' at /git.launchpad. net/~smoser/ cloud-init/ +git/sru- info/tree/ bin
https:/
They represent: 90-g61eb03fe- 0ubuntu1~ 16.04.1) first-reboot. tar.xz: I did a dpkg -i of cloud-init_ 0.7.9-139- gb5722bd1- 1~bddeb_ all.deb (current branch with fix for bug 1686514) restart. tar.xz: After a 'stop' and then 'start' in the web console. This showed the bug. restart- with-fsck. tar.xz: dpkg -i of a another branch cloud-init_ 0.7.9-140- g2e21a411- 1~bddeb_ all.deb and stop and start.
orig-boot.tar.xz: the first boot of a 16.04 pristine image (0.7.9-
upgrade-
after-
after-