Cluster Režimu Přehled

Tento dokument poskytuje krátký přehled o tom, jak Jiskra běží na klastry, aby to bylo snazší nerozumíte součástí. Přečtěte si pokyny pro předkládání aplikacídozvědět se o spouštění aplikací v klastru.

Jiskra aplikace běží jako nezávislé sady procesů v clusteru, koordinuje SparkContextv objektu hlavní program (tzv. program ovladače).

Konkrétně pro běh na clusteru, SparkContext lze připojit několik typů manažerů klastrů(buď Jiskra má vlastní samostatný správce clusteru, Mesos nebo PŘÍZE), které přidělují prostředky acrossapplications. Po připojení získává Spark exekutory na uzlech v klastru, což jsouprocesy, které spouštějí výpočty a ukládají data pro vaši aplikaci.Dále odešle kód vaší aplikace (definovaný soubory JAR nebo Python předanými Sparkcontextu) vykonavatelům. Nakonec SparkContext odešle úkoly exekutorům ke spuštění.

Existuje několik užitečných věcí, na vědomí, o tomto stylu:

  1. Každá aplikace má svůj vlastní exekutor procesy, které se zůstat vzhůru po dobu trvání wholeapplication a spustit úlohy ve více vláknech. To má výhodu izolace aplikací od sebe navzájem, a to jak na straně plánování (každý ovladač naplánuje své vlastní úkoly), tak na straně provádění (úkoly z různých aplikací spuštěných v různých JVM). Nicméně, to také znamená, thatdata nemohou být sdíleny napříč různými Jiskra aplikace (instance SparkContext) withoutwriting to na externí úložiště systému.
  2. Spark je Agnostický pro správce clusteru. Tak dlouho, jak to může získat executorprocesses, a tyto vzájemně komunikovat, to je relativně snadné spustit i na acluster manager, který podporuje i další aplikace (např. Mesos/PŘÍZE).
  3. program ovladače musí poslouchat a přijímat příchozí spojení od svých vykonavatelů po celou dobu jejich životnosti (např. viz spark.ovladač.port v konfiguraci sítě). Jako takový musí být program ovladače v sítiadresovatelný z pracovních uzlů.
  4. protože ovladač naplánuje úkoly na clusteru, měl by být spuštěn v blízkosti pracovních uzlů, nejlépe ve stejné místní síti. Pokud byste chtěli posílat žádosti o rámci clusteru vzdáleně, to je lepší otevřít RPC řidiče a mít ji předložit operationsfrom okolí, než spustit ovladač daleko od pracovníka uzlin.

typy správců klastrů

systém v současné době podporuje několik správců klastrů:

  • Standalone-jednoduchý správce clusteru součástí Spark, který dělá iteasy nastavit cluster.
  • Apache Mesos-obecný Správce klastrů, který může také spouštět aplikace Hadoop MapReduceand service.
  • Hadoop příze-Správce zdrojů v Hadoop 2.
  • Kubernetes – open-source systém pro automatizaci nasazení, škálování a řízení kontejnerové aplikace.

pro přidání podpory pronomad jako správce clusteru existuje projekt třetí strany (nepodporovaný projektem Spark).

odesílání žádostí

žádosti lze podávat do clusteru libovolného typu pomocí skriptu spark-submit.Příručka pro podání žádosti popisuje, jak to provést.

monitorování

každý program ovladače má webové uživatelské rozhraní, obvykle na portu 4040, které zobrazuje informace o runningtasks, exekutorů a využití úložiště. Jednoduše přejděte na ve webovém prohlížečipřístup k tomuto uživatelskému rozhraní. Příručka pro monitorování také popisuje další možnosti monitorování.

plánování úloh

Spark dává kontrolu nad alokací prostředků jak napříč aplikacemi (na úrovni clustermanager), tak v rámci aplikací (pokud se na stejném Sparkcontextu děje více výpočtů).Přehled plánování úloh to popisuje podrobněji.

Slovníček pojmů

následující tabulka shrnuje podmínky, uvidíte používán se odkazovat na clusteru pojmy:

Termín Význam
Aplikace Uživatelský program postavený na Jiskru. Skládá se z programu ovladače a vykonavatelů v klastru.
aplikační jar jar obsahující aplikaci Spark uživatele. V některých případech budou uživatelé chtít vytvořit „Uber jar“ obsahující jejich aplikaci spolu s jejími závislostmi. Jar uživatele by nikdy neměl obsahovat knihovny Hadoop nebo Spark, ty však budou přidány za běhu.
Řidič programu proces spuštěním main() funkcí aplikace a vytvoření SparkContext
správce Clusteru externí služby pro získání zdrojů na clusteru (např. samostatný správce, Mesos, PŘÍZE)
Nasazení režimu Rozlišuje, kde řidič proces běží. V režimu“ cluster “ spustí framework ovladač uvnitř clusteru. V režimu“ klient “ zadavatel spustí ovladač mimo cluster.
Pracovník uzlu libovolného uzlu, který může spustit kód aplikace v clusteru
Exekutor řízení zahájeno na žádost pracovníka uzel, který běží úkoly a uchovává data v paměti nebo na disku přes ně. Každá aplikace má své vlastní exekutory.
Úkol jednotka práce, která bude odeslána na jeden exekutor
Práci paralelní výpočet se skládá z několika úkolů, které dostane plodil v reakci na Jiskru akce (např. save, collect); tento termín uvidíte v protokolech řidiče.
Fáze Každá práce je rozdělena do menších sad úkolů, tzv. fází, které jsou na sobě navzájem závislé (podobně jako na mapě a snížit etap v MapReduce); uvidíte tento termín používá v řidiče polena.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.

Previous post Ano, Stahování Nintendo Rom Je Nelegální (I když Si Vlastní Hru)
Next post nicknotas