2016-04-05 11 views
2

データベースパスワードをHadoop CredentialProviderに保存しました。SqoopジョブがHadoop Credential APIで動作しない

端末からのSqoopインポートがうまくいき、CredentialProviderからパスワードを正常に取得しています。

sqoop import 
-Dhadoop.security.credential.provider.path=jceks://hdfs/user/vijay/myPassword.jceks 
--table myTable -m 1 --target-dir /user/vijay/output --delete-target-dir --username vijay --password-alias db2-dev-password 

しかし、私はSqoopジョブとしてセットアップしようとすると、それを認識することができません - Dhadoop.security.credential.provider.path引数。

sqoop job --create my-sqoop-job -- import --table myTable -m 1 --target-dir /user/vijay/output --delete-target-dir --username vijay -Dhadoop.security.credential.provider.path=jceks://hdfs/user/vijay/myPassword.jceks --password-alias 

次のエラーメッセージです:

14/04/05 13:57:53 ERROR tool.BaseSqoopTool: Error parsing arguments for import: 
14/04/05 13:57:53 ERROR tool.BaseSqoopTool: Unrecognized argument: -Dhadoop.security.credential.provider.path=jceks://hdfs/user/vijay/myPassword.jceks 
14/04/05 13:57:53 ERROR tool.BaseSqoopTool: Unrecognized argument: --password-alias 
14/04/05 13:57:53 ERROR tool.BaseSqoopTool: Unrecognized argument: db2-dev-password 

私はSqoop仕事とHadoopの資格のAPIを構成するためのSqoop User Guideにおける特別な指示を見つけることができませんでした。

この問題を解決するにはどうすればよいですか?

答えて

3

で出力を追加するには、Hadoopのサーバーにコマンドを下回る

hadoop credential list -provider jceks://hdfs/user/vijay/myPassword.jceks 

を実行してください。

sqoop job -Dhadoop.security.credential.provider.path=jceks://hdfs/user/vijay/myPassword.jceks --create my-sqoop-job -- import --table myTable -m 1 --target-dir /user/vijay/output --delete-target-dir --username vijay --password-alias myPasswordAlias 

Sqoopジョブキーワードの前にHadoop認証情報を配置します。

0

Sqoopジョブコマンドが正しくありません。つまり、--password-aliasは不完全です。
はSqoopパラメータは、問題を解決するための位置決め再Sqoopジョブコマンド以下

sqoop job --create my-sqoop-job -- import --table myTable -m 1 --target-dir /user/vijay/output --delete-target-dir --username vijay -Dhadoop.security.credential.provider.path=jceks://hdfs/user/vijay/myPassword.jceks --password-alias <<output of above command>> 
+0

Hadoopクレデンシャルは、暗号化されたパスワードを安全な場所に保存します。パスワードエイリアスを提供した後も、問題が存在します。 –

関連する問題