mi a mezoszféra
a mezoszféra egy szoftveres megoldás, amely kibővíti az Apache Mesos klaszterkezelési képességeit további komponensekkel, hogy új és új módot biztosítson a szerver infrastruktúrák kezelésére. Kombinálásával több komponenst Mesos, mint a Marathon és Chronos, Mesosphere lehetővé teszi a módját, hogy könnyen méretezhető alkalmazások elvonatkoztatással el sok a kihívások kapcsolódó méretezés.
a mezoszféra olyan funkciókat kínál, mint az alkalmazás ütemezése, méretezés, hibatűrés és öngyógyítás. Ezenkívül biztosítja az alkalmazásszolgáltatás felfedezését, a port egyesítését és a végpont rugalmasságát.
annak érdekében, hogy jobb képet kapjunk arról, hogy a mezoszféra hogyan biztosítja a fent említett jellemzőket, röviden elmagyarázzuk, hogy a mezoszféra egyes kulcskomponensei mit csinálnak, kezdve az Apache Mesos-szal, és megmutatjuk, hogyan használják mindegyiket a mezoszféra összefüggésében.
az Apache Mesos alapvető áttekintése
az Apache Mesos egy nyílt forráskódú klaszterkezelő, amely leegyszerűsíti az alkalmazások futtatását egy skálázható kiszolgálófürtön, és a mezoszféra rendszer szíve.
a Mesos számos olyan funkciót kínál, amelyet elvárhat egy klaszterkezelőtől, például:
- skálázhatóság több mint 10 000 csomópontra
- erőforrás-elkülönítés feladatokhoz Linux konténereken keresztül
- hatékony CPU és memória-tudatos erőforrás-ütemezés
- magasan elérhető mester az Apache ZooKeeper-en keresztül
- web UI A fürt állapotának megfigyelésére
Mesos architektúra
a Mesos architektúrája master és slave démonokból és keretrendszerekből áll. Itt található ezeknek az összetevőknek a gyors lebontása, valamint néhány releváns kifejezés:
- Master daemon: egy fő csomóponton fut, és kezeli a slave démonokat
- Slave démon: fut egy master csomóponton, és fut a feladatok tartoznak frameworks
- Framework: más néven Mesos alkalmazás, áll egy ütemező, amely regisztrálja a mester fogadni erőforrás ajánlatok, és egy vagy több végrehajtók, amely elindítja feladatok rabszolgák. A Mesos keretrendszerek példái közé tartozik a Marathon, a Chronos és a Hadoop
- Ajánlat: egy slave csomópont elérhető CPU és memória erőforrásainak listája. Minden slave csomópont ajánlatot küld a masternek, a master pedig regisztrált keretrendszereknek kínál
- feladat: egy keretrendszer által ütemezett munkaegység, amelyet egy slave csomóponton hajtanak végre. A feladat bármi lehet egy bash parancstól vagy szkripttől kezdve egy SQL lekérdezésig, egy Hadoop feladatig
- Apache ZooKeeper: szoftver, amely a fő csomópontok koordinálására szolgál
megjegyzés: a “ZK” a Zookeepert képviseli ebben a diagramban.
Ez az architektúra lehetővé teszi a Mesos számára, hogy a klaszter erőforrásait magas szintű részletességgel ossza meg az alkalmazások között. Az adott keretrendszer számára kínált erőforrások mennyisége a mesteren beállított házirenden alapul, és a keretrendszer ütemezője dönti el, hogy melyik ajánlatot használja. Miután a framework scheduler eldönti, hogy mely ajánlatokat akarja használni, megmondja a Mesosnak, hogy mely feladatokat kell végrehajtani, és a Mesos elindítja a feladatokat a megfelelő rabszolgákon. A tevékenységek befejezése és a felhasznált erőforrások felszabadítása után az erőforrás-ajánlat ciklus megismétlődik, így több tevékenység ütemezhető.
magas rendelkezésre állás
a Mesos masters magas rendelkezésre állása egy klaszterben az Apache ZooKeeper használatával engedélyezett, hogy megismételje a masters-t a határozatképesség kialakításához. ZooKeeper is koordinálja master leader választási és kezeli leader detection között Mesos alkatrészek, beleértve a rabszolgák és keretek.
legalább három fő csomópont szükséges a magasan elérhető konfigurációhoz-a három fő beállítás lehetővé teszi a határozatképesség fenntartását abban az esetben, ha egyetlen mester meghibásodik–de öt fő csomópont ajánlott egy rugalmas termelési környezethez, lehetővé téve a határozatképesség fenntartását két fő csomópont offline állapotban.
További információ az Apache Mesos-ról, látogasson el a hivatalos dokumentációs oldalra.
A Marathon alapvető áttekintése
a Marathon a Mesos keretrendszere, amelyet hosszú távú alkalmazások indítására terveztek, és a Mezoszférában a hagyományosinit
rendszer helyettesítésére szolgál. Számos olyan funkcióval rendelkezik, amelyek egyszerűsítik az alkalmazások futtatását fürtözött környezetben, mint például a magas rendelkezésre állás, a csomópont-korlátozások, az alkalmazások állapotának ellenőrzése, a szkriptálhatóság és a szolgáltatásfelderítés API-ja, valamint egy könnyen használható webes felhasználói felület. Hozzáadja méretezési és öngyógyító képességeit a mezoszféra funkciókészletéhez.
a Marathon használható más Mesos keretrendszerek elindítására, és bármilyen folyamatot elindíthat, amely a normál shell-ben indítható. Mivel hosszú ideje futó alkalmazásokhoz tervezték, biztosítja, hogy az általa elindított alkalmazások továbbra is futhassanak, még akkor is, ha a futó slave csomópont(ok) meghiúsulnak.
További információ a maratonról, látogasson el a GitHub oldalára.
A Chronos alapvető áttekintése
a Chronos a Mesos keretrendszere, amelyet eredetileg az Airbnb fejlesztett ki acron
helyettesítésére. Mint ilyen, ez egy teljes funkcionalitású, elosztott és hibatűrő ütemező a Mesos számára, amely megkönnyíti a feladatok gyűjteményét képező feladatok összehangolását. Tartalmaz egy API-t, amely lehetővé teszi a feladatok ütemezését, valamint egy webes felhasználói felületet a könnyű használat érdekében.
a Mesosphere-ben a Chronos gratulál a Marathon-nak, mivel más módot kínál az alkalmazások futtatására, ütemezés vagy egyéb feltételek szerint, például egy másik munka befejezése szerint. Emellett képes ütemezni a feladatokat több Mesos slave csomóponton, és statisztikákat szolgáltat a munka kudarcairól és sikereiről.
Ha többet szeretne megtudni a Chronosról, látogasson el a GitHub oldalára.
A HAProxy alapvető áttekintése
a HAProxy egy népszerű nyílt forráskódú terheléselosztó és fordított proxy megoldás. Ezt fel lehet használni a mezoszféra útvonal hálózati forgalom ismert házigazdák, jellemzően Mesos masters, a tényleges szolgáltatások futó Mesos slave csomópontok. A Mesos szolgáltatásfelfedezési képességei felhasználhatók a HAProxy dinamikus konfigurálására, hogy a bejövő forgalmat a megfelelő backend slave csomópontokra irányítsák.
Ha többet szeretne megtudni a HAProxy általános képességeiről, olvassa el a HAProxy bevezetését.
következtetés
a Mesosphere olyan szerverinfrastruktúra-paradigmákat alkalmaz, amelyek ismeretlennek tűnhetnek, mivel nagy hangsúlyt fektettek a fürtözésre és a skálázhatóságra, de remélhetőleg most már jól megérted, hogyan működik. Minden egyes összetevő, amelyen alapul, megoldásokat kínál olyan problémákra, amelyekkel gyakran szembesülnek a szerver infrastruktúra klaszterezésével és méretezésével kapcsolatban, és a Mesosphere célja, hogy teljes megoldást nyújtson ezekre az igényekre.
most, hogy ismeri a mezoszféra alapjait, nézze meg a sorozat következő oktatóanyagát. Megtanítja, hogyan állítson be egy gyártásra kész mezoszféra klasztert az Ubuntu 14.04 – en!