2016-09-20 1 views
0

Ich versuche, einen postgres-Treiber auf jeden Knoten meines Clusters herunterzuladen. Ich schrieb die folgende Bootstrap-Aktion, aber es scheint nicht funktioniert zu haben:Wie schreibe ich eine Bootstrap-Aktion zum Herunterladen einer Datei auf jeden Knoten in EMR?

#!/bin/bash 
aws s3 cp s3://path/to/driver/jars/postgresql-9.4.1210.jre7.jar . 

Ich weiß, das muss eine einfache Sache zu tun, aber ich kann nicht ein offensichtliches Beispiel zu finden scheinen.

+0

Es gibt einen Fehler im obigen Befehl die Syntax ist aws s3 cp wo ist Ihre Quelle oder Ziel? – error2007s

+0

Die Quelle ist 's3: // path/to/driver/jars/postgresql-9.4.1210.jre7.jar'. Das Ziel ist '.'. –

+0

füge einen/statt eines Punktes hinzu – error2007s

Antwort

0

Die Bootstrap-Aktion, die Sie haben, sieht gut aus und funktioniert wahrscheinlich. Es ist nur wahrscheinlich, dass Sie wahrscheinlich davon ausgehen, dass die Datei in das gleiche Verzeichnis heruntergeladen wird, in dem Sie landen, wenn Sie zum Cluster gehen, also/home/hadoop, aber das ist nicht der Fall. Das Arbeitsverzeichnis von Bootstrap-Aktionen befindet sich irgendwo unter/var/lib/bootstrap-actions, wenn ich mich richtig erinnere.

Es wäre einfacher, die Datei zu finden, die Sie heruntergeladen haben, wenn Sie "." zu etwas wie "/ home/hadoop". Sie könnten auch ein anderes neues Verzeichnis erstellen, in das die Datei als Teil dieses Skripts heruntergeladen werden soll (unter Verwendung von "sudo mkdir" und "sudo chown" von notwendig).

+0

Ja, das war das Problem. Vielen Dank! –

Verwandte Themen