Často se setkáváme u zákazníků s požadavky na verzi některé ze serverových komponent. Ať už jde o požadavek typu "potřebuji nejméně verzi X.Y" nebo o požadavek typu "potřebuji právě verzi X.Y", nebo dokonce "ve verzi X.Y, kterou máte na serveru je chyba, nebo bezpečnostní chyba, aktualizujte si na verzi X.Z", jsou takové požadavky či připomínky obvykle liché. Na všechny tři otázky existuje jedna odpověď. Ne, nepotřebujete. Ovšem existují i vyjímky a o těch budu psát také.
Často zákazníci namítají: "Ale moje aplikace potřebuje přesně tuhle verzi." nebo "Stáhnul jsem si software a neprošla mi instalační kontrola." a obvykle to potvrdí ještě zasvěceným "Máte tam starou verzi, už je dávno venku nová verze."
Ano, víme o nových verzích, také víme, že kdejaké webové aplikace, včetně velmi populárních, provádějí předinstalační kontroly prerequisit a také víme, že vývoj vlastní aplikace, není-li veden správně, je problematický a může být vázaný na konkrétní verzi programového vybavení. Jenže všechny tyto důvody nejsou mnoho ve srovnání s několika důvody, proč používat jinou, a to distribuční verzi.
Předně je potřeba si říci, že se bavíme o sdíleném hostingu, tedy o takovém, kde je více zákazníků na jednom serveru a přistupují k jednomu programovému vybavení. Ke stejné verzi. Ano, je možné nainstalovat více verzí a nechat zákazníka aby si vybral. Ale opravdu chceme mít na sdíleném hostingu tolik verzí, kolik zákazníků? Ne, nechceme. Důvod je prostý. Je velmi pracné udržovat několik verzí zároveň při zachování vysoké míry bezpečnosti, automatizace a dostupnosti. Ano, ulehčujeme si práci. Naše systémy jsou automatizované a díky tomu i bezpečné. Když se objeví chyba, jsme schopni ji během pár minut opravit na všech dotčených systémech.
Co mám tedy dělat, když nějakou specifickou verzi programového vybavení potřebuji? Je to prosté. Předně je třeba se ujistit, že ji opravdu potřebujete. Že to tvrdí aplikace v podstatě nic neznamená. Obvykle slepě testují, výpis verze programu a pokud je jiný než verze nastavená v proměnné, tak se odmítne nainstalovat. To ale rozumná aplikace neudělá.
Rozumné aplikace se nepíší na konkrétní verzi programového vybavení, ale píší se na míru operačnímu systému. Pokud je u aplikace napsáno, že potřebuje operační systém Red Hat Enterprise Linux verze 6 nebo MS Windows 2012, můžete si být v podstatě jisti, že na takovém operačním systému poběží. Tedy pokud se administrátor nerozhodne, že poslechne zákazníky a nenainstaluje tam "nejnovější verzi některého programu". Administrátor se totiž drží distribučního software a neinstaluje "kde co z internetu". Ano i PHP a MariaDB je "kde co z internetu", pokud to není otestovaný distribuční balík, který je sladěn se zbytkem systému.
Co ale s takovými aplikacemi? Stačí ověřit, že je na serveru taková verze, která technicky splňuje požadavky aplikace a tuto verzi jí vnutit (třeba přepsáním proměnné v kontrolním skriptu).
Co když to nestačí? Pak zřejmě nainstalovaná verze nesplňuje technické požadavky a je třeba zvolit hosting, který takové programové vybavení nabízí. Na našich serverech najdete obvykle alespoň tři verze operačního systému. Starší, moderní a nejnovější. V současné době je to RHEL5, RHEL6 a RHEL7. Proč tolik verzí? Protože na RHEL5, který byl před pár lety nejnovější máme stále zákazníky, kteří ho používají a jsou rádi, že nemusí přepisovat svoje aplikace na vyšší verzi operačního systému a chtějí s tímto systémem "dožít". Pak je tu verze RHEL6, která je u nás nejrozšířenější a využívá ji největší počet zákazníků. Je ověřená, má moderní aplikační vybavení. No a RHEL7 je nejnovější, nejmodernější a je to příští verze pro největší množství zákazníků. Všechny tři verze jsou podporovány a jsou k nim vydávány opravy chyb a bezpečnostní záplaty.
- RHEL5 bude podporován do roku 2017 (pravděpodobně déle o tři roky),
- RHEL6 do roku 2020 a
- RHEL7 bude supportovaný do roku 2024.
Podrobnosti naleznete zde: https://access.redhat.com/support/policy/updates/errata
Když srovnáte deset respektive třináct let podpory s jinými GNU/Linux distribucemi, je jasné, že support RHEL je opravdu dlouhý a dá se na něj spolehnout. Žádný ze zákazníků by nechtěl každé dva roky přepisovat své aplikace. A pokud ano, může i u nás.
Verze programového vybavení je vázána na verzi operačního systému a nemění se po celý životní cyklus. Tedy deset až třináct let. To ale neznamená, že je celou tu dobu zastaralá a "děravá". Znamená to pouze, že někdo dělá práci za vás a nenechá vás přepisovat aplikace každých pár let. Red Hat nejenže po celou dobu životního cyklu opravuje chyby a bezpečnostní chyby, ale také doplňuje vlastnosti z nových verzí. Říká se tomu backporting a umožňuj zachovat stabilní verzi programového vybavení po dlouho dobu. V systému je uvedene verz, která však neodpovídá upstreamové "té na Internetu". Je totiž upravena o backportované vlastnosti, opravy a bezpečnostní opravy. Více podrobností naleznete zde: https://access.redhat.com/security/updates/backporting
Stále potřebujete nějakou verzi PHP? Zkuste raději začít používat rozumné aplikace, které nejsou fixované na přesné programové vybavení, např. Joomla, Wordpress apod. Tyto rozumné aplikace funguji na všech hosting serverech a jejich provoz vyjde pouze na 25 Kč/měsíc.
V případě požadavku na přesné programové vybavení nezbývá nic jiného než přesunout váš web na vlastní VPS server. Doporučujeme VPS server Full se správou za 630 Kč/měsíc.