类别

版本

您正在查看9.9 -版本的RapidMiner Radoop文档点击这里查看最新版本

在RapidMiner服务器上安装RapidMiner Radoop

先决条件

在RapidMiner服务器上安装RapidMiner Radoop扩展前,需要满足以下要求:

  • RapidMiner Radoop扩展在RapidMiner Studio上安装和测试。如有需要,请参阅配置RapidMiner Radoop连接以确保您有一个有效的连接到RapidMiner Studio中的Hadoop集群。

在RapidMiner服务器和连接的作业代理上安装RapidMiner Radoop

在RapidMiner服务器上安装RapidMiner Radoop扩展需要将文件从RapidMiner Studio配置复制到RapidMiner服务器安装中。的集中资源管理功能将自动同步Radoop扩展,Radoop许可证和连接定义到所有连接的作业代理。

您需要准备以下构件来完成安装:

  1. RapidMiner Radoop扩展(一个JAR文件)。您可以下载RapidMiner Radoop扩展来自市场或者你也可以从你的当地的.RapidMiner /配置目录(由RapidMiner Studio创建)。

  2. Radoop许可证(许可证字符串和/或.lic文件)。RapidMiner Radoop许可证需要在RapidMiner服务器上手动安装Radoop基本许可证不足以使用Radoop)。你可以在https://my.www.turtlecreekpls.com您也可以在您的桌面计算机中找到许可证文件当地的.RapidMiner /配置目录(由RapidMiner Studio创建)。

  3. Radoop连接定义(XML文件)。定位radoop_connections.xml存档当地的.RapidMiner /配置目录(由RapidMiner Studio创建)。

在RapidMiner服务器上安装RapidMiner Radoop

  1. 停止服务器。

  2. 将Radoop扩展JAR文件复制到乐鱼体育安装资源/ extensions /子文件夹RapidMiner服务器主目录

  3. 复制radoop_connections.xml归档到.RapidMiner /子文件夹RapidMiner服务器主目录

  4. 启动服务器。

  5. 在Server Web UI中导航到“系统管理>管理license”并检查您的Radoop许可证活跃的许可证.如果它是Radoop基本许可证,点击安装许可证行动菜单(默认位于右侧),并将您的Radoop许可证粘贴到文本字段中。

在RapidMiner服务器作业代理上安装RapidMiner Radoop

集中资源管理功能的RapidMiner服务器将自动同步Radoop扩展,已安装的许可证,并在您的radoop_connections.xml发给所有已连接的职位代理。请确保将中央资源管理配置为同步您上传这些工件的位置(默认位置已经包含在开箱即用的位置)。

如果您需要有关如何在所有Job Agents上设置Radoop的说明手动,你会在里面找到的本文档的旧版本

更新RapidMiner服务器上的Radoop连接

Radoop连接存储在radoop_connections.xml在服务器端(在.RapidMiner /的子文件夹RapidMiner服务器主目录),但是服务器上没有GUI来编辑连接。推荐的过程是使用RapidMiner Studio在客户端编辑连接,然后将它们作为XML文件上传到服务器。

按照以下步骤在服务器部署上应用新的连接定义:

  1. 复制(覆盖)radoop_connections.xml.RapidMiner /的子文件夹RapidMiner服务器主目录

  2. 为了避免服务器重新启动—但仍然广播更改—您需要通过调用服务器在所有连接的Job agent上手动触发更新REST API.要实现这一点,您需要调用/执行/ /更新同步服务器的REST端点,使用“类型”:“EXECUTION_CONTEXT”参数设置和身份验证就绪。成功的触发由a表示2 xxHTTP响应中的状态码。下面是一个使用命令行的例子:

    curl "https:///executions/sync/update" \ -X POST \ -d '{"type":"EXECUTION_CONTEXT"}' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -w "\nResponse HTTP status code: %{http_code}\n"
  3. 或者,重新启动RapidMiner服务器以将更改应用于服务器和所有连接的作业代理。

的更改radoop_connections.xml立即应用于所有启动的流程执行更新。已经运行的进程不受影响。

在RapidMiner服务器上管理多个Radoop连接

radoop_connections.xml文件可以列出任意数量的连接,并且应该列出由任何用户提交到此服务器的任何进程可能使用的所有连接。这些连接可能指向相同的Hadoop集群,也可能指向不同的集群。Rapidminer服务器管理员可以为同一用户或不同用户定义连接(参见管理多个Hadoop用户下文)。

