Denne artikkelen beskriver hvordan du kjører en revolusjon R Enterprise-skript i en klynge Hadoop fra en Windows-klient utenfor klyngen ved hjelp av en PuTTY ssh klient.
-
Installer og Konfigurer revolusjon R Enterprise 7.3 i klyngen Hadoop per Revolusjon R Enterprise 7.3 Hadoop Configuration Guide. Kontroller at RRE i klyngen når skriptet kjøres fra klyngen ved hjelp av valideringsskriptet fra 4-delen.
-
Installere revolusjon R Enterprise for Windows 7.3 på klienten Windows system.
-
Installere PuTTY ssh klient på klienten Windows system. Kontroller ssh login muligheten for bruker R/Hadoop fra Windows-klient-system.
-
Konfigurere passwordless ssh for bruker R/Hadoop ved å opprette en ssh nøkkelpar på klienten og Hadoop-namenode for brukeren. Informasjon om hvordan du gjør dette finnes her:
https://cs.uwaterloo.ca/cscf/howto/ssh/public_key/#putty
eller du kan få hjelp fra IT-gruppe som trengs for å overholde sikkerhetskrav til. Lagre private .ppk-nøkkelen i Windows-klienten. For eksempel "C:\data\hdp.ppk". -
I PuTTY-klienten, kan du opprette og lagre en navngitt PuTTY økt til pålogging fra klienten til Hadoop-namenode. For eksempel "RREHDP".
-
Kontroller manuelt passwordless påloggingen og R brukeren (ex: scott) ved hjelp av PuTTY plink.exe verktøyet, den lagrede økten og nøkkelen:
"C:\\Program Files (x86)\\PuTTY\\plink.exe" -i C:\data\hdp.ppk -l scott -load RREHDP
-
Hvis plink.exe test påloggingen er vellykket, kan du endre Hadoop compute kontekst som brukes når du kjører skriptet fra innenfor sektorgruppen til å inkludere ssh tilkoblingsinformasjon som trengs av klienten. For eksempel:
Grunnleggende hadoop beregne kontekst som brukes når du kjører skriptet fra en klyngenodemyHadoopCluster <- RxHadoopMR(consoleOutput = TRUE)
cluster <- rxSetComputeContext(myHadoopCluster)Utvidet hadoop compute kontekst som brukes når du kjører skriptet fra en Windows-klient via PuTTY. Legg merke til når du bruker PuTTY, mySshHostname bør ikke referere til namenode-vertsnavnet. Denne informasjonen er i den lagrede økten i PuTTY. MySshHostname bør settes til navnet på den lagrede økten i skriptet.
mySshUsername <- "scott"mySshHostname <- "RREHDP"
myShareDir <- paste("/var/RevoShare", mySshUsername, sep ="/")
myHdfsShareDir <- paste("/user/RevoShare",mySshUsername, sep="/")
myHadoopCluster <- RxHadoopMR(
hdfsShareDir = myHdfsShareDir,
shareDir = myShareDir,
sshUsername = mySshUsername,
sshHostname = mySshHostname,
sshClientDir = "C:\\Program Files (x86)\\PuTTY",
sshSwitches = "-i c:\\data\\hdp.ppk",
consoleOutput = TRUE)
cluster <- rxSetComputeContext(myHadoopCluster)SshSwitches-verdien kan brukes til å sende andre argumenter som trengs for å det ssh klient, for eksempel en ikke-standard ssh-port.
-
Test skriptet R fra revolusjon R virksomhet på Windows-klienten. Skriptet bør koble til ved hjelp av PuTTY ssh klient i bakgrunnen for å sende skriptet for kjøring på namenode.
Se RevoScaleR Hadoop håndboken Komme i gang for mer informasjon.