2014-11-09 12 views
6

Per eseguire gli esercizi di formazione di Amplab, ho creato una coppia di chiavi su us-east-1, ho installato gli script di addestramento (git clone git://github.com/amplab/training-scripts.git -b ampcamp4) e creato l'env. variabili AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY seguendo le istruzioni in http://ampcamp.berkeley.edu/big-data-mini-course/launching-a-bdas-cluster-on-ec2.htmlchiamata spark-ec2 dall'interno di un'istanza EC2: connessione ssh all'host rifiutata

Ora esecuzione

./spark-ec2 -i ~/.ssh/myspark.pem -r us-east-1 -k myspark --copy launch try1 

genera i seguenti messaggi:

j[email protected]:~/projects/spark/training-scripts$ ./spark-ec2 -i ~/.ssh/myspark.pem -r us-east-1 -k myspark --copy launch try1 
Setting up security groups... 
Searching for existing cluster try1... 
Latest Spark AMI: ami-19474270 
Launching instances... 
Launched 5 slaves in us-east-1b, regid = r-0c5e5ee3 
Launched master in us-east-1b, regid = r-316060de 
Waiting for instances to start up... 
Waiting 120 more seconds... 
Copying SSH key /home/johndoe/.ssh/myspark.pem to master... 
ssh: connect to host ec2-54-90-57-174.compute-1.amazonaws.com port 22: Connection refused 
Error connecting to host Command 'ssh -t -o StrictHostKeyChecking=no -i /home/johndoe/.ssh/myspark.pem [email protected] 'mkdir -p ~/.ssh'' returned non-zero exit status 255, sleeping 30 
ssh: connect to host ec2-54-90-57-174.compute-1.amazonaws.com port 22: Connection refused 
Error connecting to host Command 'ssh -t -o StrictHostKeyChecking=no -i /home/johndoe/.ssh/myspark.pem [email protected] 'mkdir -p ~/.ssh'' returned non-zero exit status 255, sleeping 30 
... 
... 
subprocess.CalledProcessError: Command 'ssh -t -o StrictHostKeyChecking=no -i /home/johndoe/.ssh/myspark.pem [email protected] '/root/spark/bin/stop-all.sh'' returned non-zero exit status 127 

dove [email protected] è l'istanza Master User &. Ho provato -u ec2-user e aumentando fino afino a 600, ma ottengo lo stesso errore.

Sono in grado di vedere le istanze master e slave in us-east-1 quando accedo alla console AWS e posso effettivamente eseguire ssh nell'istanza Master dalla shell "locale" ip-some-instance.

La mia comprensione è che lo script spark-ec2 si occupa della definizione dei gruppi di sicurezza Master/Slave (quali porte vengono ascoltate e così via) e non dovrei dover modificare queste impostazioni. Detto questo, padrone e schiavi ascoltano tutti i post 22 (Port:22, Protocol:tcp, Source:0.0.0.0/0 nei gruppi ampcamp3-slaves/masters).

Sono in perdita qui e apprezzerei qualsiasi suggerimento prima di spendere tutti i miei fondi R & D in istanze EC2 .... Grazie.

risposta

7

Questo è probabilmente causato da SSH che richiede molto tempo per avviarsi sulle istanze, causando la scadenza del timeout di 120 secondi prima che le macchine possano essere registrate. Si dovrebbe essere in grado di eseguire

./spark-ec2 -i ~/.ssh/myspark.pem -r us-east-1 -k myspark --copy launch --resume try1 

(con la bandiera --resume) per continuare da dove le cose lasciate fuori senza rilanciare nuove istanze. Questo problema verrà risolto in Spark 1.2.0, dove abbiamo un nuovo meccanismo che controlla in modo intelligente lo stato SSH piuttosto che basarsi su un timeout fisso. Stiamo anche affrontando le cause alla base del lungo ritardo di avvio di SSH creando nuove AMI.

+0

Grazie. Non riesco ancora ad accedere al cluster, forse devo aspettare più a lungo (sono già passate le 1.5 ore, quindi presumo ci sia qualcos'altro al lavoro). – user2105469

+0

'Eccezione nell'apertura dell'URL http://ec2-54-90-57-174.compute-1.amazonaws.com:8080/json Errore nel collegamento al comando host 'ssh -t -o StrictHostKeyChecking = no -i/home/johndoe/.ssh/myspark.pem [email protected] '/root/spark/bin/stop-all.sh' 'ha restituito lo stato di uscita diverso da zero 127, dormi 30' – user2105469

+0

Quale versione di Spark stai usando? –

Problemi correlati