Colin Walters
2018-04-17 13:38:19 UTC
We're working on merging some of the CoreOS <https://coreos.com/> technologies with
the Fedora/Atomic technologies. One thing that came up is they have
a new take on system bootstrap called Ignition:
https://github.com/coreos/ignition
We're investigating making this work in Fedora as well:
https://pagure.io/atomic-wg/issue/450
There's a fair amount of overlap with the role of Anaconda in
terms of system provisioning. Some of this is actually similar
to the overlap between kickstart + cloud-init I posted previously:
https://www.redhat.com/archives/anaconda-devel-list/2014-December/msg00008.html
We're currently thinking Ignition should take over from cloud-init (though the details
there are still TBD). Its ability to do partitioning makes it a lot
closer to kickstart[1].
One thing I'd floated in some of our discussions was that conceptually
one could write a kickstart-to-ignition transpiler just like the
"clc-to-ignition" transpiler:
https://coreos.com/os/docs/latest/overview-of-ct.html
I'm not sure if this would be valuable versus writing ct since most
people are going to be starting "fresh" I suspect, but the fact
that we could helps understand the concepts here I think.
Probably where the biggest overlap is around baremetal provisioning;
CoreOS supports a "PXE-to-Live" model for servers:
https://coreos.com/os/docs/latest/booting-with-ipxe.html
as well as a script to install to disk persistently:
https://coreos.com/os/docs/latest/installing-to-disk.html
The latter path is like the existing Anaconda+kickstart
path; so where things intersect most strongly here is what we do
with those two paths. I'd suggest that for PXE-to-Live which we
don't currently productize that we focus on Ignition.
For persistent installations - I think we'd clearly need to support
kickstarts, but it's probably useful to look at a path where
Anaconda includes support for Ignition; perhaps it something like
a %ignition config stanza in kickstart?
[1] They even support partitioning the root filesystem
but I think that only works for the existing CoreOS with the dual-partition
/usr A/B approach; what I call "classic" Fedora with yum as well as
the existing Atomic with rpm-ostree both have the operating system
content in /, not in separate partitions.
the Fedora/Atomic technologies. One thing that came up is they have
a new take on system bootstrap called Ignition:
https://github.com/coreos/ignition
We're investigating making this work in Fedora as well:
https://pagure.io/atomic-wg/issue/450
There's a fair amount of overlap with the role of Anaconda in
terms of system provisioning. Some of this is actually similar
to the overlap between kickstart + cloud-init I posted previously:
https://www.redhat.com/archives/anaconda-devel-list/2014-December/msg00008.html
We're currently thinking Ignition should take over from cloud-init (though the details
there are still TBD). Its ability to do partitioning makes it a lot
closer to kickstart[1].
One thing I'd floated in some of our discussions was that conceptually
one could write a kickstart-to-ignition transpiler just like the
"clc-to-ignition" transpiler:
https://coreos.com/os/docs/latest/overview-of-ct.html
I'm not sure if this would be valuable versus writing ct since most
people are going to be starting "fresh" I suspect, but the fact
that we could helps understand the concepts here I think.
Probably where the biggest overlap is around baremetal provisioning;
CoreOS supports a "PXE-to-Live" model for servers:
https://coreos.com/os/docs/latest/booting-with-ipxe.html
as well as a script to install to disk persistently:
https://coreos.com/os/docs/latest/installing-to-disk.html
The latter path is like the existing Anaconda+kickstart
path; so where things intersect most strongly here is what we do
with those two paths. I'd suggest that for PXE-to-Live which we
don't currently productize that we focus on Ignition.
For persistent installations - I think we'd clearly need to support
kickstarts, but it's probably useful to look at a path where
Anaconda includes support for Ignition; perhaps it something like
a %ignition config stanza in kickstart?
[1] They even support partitioning the root filesystem
but I think that only works for the existing CoreOS with the dual-partition
/usr A/B approach; what I call "classic" Fedora with yum as well as
the existing Atomic with rpm-ostree both have the operating system
content in /, not in separate partitions.