Este artigo descreve como executar um script de revolução R empresa num cluster de Hadoop, de um cliente Windows fora do cluster utilizando um betumes ssh cliente.
-
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.
-
Instale o betumes ssh cliente no cliente de sistema do Windows. 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:https://cs.uwaterloo.ca/cscf/howto/ssh/public_key/#putty ou obtenha assistência do seu grupo de TI, conforme necessário para satisfazer requisitos de segurança. Guarde a chave privada .ppk no cliente do Windows. Por exemplo, "C:\data\hdp.ppk".
-
No cliente para criar e guardar uma sessão para nomeado para o início de sessão do cliente para o namenode de Hadoop. Por exemplo, "RREHDP".
-
Verificar manualmente o início de sessão passwordless e o utilizador de R (ex: scott) utilizando a ferramenta de plink.exe o betumes, a sessão guardada e a chave:
"C:\\Program Files (x86)\\PuTTY\\plink.exe" -i C:\data\hdp.ppk -l scott -load RREHDP
-
Se o início de sessão do plink.exe teste tiver êxito, 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 a partir de um cliente do Windows através de betumes. Tenha em atenção quando utilizar betumes, deve mySshHostname não referem-se o nome de anfitrião namenode. Que informações são na sessão para guardada. No script, o mySshHostname deve ser definido para o nome da sessão guardado.
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)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 betumes 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.