Wiki - 
https://fedoraproject.org/wiki/Changes/CoreOS_default_to_enable_systemd-oomd_and_swap_on_Zram
Discussion thread -
https://discussion.fedoraproject.org/t/f45-change-proposal-enable-systemd-oomd-and-zram-swap-for-coreos-self-contained/197232


This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes
process, proposals are publicly announced in order to receive
community feedback. This proposal will only be implemented if approved
by the Fedora Engineering Steering Committee.


= Enable systemd-oomd and zram swap for CoreOS =

{{Change_Proposal_Banner}}

== Summary ==

Enable systemd-oomd.service and swap on zram by default to align
Fedora CoreOS with other Fedora variants.

== Owners ==

* Name: [[User:Nemric| Nemric]]
* Email: emeric at i-chassagne dot fr
* Name: [[User:jbtrystram| jbtrystram]]
* Email: [email protected]

== Detailed Description ==
Enable `systemd-oomd.service` and swap on zram in CoreOS by default as
it's done in other Fedora variants.
This was historically disabled because Kubernetes was not compatible
with swap on nodes until recently
[https://kubernetes.io/docs/tutorials/cluster-management/provision-swap-memory/
(provision-swap-memory)]. As CoreOS targets container workloads
it made sense to aim for a better kubernetes experience.

Note that this will not only affect new installs, but also existing
running nodes.
See more discussion in
https://github.com/coreos/fedora-coreos-tracker/issues/840 and
https://github.com/coreos/fedora-coreos-tracker/issues/859

== Feedback ==

The change author (Nemric) have been using swap on zram since years
now, and kubernetes is working great with that.
He also enabled `systemd-oomd.service` months ago without issues with
the following kubelet config:

<pre>
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
failSwapOn: false
memorySwap:
  swapBehavior: LimitedSwap
</pre>

== Benefit to Fedora ==

That will reduce the CoreOS configuration as we would simply inherit
what's default in Fedora. This is a reduction in maintenance work.


== Scope ==
* Proposal owners:
** Remove the overrides from the config
** Write a release-notes entry detailing the change.


== Upgrade/compatibility impact ==
<!-- What happens to systems that have had a previous versions of
Fedora installed and are updated to the version containing this
change? Will anything require manual configuration or data migration?
Will any existing functionality be no longer supported? -->

This change will affect all nodes then, take care of apps that won't
accept swap as default behavior like kubernetes
see 
[[Changes/CoreOS_default_to_enable_systemd-oomd_and_swap_on_Zram#Feedback|Feedback]]

== How To Test ==
see https://fedoraproject.org/wiki/QA:Testcase_CoreOS_swap_on_zram


== User Experience ==


== Contingency Plan ==

Disable the service in the next release and ship a migration script to
turn it off for nodes that were deployed with the service active.


== Release Notes ==



-- 
Aoife Moloney

Fedora Operations Architect

Fedora Project

Matrix: @amoloney:fedora.im

IRC: amoloney

-- 
_______________________________________________
devel-announce mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it: 
https://forge.fedoraproject.org/infra/tickets/issues/new

Reply via email to