In questo articolo viene descritto come eseguire uno script di rivoluzione R Enterprise in un cluster Hadoop da un client Windows all'esterno del cluster utilizzando ssh in un ambiente Cygwin.
-
Installare e configurare Enterprise R rivoluzione 7.3 del cluster Hadoop per la Guida alla configurazione di rivoluzione R aziendale 7.3 Hadoop. Verificare il funzionamento di RRE del cluster quando lo script viene eseguito all'interno del cluster utilizzando lo script di convalida dalla sezione 4.
-
Installare rivoluzione R Enterprise per Windows 7.3 sul sistema di Windows client.
-
Installare l'ambiente Cygwin sul client del sistema Windows, assicurandosi di includere il ssh componenti client. Verificare ssh funzionalità di accesso dell'utente R/Hadoop dal sistema client Windows.
-
Configurare passwordless ssh per la R/Hadoop utente creando un ssh keypair sul client e sul namenode di Hadoop per l'utente. Informazioni su questa operazione sono disponibili qui:http://inside.mines.edu/fs_home/gmurray/HowTo/sshNotes.html o ottenere assistenza dal gruppo IT necessarie per conformarsi ai requisiti di protezione. Salvare la chiave privata .pem sul client Windows. Ad esempio, "C:\data\hdp.pem".
-
Verificare manualmente l'accesso dell'utente R passwordless (ex: scott) da un Cygwin bash la namenode utilizzando la chiave di sessione:
$ ssh -i c:/data/hdp.pem scott@<namenode hostname or ip>
-
Se l'account di accesso di test manuale viene eseguita correttamente, modificare il contesto di elaborazione Hadoop utilizzato quando si esegue lo script all'interno del cluster per includere ssh le informazioni di connessione richieste dal client. Per esempio:
Hadoop base calcolare contesto utilizzato durante l'esecuzione dello script da un nodo del clustermyHadoopCluster <- RxHadoopMR(consoleOutput = TRUE)
cluster <- rxSetComputeContext(myHadoopCluster)mySshUsername <- "scott"mySshHostname <- "<namenode hostname or ip>"
myShareDir <- paste("/var/RevoShare", mySshUsername, sep ="/") myHdfsShareDir <- paste("/user/RevoShare",mySshUsername, sep="/") myHadoopCluster <- RxHadoopMR( hdfsShareDir = myHdfsShareDir, shareDir = myShareDir, sshUsername = mySshUsername, sshHostname = mySshHostname, sshSwitches = "-i c:\\data\\hdp.pem", consoleOutput = TRUE) cluster <- rxSetComputeContext(myHadoopCluster)Il valore di sshSwitches può essere utilizzato per inviare altri argomenti in base alle esigenze per il ssh client, ad esempio non predefinita porta ssh.
-
Verificare lo script di R da Enterprise R rivoluzione sul client Windows. Lo script utilizza la connessione di Cygwin ssh client in background di inviare lo script per l'esecuzione di namenode.
Vedere RevoScaleR Hadoop Guida introduttiva per ulteriori informazioni.