如何配置Cloud Data Fusion管道以针对现有Hadoop集群运行

时间:2019-07-03 15:51:19

标签: google-cloud-data-fusion

Cloud Data Fusion为每个运行的管道创建一个新的Dataproc集群。我已经有一个运行24x7的Dataproc集群设置,我想使用该集群来运行管道

2 个答案:

答案 0 :(得分:3)

这可以通过在系统管理->配置->系统计算配置文件->创建新的计算配置文件下,使用远程Hadoop供应器设置新的计算配置文件来实现。

以下是详细步骤。

  1. Dataproc群集上的SSH设置

a。导航到Google Cloud Platform上的Dataproc控制台。通过单击您的Dataproc群集名称,转到“群集详细信息”。

b。在“ VM实例”下,单击“ SSH”按钮以连接到Dataproc VM。 Dataproc VM SSH

c。请按照此处的步骤创建新的SSH密钥,格式化公共密钥文件以强制使用到期时间,并在项目或实例级别添加新创建的SSH公共密钥。

d。如果成功设置了SSH,则应该能够在Compute Engine控制台的“元数据”部分中看到刚添加的SSH密钥,以及Dataproc VM中的authorized_keys文件。 Dataproc SSH keys

  1. 为您的Data Fusion实例创建自定义系统计算配置文件 一种。通过单击“查看实例”导航到您的Data Fusion实例控制台 enter image description here b。单击右上角的“系统管理员”。 enter image description here C。在“配置”选项卡下,展开“系统计算配置文件”。单击“创建新配置文件”,然后在下一页上选择“远程Hadoop Provisioner”。 Provisioner enter image description here d。填写个人资料的一般信息。 e。您可以在Compute Engine下的“ VM实例详细信息”页面上找到SSH主机IP信息。 enter image description here F。复制在步骤1中创建的SSH私钥,并将其粘贴到“ SSH私钥”字段中。 G。单击“创建”创建配置文件。 Profile

  2. 配置您的Data Fusion管道以使用自定义的配置文件

a。单击管道以针对远程hadoop运行

b。单击配置->计算配置,然后选择远程hadoop提供者配置 Pipeline Remote Hadoop Compute Profile

答案 1 :(得分:0)

此过程之后,启动管道时出现“ java.io.IOException:com.jcraft.jsch.JSchException:无效私钥”异常。

我尝试使用/不使用公共密钥的到期时间。 我试图在主实例级别和项目级别设置密钥。 通过“ ssh -i私钥文件user @ external-ip”连接到实例。

错误堆栈:

