Cet article décrit comment faire pour exécuter un script de révolution R entreprise dans un cluster Hadoop à partir d’un client Windows en dehors du cluster à l’aide de ssh dans un environnement Cygwin.
-
Installez et configurez la révolution R entreprise 7.3 du cluster Hadoop par le Guide de Configuration de révolution R Enterprise 7.3 Hadoop. Vérifiez le fonctionnement de RRE dans le cluster lorsque le script est exécuté au sein du cluster en utilisant le script de validation à partir de la section 4.
-
Installez Enterprise révolution R pour Windows 7.3 sur le système Windows du client.
-
Installer l’environnement Cygwin sur le client du système de Windows en veillant à inclure le ssh composants clients. Vérifiez que ssh fonctionnalité de connexion de l’utilisateur R/Hadoop depuis le système client de Windows.
-
Configurer passwordless ssh pour l’utilisateur R/Hadoop en créant un ssh paire de clés sur le client et sur le namenode d’Hadoop pour l’utilisateur. Vous trouverez ici des informations sur cette procédure :
http://inside.mines.edu/fs_home/gmurray/HowTo/sshNotes.html
ou obtenir de l’aide à partir de votre groupe informatique comme nécessaires pour satisfaire aux exigences de sécurité. Enregistrer la clé privée .pem sur le client Windows. Par exemple, « C:\data\hdp.pem ». -
Vérifier manuellement la connexion passwordless pour l’utilisateur R (ex : scott) à partir d’un Cygwin bash session à la namenode à l’aide de la clé :
$ ssh -i c:/data/hdp.pem scott@<namenode hostname or ip>
-
Si la connexion test manuel est réussie, modifier le contexte de calcul Hadoop utilisé lors de l’exécution du script à partir du cluster pour inclure ssh informations de connexion requises par le client. Par exemple :
Hadoop base calculer le contexte utilisé lors de l’exécution du script à partir d’un nœud de clustermyHadoopCluster <- RxHadoopMR(consoleOutput = TRUE)
cluster <- rxSetComputeContext(myHadoopCluster)
Étendue de contexte de calcul hadoop utilisé lors de l’exécution du script à partir d’un client Windows via Cygwin ssh.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)La valeur de sshSwitches peut être utilisée pour soumettre les autres arguments que nécessaire pour le ssh client, tel qu’un élément non défini par défaut port ssh.
-
Tester le script R à partir de l’entreprise R de révolution sur le client Windows. Le script doit se connecter à l’aide de la Cygwin ssh client en arrière-plan pour soumettre le script pour une exécution sur le namenode.
Consultez le RevoScaleR Hadoop Getting Started Guide pour plus d’informations.