为了控制RapidMiner服务器上这些连接的访问权限——例如,当向RapidMiner服务器提交进程时,限制哪个用户可以使用哪个连接——每个连接都应该设置所谓的访问白名单字段。看到对Radoop连接的访问控制获取详细信息。

在RapidMiner Server和提交进程的RapidMiner Studio实例中,连接名必须相同,以确保正确的跨平台进程执行。

一旦创建了radoop_connections.xml包含所有所需连接的文件,按照更新Radoop连接操作步骤在服务器上应用更改。

在RapidMiner服务器上管理多个Hadoop用户

在多用户Hadoop环境中,RapidMiner Server管理员需要手动编辑radoop_connections.xml确保RapidMiner平台的用户在Hadoop集群上只能使用他们自己的身份(即使用他们的Hadoop访问权限执行Spark作业和Hive查询)。在对radoop_connection.xml然后按照更新Radoop连接操作步骤在服务器上应用更改。

有两种不同的配置策略:

  1. 专用Radoop连接。每个Hadoop用户一个。
  2. 与特权Hadoop用户的凭据的一个连接,该用户被允许冒充其他用户。(见ApacheHadoop用户模拟

选项#1:创建专用的Radoop连接

这种方法需要为每个Hadoop用户定义一个专用的连接。管理员必须处理Radoop连接名称冲突,并为每个Radoop连接设置单独的Hadoop凭据。RapidMiner Studio用户只需要在属于其Hadoop身份的客户端机器的本地连接文件中拥有自己的连接。在RapidMiner服务器端,将在连接文件中定义多个连接。一个命名连接的例子:clustername_username,在那里clustername是Hadoop集群的标识符,而用户名是用户的标识符(例如,它可能与Hadoop用户名字段的值相同)。编辑XML…选项可用于将每个用户的连接条目复制到合并的radoop_connections.xml在服务器上。

虽然这种策略是最简单的,因为它不需要Hadoop集群端设置,但它可能有缺点。最终,管理员必须保持多个Radoop连接同步,这些连接可能只在其Hadoop凭据上有所不同。

选项#2:在Radoop连接中使用Hadoop用户模拟

Hadoop用户模拟可用于Radoop连接。这种方法使管理员能够使用特权Hadoop用户的凭证维护单个Radoop连接,特权Hadoop用户能够冒充其他Hadoop用户。

这种方法减少了维护和更简单的访问权限管理,而单个用户的凭据(他们的加密密码或keytab)不存储在RapidMiner服务器上。

前提条件Hadoop集群侧配置用于模拟

在Hadoop端,应该有一个专用的用户(用户名可以是:privilegeduser),他有权冒充他人。这个配置可以基于Hadoop文档来完成。在简单的情况下,应该将以下代码片段添加到core-site.xml在Hadoop配置中:

<属性> <名称> hadoop.proxyuser.privilegeduser。主机 *   hadoop.proxyuser.privilegeduser。组 * 

如果启用了HDFS加密(和KMS服务),也需要在kms-site.xml.有关详细信息,请访问KMS Proxyuser配置部分KMS文档页面或者按照Hadoop供应商的说明进行操作。

创建并测试RapidMiner服务器的模拟连接

作为推荐的方法,应该使用RapidMiner Studio构建连接。您可以在RapidMiner服务器标签连接设置对话框。

如上面的截图所示,在服务器上启用模拟复选框,并将超级用户的凭据输入到服务器主要服务器Keytab文件字段与客户端用户的情况类似(见第4节)Hadoop安全配置).

如果Hive配置LDAP认证,则使用蜂巢主要应该是空的和凭据的privilegeduser应该进入蜂巢吗用户名密码字段(这两个字段仅在以下情况下启用)蜂巢主要是空的)。

如果网络设置允许从客户端主机连接到Hadoop集群,则可以从RapidMiner Studio测试连接。如果用于本地测试的模拟用户字段设置(例如:斯科特作为用户名输入),然后使用privilegeduser证件,但是冒充斯科特用户和使用其访问权限。当在RapidMiner服务器上运行时,该字段没有影响:在这种情况下,有效用户将始终是提交RapidMiner进程的用户。

在RapidMiner服务器上保护Radoop连接

RapidMiner Server支持与RapidMiner Studio相同的安全设置连接到Hadoop集群,但您可能需要手动编辑连接XML文件(例如,由于服务器端不同的文件路径设置)。一般来说,应该使用RapidMiner Studio构建连接(将其用作“连接编辑器”),并且应该考虑以下附加步骤。

解密连接密码

