Lui? Soms is een upgrade gewoon echt niet nodig. 5 jaar is in veel omgevingen gewoon echt heel krap, voordat je het weet ben je er al doorheen.
Het ligt nogal aan je definitie van "nodig".
Mijn insteek is dat je productie omgeving de 'huidige' versie moet draaien (uiteraard met wat marge voor upgrades). Zodat op het moment dat een systeem niet meer mag of kan veranderen het nog een aantal jaren mee kan en je niet direct zonder ondersteuning komt te zitten.
In mijn omgeving weet ik dat (sommige) data nog jaren bewaard moet worden en dat de bijhorende applicatie ook moet functioneren om die data te kunnen lezen. Dus op het moment dat de "bussiness" er klaar mee is (en eigenlijk niet meer wil investeren) moet het nóg 5 jaar mee (soms zelf langer). Sterker nog, vaak wordt er geredeneerd dat de applicatie nog maar 2 jaar mee hoeft en dat ze dus nu wel kunnen stoppen met het dure onderhoud en dat het support contract ook al opgezegd kan worden. Om er dan pas achter te komen dat de software nog 5 jaar beschikbaar moet blijven om aan onze wettelijke verplichtingen te voldoen.
Vroeg of laat doet zich een probleem voor (beveiliging of anders) en dan zit iedereen helemaal klem. Het OS is verouderd, de applicatie loopt achter, er is geen support contract en de kennis is de organisatie al weer verlaten. In theorie kun je opnieuw ondersteuning kopen en/of de leverancier inschakelen maar dat kost klauwen met geld, niet in het minst omdat je eerst jaren aan achterstallig onderhoud moet wegwerken.
Dan moet je dus pakweg iedere 2 jaar een major upgrade doen. Ik weet dat men dat erg vaak vindt, maar ik weet ook dat upgrades alleen maar moeilijke worden hoe langer je wacht. Als het niet aan de software zelf ligt dan komt het wel door de mensen. Na 5 jaar is de kennis van de software weer flink weggezakt, als ze uberhaupt nog werken. Hoe vaker je het doet hoe makkelijker het wordt.
Uiteraard moet je wel goed testen maar ook dat is makkelijker als er niet te veel tegelijk veranderd. Daarbij moet je tegenwoordig eigenlijk toch al zorgen voor goede tests en monitoring.
Liefst heb je het hele upgrade/installeer proces zelfs zo veel mogelijk geautomatiseerd zodat je niet afhankelijk bent van vergeetachtige mensen die fouten maken. Als het dan toch helemaal geautomatiseerd en goed gemonitored is dan is vaak upgraden ook niet meer lastig.
Nu snap ik dat niet iedereen zo ver is met z'n infrastructuur (ahum) maar dit is in mijn ogen waar je naar moet streven.
Uiteraard moet je er ook naar streven om nooit in die situatie te komen en je hele lifcycleplan zo goed op orde te hebben dat je nooit met verouderde zooi komt te zitten. Maar ik heb meer vertrouwen in patches die nu worden geinstalleerd dan de belofte om dat over 5 jaar te doen.
Je gaat namelijk niet op dag 1 na de release upgraden van Ubuntu 16.04 naar 18.04, dat doe je vaak als 18.04.2 uit is na ongeveer een jaar. Dan ben je een jaar aan het upgraden en heb je effectief dus nog 3 jaar op 18.04 alvorens je naar 20.04 zou willen.
Het is wederom meer wensdenken dan de praktijk, maar idealiter heb je de test versie van zo'n OS al lang getest zodat je weet dat je geen problemen gaat hebben op het moment dat het in productie gaat. Alles wordt in openheid ontwikkeld en direct beschikbaar gemaakt voor testen. Als je daar pas mee begint op het moment dat OS klaar en bevroren is ben je eigenlijk te laat.
'Don't fix what ain't broken', soms werken systemen gewoon prima. Als de hardware in orde is, de software gepatched is, waarom moet je dan perse upgraden?
Zolang security fixes maar door komen lijkt mij dat prima.
Alle software is kapot, je weet het alleen nog niet.
Ik ben het op zich met je eens dat security patches belangrijker zijn dan features, maar het onderscheid is niet altijd duidelijk. Veel bugs worden opgelost zonder dat er beseft wordt dat er ook security implicaties waren.