2015-06-10 25 views
8

Jestem nowy, aby iskrzyć i próbować zainstalować iskrę na klastrze Amazon w wersji 1.3.1. kiedy robięJak znaleźć główny adres URL iskry na Amazon EMR

SparkConf sparkConfig = new SparkConf().setAppName("SparkSQLTest").setMaster("local[2]"); 

to nie praca dla mnie, ale poznałam, że to jest dla celów testowania mogę ustawić lokalny [2]

Kiedy próbowałem użyć trybu klastra i zmienił je na

SparkConf sparkConfig = new SparkConf().setAppName("SparkSQLTest").setMaster("spark://localhost:7077"); 

z tym otrzymuję poniżej błędu

próbował skojarzyć z nieosiągalny zdalny adres [akka.tcp: // sparkMaster @ localhost: 7077]. Adres jest teraz bramkowany na 5000 ms, wszystkie wiadomości na ten adres będą dostarczane do martwych liter. Powód: Połączenie odmówiono 15/06/10 15:22:21 INFO client.AppClient $ ClientActor: Łączenie z głównym akka.tcp: // sparkMaster @ localhost: 7077/user/Master ..

Czy ktoś mógłby proszę pozwolić jak ustawić adres główny.

+0

Nie polecam używania EMR. Zamiast tego postępuj zgodnie z oficjalną dokumentacją: http://spark.apache.org/docs/latest/ec2-scripts.html –

Odpowiedz

7

Jeśli używana jest akcja ładowania początkowego z https://github.com/awslabs/emr-bootstrap-actions/tree/master/spark, konfiguracja jest skonfigurowana dla Spark na YARN. Po prostu ustaw master na yarn-client lub yarn-cluster. Pamiętaj, aby zdefiniować liczbę executorów z pamięcią i rdzeniami. Więcej szczegółów na temat Spark na przędzę w https://spark.apache.org/docs/latest/running-on-yarn.html

Dodawanie dotyczące ustawień wykonawcy testamentu pamięci i rdzenia wielkości:

Zapoznaj się z domyślnym PRZĘDZY configs Node Manager dla każdego typu w http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/TaskConfiguration_H2.html konkretnie yarn.scheduler.maximum-allocation-mb. Możesz określić liczbę rdzeni z podstawowego adresu URL informacji EC2 (http://aws.amazon.com/ec2/instance-types/). Maksymalny rozmiar pamięci executora musi mieścić się w maksymalnym przydziale, mniejszym narzut Sparka i w przyrostach 256 MB. Dobry opis tego obliczenia to http://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part-2/. Nie zapominaj, że nieco ponad połowa pamięci executora może być użyta dla pamięci podręcznej RDD.

+0

z ciekawości chciała wiedzieć dokumentacja mówi master na iskrze: // IP: PORT, ale kiedy to robię to daje mnie błąd. port użyję wartości domyślnej 7077 i adresu IP jako localhost – Sam

+0

Dokumentacja, do której się odwołujesz, używa Sparka w trybie Standalone. Jeśli twoja instalacja Sparka ustawia autonomiczny klaster, to ip będzie ipem głównego węzła i prawdopodobnie domyślnym portem. W przeciwnym razie musiałby to być dowolny zestaw konfiguracji klastra. Lista klastrów obsługiwanych pod adresem http://spark.apache.org/docs/latest/cluster-overview.html#cluster-manager-types – ChristopherB

+0

Dzięki @ChristopherB ... Jeszcze jedno pytanie, o którym wspomniałeś, aby ustawić executory dla pamięci i rdzenie. Czy mógłbyś zaproponować mi jak znaleźć te wartości z różnymi typami instancji amazon? [link] http://aws.amazon.com/ec2/instance-types/. – Sam