2020-10-27 14:28:06,718-错误[runtime-scheduler-2:icciardrRemoteExecutionTwillRunnerService @ 528]-无法启动程序运行program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow。 99b4015f-1860-11eb-b3cf-bae7e12abd00 java.io.IOException:com.jcraft.jsch.JSchException:无效的私钥:[B @ 28e946fe 在io.cdap.cdap.common.ssh.DefaultSSHSession。(DefaultSSHSession.java:88)〜[na:na] 在io.cdap.cdap.internal.app.runtime.distributed.remote.RemoteExecutionTwillPreparer.launch(RemoteExecutionTwillPreparer.java:110)〜[na:na] 在io.cdap.cdap.internal.app.runtime.distributed.remote.AbstractRuntimeTwillPreparer.lambda $ start $ 1(AbstractRuntimeTwillPreparer.java:466)〜[na:na] 在io.cdap.cdap.internal.app.runtime.distributed.remote.RemoteExecutionTwillRunnerService $ ControllerFactory.lambda $ create $ 0(RemoteExecutionTwillRunnerService.java:504)〜[na:na] 在java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)〜[na:1.8.0_252] 在java.util.concurrent.FutureTask.run(FutureTask.java:266)〜[na:1.8.0_252] 在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 201(ScheduledThreadPoolExecutor.java:180)〜[na:1.8.0_252] 在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)〜[na:1.8.0_252] 在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)〜[na:1.8.0_252] 在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624)〜[na:1.8.0_252] 在java.lang.Thread.run(Thread.java:748)〜[na:1.8.0_252] 引起原因:com.jcraft.jsch.JSchException:无效的私钥:[B @ 28e946fe 在com.jcraft.jsch.KeyPair.load(KeyPair.java:664)〜[com.jcraft.jsch-0.1.54.jar:na] 在com.jcraft.jsch.IdentityFile.newInstance(IdentityFile.java:46)〜[com.jcraft.jsch-0.1.54.jar:na] 在com.jcraft.jsch.JSch.addIdentity(JSch.java:442)〜[com.jcraft.jsch-0.1.54.jar:na] 在io.cdap.cdap.common.ssh.DefaultSSHSession。(DefaultSSHSession.java:71)〜[na:na] ...省略了10个通用框架 2020-10-27 14:28:06,719-调试[runtime-scheduler-2:icciardrSSHRemoteProcessController @ 101]-强制停止程序运行program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow.99b4015f-1860- 11eb-b3cf-bae7e12abd00 2020-10-27 14:28:06,736-警告[runtime-scheduler-2:icciardrRemoteExecutionTwillRunnerService @ 538]-强制终止program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow.99b4015f- 1860-11eb-b3cf-bae7e12abd00失败 java.io.IOException:com.jcraft.jsch.JSchException:无效的私钥:[B @ 2bc057da 在io.cdap.cdap.common.ssh.DefaultSSHSession。(DefaultSSHSession.java:88)〜[na:na] 在io.cdap.cdap.internal.app.runtime.distributed.remote.SSHRemoteProcessController.killProcess(SSHRemoteProcessController.java:107)〜[na:na] 在io.cdap.cdap.internal.app.runtime.distributed.remote.SSHRemoteProcessController.kill(SSHRemoteProcessController.java:102)〜[na:na] 在io.cdap.cdap.internal.app.runtime.distributed.remote.RemoteExecutionTwillRunnerService $ ControllerFactory.lambda $ create $ 2(RemoteExecutionTwillRunnerService.java:536)〜[na:na] 在java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)〜[na:1.8.0_252] 在java.util.concurrent.CompletableFuture $ UniWhenComplete.tryFire(CompletableFuture.java:750)〜[na:1.8.0_252] 在java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)〜[na:1.8.0_252] 在java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1990)〜[na:1.8.0_252] 在io.cdap.cdap.internal.app.runtime.distributed.remote.RemoteExecutionTwillRunnerService $ ControllerFactory.lambda $ create $ 0(RemoteExecutionTwillRunnerService.java:506)〜[na:na] 在java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)〜[na:1.8.0_252] 在java.util.concurrent.FutureTask.run(FutureTask.java:266)〜[na:1.8.0_252] 在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 201(ScheduledThreadPoolExecutor.java:180)〜[na:1.8.0_252] 在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)〜[na:1.8.0_252] 在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)〜[na:1.8.0_252] 在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624)〜[na:1.8.0_252] 在java.lang.Thread.run(Thread.java:748)〜[na:1.8.0_252] 引起原因:com.jcraft.jsch.JSchException:无效的私钥:[B @ 2bc057da 在com.jcraft.jsch.KeyPair.load(KeyPair.java:664)〜[com.jcraft.jsch-0.1.54.jar:na] 在com.jcraft.jsch.IdentityFile.newInstance(IdentityFile.java:46)〜[com.jcraft.jsch-0.1.54.jar:na] 在com.jcraft.jsch.JSch.addIdentity(JSch.java:442)〜[com.jcraft.jsch-0.1.54.jar:na] 在io.cdap.cdap.common.ssh.DefaultSSHSession。(DefaultSSHSession.java:71)〜[na:na] ...省略了15个通用框架 2020-10-27 14:28:06,742-信息[runtime-scheduler-2:icciardAbstractTwillProgramController @ 77]-斜纹程序终止:program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow.99b4015f-1860- 11eb-b3cf-bae7e12abd00,斜纹跑步编号:99b4015f-1860-11eb-b3cf-bae7e12abd00 2020-10-27 14:28:06,742-调试[runtime-scheduler-2:i.c.c.i.a.r.d.AbstractTwillProgramController@84]-斜纹程序终止状态:失败 2020-10-27 14:28:06,743-调试[runtime-scheduler-2:icciardDistributedProgramRunner @ 637]-清理程序的tmp文件:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow:/ var / tmp / cdap / data / tmp / 1603808877320-0 2020-10-27 14:28:06,743-调试[pcontroller-program:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow-99b4015f-1860-11eb-b3cf-bae7e12abd00:iccarAbstractProgramRuntimeService @ 551]-删除RuntimeInfo :工作流程数据管道工作流程99b4015f-1860-11eb-b3cf-bae7e12abd00 2020-10-27 14:28:06,743-调试[pcontroller-program:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow-99b4015f-1860-11eb-b3cf-bae7e12abd00:iccarAbstractProgramRuntimeService @ 554]-已删除RuntimeInfo :RuntimeInfo {programId = program:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow,twillRunId = 99b4015f-1860-11eb-b3cf-bae7e12abd00} 2020-10-27 14:28:07,325-调试[provisioning-service-2:icciptProvisioningTask @ 121]-为程序运行program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow执行DEPROVISION子任务REQUESTING_DELETE。 -1860-11eb-b3cf-bae7e12abd00。 2020-10-27 14:28:07,354-警告[provisioning-service-2:i.c.c.r.s.p.r.RemoteHadoopProvisioner@138]-无法清理程序DataPipelineWorkflow的资源,该数据DataPipelineWorkflow在远程群集上运行99b4015f-1860-11eb-b3cf-bae7e12abd00。可能需要在群集节点35.233.87.155上手动删除运行目录。 java.io.IOException:com.jcraft.jsch.JSchException:无效的私钥:[B @ 5f165c7e 在io.cdap.cdap.common.ssh.DefaultSSHSession。(DefaultSSHSession.java:88)〜[na:na] 在io.cdap.cdap.internal.provision.DefaultSSHContext.createSSHSession(DefaultSSHContext.java:120)〜[na:na] 在io.cdap.cdap.runtime.spi.ssh.SSHContext.createSSHSession(SSHContext.java:92)〜[na:na] 在io.cdap.cdap.runtime.spi.ssh.SSHContext.createSSHSession(SSHContext.java:80)〜[na:na] 在io.cdap.cdap.runtime.spi.provisioner.remote.RemoteHadoopProvisioner.createSSHSession(RemoteHadoopProvisioner.java:80)〜[na:na] 在io.cdap.cdap.runtime.spi.provisioner.remote.RemoteHadoopProvisioner.deleteCluster(RemoteHadoopProvisioner.java:133)〜[na:na] 在io.cdap.cdap.runtime.spi.provisioner.Provisioner.deleteClusterWithStatus(Provisioner.java:142)[na:na] 在io.cdap.cdap.internal.provision.task.ClusterDeleteSubtask.execute(ClusterDeleteSubtask.java:42)[na:na] 在io.cdap.cdap.internal.provision.task.ProvisioningSubtask.execute(ProvisioningSubtask.java:54)[na:na] 在io.cdap.cdap.internal.provision.task.ProvisioningTask.lambda $ executeOnce $ 0(ProvisioningTask.java:123)[na:na] 在io.cdap.cdap.common.service.Retries.callWithRetries(Retries.java:183)〜[na:na] 在io.cdap.cdap.common.service.Retries.callWithInterruptibleRetries(Retries.java:257)〜[na:na] 在io.cdap.cdap.internal.provision.task.ProvisioningTask.executeOnce(ProvisioningTask.java:123)[na:na] 在io.cdap.cdap.internal.provision.ProvisioningService.lambda $ null $ 21(ProvisioningService.java:637)〜[na:na] 在io.cdap.cdap.internal.provision.ProvisioningService.callWithProgramLogging(ProvisioningService.java:813)〜[na:na] 在io.cdap.cdap.internal.provision.ProvisioningService.lambda $ null $ 22(ProvisioningService.java:635)〜[na:na] 在io.cdap.cdap.common.async.KeyedExecutor $ 2.run(KeyedExecutor.java:99)〜[na:na] 在java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)〜[na:1.8.0_252] 在java.util.concurrent.FutureTask.run(FutureTask.java:266)〜[na:1.8.0_252] 在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 201(ScheduledThreadPoolExecutor.java:180)〜[na:1.8.0_252] 在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)〜[na:1.8.0_252] 在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)〜[na:1.8.0_252] 在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624)〜[na:1.8.0_252] 在java.lang.Thread.run(Thread.java:748)〜[na:1.8.0_252] 引起原因:com.jcraft.jsch.JSchException:无效的私钥:[B @ 5f165c7e 在com.jcraft.jsch.KeyPair.load(KeyPair.java:664)〜[com.jcraft.jsch-0.1.54.jar:na] 在com.jcraft.jsch.IdentityFile.newInstance(IdentityFile.java:46)〜[com.jcraft.jsch-0.1.54.jar:na] 在com.jcraft.jsch.JSch.addIdentity(JSch.java:442)〜[com.jcraft.jsch-0.1.54.jar:na] 在io.cdap.cdap.common.ssh.DefaultSSHSession。(DefaultSSHSession.java:71)〜[na:na] ...省略了23个通用框架 2020-10-27 14:28:07,354-调试[provisioning-service-2:icciptProvisioningTask @ 125]-已完成的DEPROVISION子任务REQUESTING_DELETE,用于程序运行program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow.99b4015f -1860-11eb-b3cf-bae7e12abd00。 2020-10-27 14:28:07,370-调试[provisioning-service-2:icciptProvisioningTask @ 121]-对程序运行program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow.99b4015f执行DEPROVISION子任务POLLING_DELETE -1860-11eb-b3cf-bae7e12abd00。 2020-10-27 14:28:07,481-调试[provisioning-service-2:icciptProvisioningTask @ 125]-已完成DEPROVISION子任务POLLING_DELETE,用于程序运行program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow.99b4015f -1860-11eb-b3cf-bae7e12abd00。 2020-10-27 14:28:07,497-调试[provisioning-service-2:icciptProvisioningTask @ 112]-已完成的DEPROVISION任务,用于程序运行program_run:default.apache-logs-ingest_v1.-SNAPSHOT.workflow.DataPipelineWorkflow.99b4015f- 1860-11eb-b3cf-bae7e12abd00。