Open rocketraman opened 3 months ago
You can control when nodes are allowed to reboot to finalize the update. See OS update finalization.
Surely the default should not be randomly reboot while the box is active?
In any case, the examples given there use Butane to provision the OS with those settings. How can I apply these settings to an already created box?
For me personally, the immediate
strategy makes sense as it finalizes updates as soon as possible.
There is a link at the bottom of the OS update finalization docs section that refers to the Zincati updates strategy docs page.
Here's how to customize Zincati at runtime.
Surely the default should not be randomly reboot while the box is active?
Zincati does check if someone is logged into the system and warns before rebooting, but otherwise yes that is indeed the default. The expectation is that if this doesn't work for you, then you need to configure fancier strategies in Zincati using e.g. the periodic or fleetlock strategies.
In this case, it seems like Zincati failed to query the list of active users.
As a sanity-check, what does loginctl list-sessions --output=json
show?
Aug 16 09:02:46 myhost zincati[4777]: [ERROR zincati::update_agent] failed to check for interactive sessions: failed to deserialize output of
loginctl
We should probably just dump there the output we failed to deserialize
In this case, it seems like Zincati failed to query the list of active users. As a sanity-check, what does
loginctl list-sessions --output=json
show?
[{"session":"2","uid":1000,"user":"core","seat":null,"tty":null,"state":"active","idle":false,"since":null}]
Aug 16 09:02:46 myhost zincati[4777]: [ERROR zincati::update_agent] failed to check for interactive sessions: failed to deserialize output of
loginctl
We should probably just dump there the output we failed to deserialize
That would be helpful in debugging this issue.
Aug 16 09:02:46 myhost zincati[4777]: [WARN zincati::update_agent] assuming no active sessions and proceeding anyway
Also, I would suggest this is a bad assumption to make.
Describe the bug
I'm experimenting with Fedora CoreOS in a VM. I'm finding my VM just randomly reboots, even while I'm in the middle of working on it.
Inspecting the logs via
journalctl
I see this:From these logs it seems like zincati is checking if there are any active sessions, failing to do so ("failed to check for interactive sessions: failed to deserialize output of
loginctl
"), and then proceeding to assume there are none and rebooting anyway (!) ("assuming no active sessions and proceeding anyway").This is annoying to say the least.
Reproduction steps
Expected behavior
System should not reboot automatically while it is being used!
Actual behavior
System rebooted automatically while being used.
System details
QEMU
Butane or Ignition config
Additional information
The output of
loginctl
is: