Este artigo descreve como executar um script de revolução R empresa num cluster de Hadoop de um cliente Windows fora do cluster utilizando ssh num ambiente Cygwin.
-
Instalar e configurar revolução R empresa 7.3 no cluster Hadoop pelo Guia de configuração de Hadoop empresa 7.3 revolução R. Verifique se a operação de RRE do cluster quando o script é executado a partir do cluster utilizando o script de validação da secção 4.
-
Instale revolução R empresarial para Windows 7.3 no cliente de sistema do Windows.
-
Instalar o ambiente de Cygwin no cliente de sistema do Windows que está a ser se esqueça de incluir o ssh componentes de cliente. Verifique se ssh capacidade de início de sessão do utilizador do R/Hadoop partir do sistema de cliente do Windows.
-
Configurar passwordless ssh para o utilizador do R/Hadoop, criando um ssh par de chaves no cliente e o namenode de Hadoop para o utilizador. Aqui podem encontrar informações sobre este procedimento:
http://inside.mines.edu/fs_home/gmurray/HowTo/sshNotes.html
ou obtenha assistência do seu grupo de TI, conforme necessário para satisfazer requisitos de segurança. Guarde a chave privada .pem no cliente do Windows. Por exemplo, "C:\data\hdp.pem". -
Verificar manualmente o início de sessão passwordless para o utilizador R (ex: scott) de um Cygwin festa de sessão para o namenode utilizando a chave:
$ ssh -i c:/data/hdp.pem scott@<namenode hostname or ip>
-
Se o início de sessão manual de teste for bem sucedido, modifique o contexto de computador Hadoop utilizado quando executar o script a partir do cluster para incluir ssh informações de ligação necessárias pelo cliente. Por exemplo:
Hadoop base calcular contexto utilizado quando executar o script a partir de um nó de clustermyHadoopCluster <- RxHadoopMR(consoleOutput = TRUE)
cluster <- rxSetComputeContext(myHadoopCluster)
Expandido hadoop computador contexto utilizado quando executar o script de um cliente Windows através de 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)O valor de sshSwitches pode ser utilizado para apresentar outros argumentos, conforme necessário para o ssh cliente, tal como uma predefinição não ssh porta.
-
Teste o script de R de revolução R empresarial no cliente do Windows. O script deve ligar utilizando o Cygwin ssh cliente em segundo plano para submeter o script para execução sobre o namenode.
Consulte RevoScaleR Hadoop manual de introdução para obter mais informações.