我在Azure云上有一个HDInsight群集设置。还已在单独的VM上安装了Apache NiFi。请注意,我已从VM启用对群集的SCP和SSH访问。我正在尝试按照我的要求设置一些处理器,列表中的第一个是“ ExecuteProcess”处理器。我试图通过该方法实现的是与我的HDInsight群集建立SSH连接,一旦成功,则将该结果(连接建立=“ Y”)通过FlowFile传递给我的第二个处理器,该处理器是“ GetFile”处理器,基本上从该HDInsight群集中的特定路径读取JSON文件。
我添加了“ ExecuteProcess”处理器,并在“配置”选项->“属性”部分中进行了以下设置:
命令:ssh sshdepuser@demodepdata-ssh.azurehdinsight.net 命令参数:sshdepuser@demodepdata-ssh.azurehdinsight.net 批次持续时间:未设置任何值 重定向错误系统:True 工作目录:无值集 参数分隔符:未设置任何值
命令:ssh sshdepuser@demodepdata-ssh.azurehdinsight.net 命令参数:sshdepuser@demodepdata-ssh.azurehdinsight.net 批次持续时间:未设置任何值 重定向错误系统:True 工作目录:无值集 参数分隔符:未设置任何值
请注意sshdepuser@demodepdata-ssh.azurehdinsight.net是我要与我的VM建立连接的HDInsight群集的服务器主机名(服务器DNS名称:dep-hadoop.eastus.cloudapp.azure.com)
我正在尝试根据我的要求设置一些处理器,列表中的第一个是“ ExecuteProcess”处理器。我试图通过该方法实现的是与我的HDInsight群集建立SSH连接,一旦成功,则将该结果(连接建立=“ Y”)通过FlowFile传递给我的第二个处理器,该处理器是“ GetFile”处理器,基本上从该HDInsight群集中的特定路径读取JSON文件。
答案 0 :(得分:0)
恐怕这种方法无法正常工作,您将无法将ssh连接作为流文件传递,但您可以尝试解决方法:在执行处理器中,而不是仅创建ssh连接,也将文件复制到本地文件夹,然后可以使用GetFile处理器。