本文介绍如何从 Windows 客户端使用 ssh 在 Cygwin 环境在群集外运行 Hadoop 群集中的革命 R 企业脚本。
-
安装和配置 Hadoop 群集每场革命 R 企业 7.3 Hadoop 配置手册 》中的革命 R 企业 7.3。在第 4 节中使用验证脚本的群集中运行该脚本时,请验证 RRE 操作中群集。
-
在客户端的 Windows 系统上安装革命 R Windows 7.3 的企业。
-
一定要包括 Windows 系统客户端上安装 Cygwin 环境 ssh 客户端组件。验证 ssh 登录功能的 R/Hadoop 用户的 Windows 客户机系统。
-
配置 passwordless ssh 的 R/Hadoop 用户通过创建 ssh 密钥对在客户端和用户 Hadoop namenode 上。可以在此处找到有关如何执行此操作︰http://inside.mines.edu/fs_home/gmurray/HowTo/sshNotes.html 或根据需要遵守安全要求 IT 部门获得援助。将专用的.pem 密钥保存在 Windows 客户端上。例如,"C:\data\hdp.pem"。
-
手动验证的 passwordless R 用户登录 (ex: scott) 从 Cygwin 狂欢到使用键 namenode 会话︰
$ ssh -i c:/data/hdp.pem scott@<namenode hostname or ip>
-
如果手动测试登录成功,修改在运行时使用从群集中的脚本以包括 ssh 客户端所需的连接信息的 Hadoop 计算上下文。例如︰
基本的 hadoop 计算从一个群集节点运行该脚本时使用的上下文myHadoopCluster <- 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)SshSwitches 值可用于提交其他参数,根据需要向 ssh 客户端,如非默认 ssh 端口。
-
测试 Windows 客户端上的从革命 R 企业 R 脚本。该脚本应该连接使用 Cygwin ssh 客户端在后台提交 namenode 上执行的脚本。
RevoScaleR Hadoop 入门指南的详细信息,请参阅。