If you use the managed hosting/cloud providers then updates are also automatic and easy.
If you use the managed hosting/cloud providers then updates are also automatic and easy.
Each one I’ve done on our cluster over the past couple of years has caused something to break, often in a strange and obscure manner.
One time an automatic master upgrade happened at 9pm and effectively sent all of our logs into a black hole for reasons unknown. As with many of the other upgrade hiccups, I just had to poke, prod, delete and recreate entities and things magically started working again.
There is so much going on under the hood it makes sense that there would be issues with upgrades, so the frequency of the releases is frustrating. Dealing with after hours alarms just because the k8s release cycle is so aggressive really grinds my gears. I would fully support an LTS version.
upgrades don't get easier when you delay them and make them bigger, they get harder. if you think k8s upgrades are bad now, having them change twice as much half as often would be worse.
Having an LTS release available offers the flexibility to choose when to upgrade based on any number of factors affecting the business and engineering cycles, the same way we pin software libraries to specific versions so our own stability and build consistency isn't subject to the varying release cycles of the package authors.
There's definitely a balance to be found between waiting so long to upgrade that it becomes insurmountable, and having to frequently run disruptive, mystery-downtime-causing upgrades for unneeded new features.
In proper CI/CD practices, build "stability" is an anachronism. Master is always green. Test changes before merging. If the changes fail the test suite then don't merge and don't deploy until it's fixed. Master stays green. Why is dynamic infrastructure any different?
LTS only makes sense as a strategy if testing and carrying out the upgrade involve significant amounts of work which needs to be planned out in advance. Ideally, this isn't the case.
Errors have never been major for us though, and they do seem to be greatly reduced recently with no noticeable issues in the 1.10x line.
A point of reference, Amazon EKS only runs 1.10 which will not be supported by the community in 3 months. So not all managed services are really keeping up.
How many of the K8S vendors are selling distributions vs support plans? Or are they always entangled? And if the community did do LTS, isn't that just shifting the work to open-source maintainers rather than focused and paid vendors?
As far as I was aware of all the on-prem options cleave to the main project support lifecycle...
Red Hat provides support our Kubernetes distribution OpenShift (upstream is OKD [formerly called Origin] project). We have an LTS release being cut soon as well. Watch OpenShift Commons for more info.
I realize that the aim is mostly at the enterprise market who don't run autoscaling groups or cattle-grade servers, but you're scaring off potential clients with these kinds of setups.
If you have a specific suggestion/RFE, I’d be happy to push on it.
A technical solution: A service that counts nodes or available VCPUs and reports it for billing. Kubernetes metrics makes this really simple.
A contract solution: Realize that bare metal is not the future (even for enterprises), and adopt a different billing model; following Oracle's per-CPU model is not the the way to be a leader in this industry. Per cluster, by bands of service counts, per site, per hour with minimum hour counts, etc.
that said, per core pricing is bullshit. and for exactly the reasons you mentioned.
What's the support lifecycle going to be on that?