My introduction to streaming OS was CoreOS. I’m not quite certain why they call it a
streaming OS when there is no actual streaming taking place. In actuality it stems from the agile
notion of “release often”. Examples include:
What made CoreOS interesting was that for the most part the OS was immutable and that the mutable part was walled off by Docker Containers. In the early days of Docker this was great because most docker containers were limited microservices. Later on most architects included a complete OS. There are some interesting use-cases for using docker for a complete OS but that creates more attack surface area and the host OS starts acting more like VMware without the instrumentation… which lead to a number of other technologies. And the free/cost pendulum continues to swing as the risk and dependencies follow. See rancher, rkt, k3s, k8s, swarm and so on.
so many dead projects
Recently I read that Intel makes a point that Clear Linux is not meant for production. That’s fine
but missed the point. CI/CD certainly benefits from
release often however it has a weakness
and that is breaking releases. I think Clear Linux was also meant as a Docker host but never really
took the last step.
The purpose of release often is that it takes place in minor increments. The cadence means everything. Since the OS development is happening out of sight you’ll never know or have a warning if there is a breaking release regardless how small it might be.
Restated; streaming OS releases are contraindicated for systems that are dependent on CI/CD.