RapidMiner Radoop使用本地的cipher.key要加密的文件和关键属性radoop-entries标记来解密XML文件中的密码radoop_connections.xml默认为文件。如果radoop_connections.xml包含来自多个用户的条目,有两种可能的解决方案:

  1. 在同一台计算机上创建每个用户的连接条目(使用相同的cipher.key文件),或者
  2. 可以加上a关键每个属性radoop-connection-entry手动。Radoop将使用每个条目关键属性,而不是每个文件关键

例如,用户John和Scott拥有以下内容radoop_connections.xml文件:

  connection-john…< / radoop-connection-entry > < / radoop-entries >
< radop -entries key="KLS4GvvZta0NhtXfwkXQeSqD11ngXeWP"> < radop -connection-entry> connection-scott…< / radoop-connection-entry > < / radoop-entries >

合并后的radoop_connections.xml如下所示:

 connection-john < radop -connection-entry key="KLS4GvvZta0NhtXfwkXQeSqD11ngXeWP"> connection-scott…< / radoop-connection-entry > < / radoop-entries >

通过Kerberos身份验证连接Hadoop集群

有关使用Kerberos身份验证配置到集群的连接,请参见Hadoop的安全.当通过RapidMiner服务器使用这些连接时,请注意以下事项。

使用Kerberos密码连接

可以使用密码连接到支持kerberos的集群。要确保连接XML中的加密密码可以在服务器上解密,请参考解密连接密码部分。请注意,在服务器端,建议使用keytab,因为票证更新是在使用密码的情况下支持。

连接keytab文件

到支持kerberos的集群的连接应该指定用户keytab文件的路径,而不是密码。这意味着keytab文件必须可以在服务器的本地文件系统上访问。该路径通常与使用RapidMiner Studio的用户的本地文件系统上的路径不同。RapidMiner Server管理员必须确保keytabFile田野radoop_connections.xml文件指向服务器上的适当路径。文件系统上的keytab文件本身应该只有运行RapidMiner Server的用户才能访问。

请注意:一个RapidMiner Server实例只能与一个Kerberos化的Hadoop集群通信,更准确地说,只能与一个Kerberos Realm通信。这种限制来自于Java Kerberos实现的体系结构。然而,多个用户可以使用这个kerberos Hadoop集群通过这个RapidMiner Server实例并发。

使用LDAP认证方式连接Hive

如果使用LDAP对HiveServer2进行身份验证,则应该输入与Kerberos密码类似的密码,请参考解密连接密码部分。在模拟的情况下,所提供的Hive LDAP用户也应该具有Hadoop proxyuser权限。

对Radoop连接的访问控制

RapidMiner服务器上的Hadoop连接的可用性可以限制为一个用户或一组用户。这意味着不在连接可选指定白名单上的RapidMiner Server用户在提交Radoop进程时不能使用它。通过这种方式,服务器管理员可以确保用户不能使用他们不允许使用的连接,并且他们不能通过在提交的进程中操纵其连接标识符来逃避此限制。

要为连接定义组(或用户)白名单,请添加accesswhitelist对应的XML标记radoop-connection-entryradoop_connections.xml.此属性的值是任意正则表达式(.**可用于允许所有用户)。只有组匹配此表达式的RapidMiner Server用户才允许在提交的进程中使用该连接。如果这是可选的accesswhitelist则任何用户都可以在进程中使用它。

< radoop-connection-entry >…约翰< accesswhitelist > ds_group | dba_group | |斯科特< / accesswhitelist > < / radoop-connection-entry >

更改启用Radoop Proxy的连接

在RapidMiner服务器上执行进程时,Radoop Proxy会自动禁用,因为在典型设置中,RapidMiner服务器在安全区域内运行,这就是为什么不需要通过代理路由流量的原因。

如果您在边缘节点上安装了自定义手动Radoop Proxy,并且RapidMiner Server(除了Studio)只能通过该边缘节点到达Hadoop集群(因此它运行在安全区域之外),则需要启用在服务器上强制Radoop代理设置RapidMiner服务器选项卡。此设置在Studio中运行时不起作用。

或者,您可以手动编辑radoop_connectons.xml文件在服务器上。在本例中,添加forceproxyonserver用值标记T

< radop -entries key="XkzjmytZW2ffc7+MnU11BdhzomF8355R"> < radop -connection-entry>…< forceproxyonserver > T < / forceproxyonserver >…< / radoop-connection-entry > < / radoop-entries >

要应用更新后的连接,请执行更新Radoop连接操作步骤

在Studio中为这个连接指定的Radoop Proxy连接的位置需要是与这个RapidMiner Server实例对应的远程存储库。否则,该进程在服务器上运行时将无法找到代理连接,并因此而失败。