A felhő informatikának kiemelten fontos része az architektúra, ezen belül pedig a munkaterhek ütemezése és mozgatása, felhasználói felületek létrehozása különböző forrástípusok és szolgáltatók számára, rendszerképmások beemelése és kezelése, API-k különböző szinteken való biztosítása és megfelelő láthatóság lehetővé tétele az erőforrások felhasználása, illetve a szolgáltatások szintjei terén.
Az, hogy ezek a komponensek hogyan kapcsolódnak és viszonyulnak egymáshoz – és az, hogy milyen mértékben tudnak együttműködni más gyártók által kifejlesztett komponensekkel, illetve mennyire tudják azokat helyettesíteni – az leginkább az architektúra kérdése kell legyen, és nem az egyes részegységeken vagy monolitikus szoftverkészleteken szabad múljon.
A Red Hatet felhő-informatikai stratégiájának kifejlesztése során a következő néhány alapvető elv vezérelte.
Az első alapelv, tekintve a Red Hat történetét, egyáltalán nem meglepő. Minden, a Red Hat felhő-alapú termékeibe becsatornázódó projekt nyílt forráskódú, és ami legalább ennyire fontos, mind élénk kapcsolatban áll az iparág közösségeivel, fejlesztőivel illetve felhasználóival. Például a Deltacloud API jelenleg az Apache Foundation Incubator nevű projektjének felügyelete illetve engedélyezése alatt áll. A nyílt forráskód által lehetővé tett innovatív szemléletmód, gazdasági és üzleti modelljek mind átszövik a Red Hat terémkeit.
A második alapelv, amely szorosan kapcsolódik az elsőhöz, az nem más, mint az interoperabilitás. A Red Hat elkötelezett aziránt, hogy olyan felhő-alapú megoldást nyújtson, amely egyszerre átfogó, és ugyanakkor fejlett, több-rendszert izoláltan kezelni tudó biztonságú és magasfokú méretezhetőséggel rendelkező infrastruktúrán nyugszik. Ugyanakkor a Red Hatnek az is ugyanolyan fontos, hogy ezt nyílt forráskódú megoldások révén, interoperabilitást támogató módon tegye lehetővé, tehát úgy, hogy a felhasználók kedvük szerint kombinálhassák a Red Hat komponenseket más gyártók termékeivel, valamint újonnan vásárolt, illetve már meglévő termékekkel.
Ez a forradalmi változás azonban nem csak arra van hatással, hogy milyen terméket vásárolunk meg, kitől és mikor. Meglévő alkalmazások is átemelhetők felhő környezetekbe vagy azok akár tovább is bővülhetnek, ami azért kedvező, mert bármely informatikai infrastruktúra esetén a leghosszabb életciklusú részeknek az alkalmazások számítanak. A Red Hat a felhők terén támogatni kívánja az operatív és fejlesztési környezetek széles választékát. A Red Hat Linux és a JBoss Enterprise Middleware a számítási felhőket új és meglévő vállalati-szintű alkalmazások számára is elérhetővé teszik, míg a LAMP, a Ruby és a Spring gyors, könnyűsúlyú alkalmazásfejlesztést biztosítanak. Nincs szükség az alkalmazás újraírására ahhoz, hogy a felhő-környezetű infrastruktúra előnyeit élvezhessük.
A fenti bevezetés után most tekintsük meg közelebbről, hogy pontosan milyen elemekből áll össze a Red Hat felhő-architektúrája. Ezen elemek közül többel is foglalkozunk majd részletesebben, jelenleg ezekről csupán egy átfogó ismertetőt nyújtunk.
Cloud Engine és Deltacloud API. A Cloud Engine méretezhető privát felhőket hoz létre, különböző virtualizációs platformok felhasználásával, amelyeket nyilvános felhő szolgáltatók federálhatnak egy egyesített menedzsment keretrendszer alatt. A Cloud Engine olyan feladatokat lát el, mint a felhasználók, csoportok és engedélyek kezelése, forráskezelés, illetve rendszerképmások elhelyezése, ütemezése. Ez az ütemezés egy beágyazott Red Hat Enterprise MRG Grid kód segítségével történik. Ez egy olyan magas skálázatóságú munkaütemező alkalmazás, amelynek alapja a nyílt forráskódú Condor projekt. Mind a bejövő, mind a kimenő kommunikáció a motorral a Deltacloud API-n keresztül történik, amely több nyílt interfész egybefoglalása.
„Alkalmazásépítő”. Ennek a funkciónak az a lényege, hogy tartalommal töltsük meg a felhőt, akár egy új rendszerképmás létrehozásával, vagy egy már meglévő kép importálásával, majd ezek eredményeképp létrejött könyvtár kezelésével. Kifejezetten arra tervezték, hogy több célfelhőt támogasson, és hogy olyan beállítások konfigurációmenedzsmentjét nyújtsa, mint amilyenek a nyilvános IP címek, tűzfal szabályok, hálózati beállítások, és így tovább. Célja, hogy az alkalmazások mozgathatók legyenek a felhők között, illetve, hogy a fejlesztők az egyszer már megírt alkalmazást bárhol bevethessék, ezáltal megszüntetve annak az esélyét, hogy egy tulajdonosi felhő platformból ne tudjanak kiszabadulni.
Portál és ezközök. Céljuk az önkiszolgálás és adminisztratív hozzáférés lehetővé tétele képalkalmazás- és konfiguráció, policy-k (például kvóták) felállítása, felhasználók provízionálása, és a valósidejű és régi adatokhoz való hozzáférés lehetővé tétele során. A web-alapú grafikai felhasználói felületen kívül parancssor eszközök is elősegítik az automatizált szkriptelést.
Jelentéskészítés. A Cloud Engine nagyszemcséjű adatokat naplóz például a források felhasználásáról, a szolgáltatási szintekről, és a kvóták / policy-k betartásáról. Ezeket az adatokat olyan célokra lehet felhasználni, mint a számítástechnikai forrásfelhasználásért való számlázás, vagy képességek bővítésének tervezése.
Felhő szolgáltatások. Ezek olyan alkalmazások illetve eszközök hasznára válhatnak, amelyek felhő környezetben hajtanak végre valamilyen feladatot. Céljuk, hogy leegyszerűsítsék a fejlesztést illetve működtetést azáltal, hogy lecsökkentik a gyakran használt alkalmazások újraimplementálásának a szükségességét. Például tárhelyszolgáltatás-típusok kerülhetnek ide: az egyik lehet egy REST-típusú webes felület nagyobb méretű objektumok számára, a másik pedig egy fájlrendszerhez hasonló működési tárhely. Ezek a szolgáltatások lehetővé teszik a privát felhők létrehozását, illetve az alkalmazások jellemzőinek mozgatását különböző nyilvános felhő szolgáltatók között.
A felhő architektúrához kapcsolódóan a Red Hat számára a nyitottság és a modularitás kiemelten fontos értékek. Mivel az ügyfelek szabadon társíthatják a Red Hat felhőtechnológiáit a meglévő befektetéseikkel, nyilvános felhó szolgáltatókkal és más gyártók termékeivel, így a választási szabadságukban sincsenek korlátozva. Hatékony hozzáállásnak bizonyul az ügyfelek számára kihasználni a nyílt forráskódú innováció előnyeit, hiszen ez lehetővé teszi és támogatja őket abban, hogy a nyílt felületeken keresztül további funkciódarabkákkal gazdagodjanak – hasonlóan, mint a Linux esetében.