我正在尝试在HUE Oozie的 Sqoop操作中传递服务器详细信息和用户名及密码。
我们在sqoop 1.4.5-cdh5.3.3
如果我在CLI上运行此命令,则运行正常,但在Hue Oozie工作流程中,它会失败
sqoop操作UI中的命令:
list-databases --connect "jdbc:sqlserver://${dbserver}:140" -- username=edm_hadoop_user --password=${dbpass}
情景:
我有 job.properties 文件,其中包含以下信息,并且与HDFS中的workflow.xml文件一起显示。
dbserver=FACETS
dbport=140
dbuser=*******
dbpass=*******
如果我填充" Parms"并使用“dbserver'”的值来测试和' dbpass'它工作正常,我不想这样做,因为我需要安排这个工作流程,并希望它通过从文件中提取服务器和密码详细信息自动运行
如果我添加"作业属性"像这样
属性名称= dbserver值= $ {dbserver} 并且对于dbpass也是明智的,它失败并且错误无法解析dbserver,这意味着它不会从job.properties文件中提取值。
如果我添加"文件"并在其中指定job.properties文件位置,它不会获取值并且作业失败。
我还创建了一个job.xml文件,其中包含以上值作为属性,并在" Job XML"中提供了该文件名。即使这样,工作流也失败了。
如果我想从Hue UI oozie运行sqoop动作工作流程,我该如何指定参数?
或者我应该通过单独创建workflow.xml和job.properties文件并使用Oozie Hue上的shell操作来调用它们?