sqoop sqoop2

Sqoop是流行的Hadoop数据传输工具。 Sqoop允许从结构化数据存储(如关系数据库,企业数据仓库和NoSQL数据存储)轻松导入和导出数据。 Sqoop还与Hive,HBase和Oozie等基于Hadoop的系统集成。

在此博客文章中,我将介绍可用于在Sqoop中管理密码的各种选项。 Sqoop是一个非常稳定且易于使用的工具,可用于将数据传入和传出Hadoop。 但是,如果要自动执行导入/导出过程,则密码必须在计划文本中,这可能会被滥用。 以下是应对这一挑战的一些解决方案。

1.在文件系统中使用受保护的文件

为产品和开发创建单独的文件(将单独的帐户用于产品和开发总是一个好习惯)。

根据用户设置文件权限

ProdFile,只有Prod用户可以访问

-rw-------  1 vgunnuProd  staff   1.1M Oct  6  2014 password.txt

开发文件,授予组读取权限–在团队成员之间共享文件

-rw-r-----  1 vgunnuDev  staff   1.1M Oct  6  2014 password.txtsqoop import --connect jdbc:mysql://mapr.com/sqoop \--username sqoop \--password-file /mapr/democluster/opt/passwords/prodpass.txt --table vgunnu

2.从数据库中读取密码

维护Dev和PROD数据库表,并利用MySQL授权权限锁定PROD密码表,以允许从Prod边缘节点访问某些用户。

# Read password from database
# Select Password from mapr.Prod where applicationdb='mapr.vgunnu'
echo -n $Password > /mapr/democluster/opt/passwords/prodpass.txt
sqoop import --connect jdbc:mysql://mapr.com/sqoop \--username vgunnu \--password-file /mapr/democluster/opt/passwords/prodpass.txt --table vgunnu
rm /mapr/democluster/opt/passwords/prodpass.txt

3.使用数据库和Expect脚本

在上述选项中,我们可以使用linux spawn and Expect脚本来代替将密码保存到文件中。

#!/bin/bash
# Read password from database
# Select Password from mapr.Prod where applicationdb='mapr.vgunnu'
# Read password to variable pwd
/usr/bin/expect «EOFspawn sqoop import --connect jdbc:mysql://mapr.com/sqoop --username vgunnu -P --table vgunnuexpect "Enter password:"send "$pwd\r\n"set timeout -1  # Wait for Sqoop to finishexpect "~~~~~~~~~~~~"wait
EOF

4.使用Hadoop CredentialProvider API

在Hadoop 2.6中,引入了一项基本功能–凭据API。 Hadoop中的CredentialProvider API允许分离应用程序以及它们如何存储所需的密码/秘密。 在Sqoop 1.4.5中,Sqoop支持credentail API密钥库。

生成加密的credentail密钥库:

[mapr@maprdemo ~]$ hadoop credential create msql.vgunnudb -provider jceks://maprfs/user/mapr/mysql.password.m.jceks
Enter password:
Enter password again:
msql.vgunnudb has been successfully created.
org.apache.hadoop.security.alias.JavaKeyStoreProvider has been updated.[mapr@maprdemo ~]$ hadoop credential list -provider jceks://maprfs/user/mapr/mysql.password.m.jceks
Listing aliases for CredentialProvider: jceks://maprfs/user/mapr/mysql.password.m.jceks
msql.vgunnudbsqoop import -Dhadoop.security.credential.provider.path=jceks://maprfs/user/mapr/mysql.password.m.jceks \--connect jdbc:mysql://mapr.com/sqoop \--username vgunnu \--password-file /mapr/democluster/opt/passwords/prodpass.txt --table vgunnu \-–password-alias msql.vgunnudb

在此博客文章中,您了解了可用于在Sqoop中管理密码的不同选项。 如果您还有其他问题,请在下面的评论部分中提问。

翻译自: https://www.javacodegeeks.com/2016/03/key-tips-managing-passwords-sqoop.html

sqoop sqoop2

sqoop sqoop2_在Sqoop中管理密码的关键提示相关推荐

  1. 在Sqoop中管理密码的关键提示

    Sqoop是用于Hadoop的流行数据传输工具. Sqoop允许从结构化数据存储(如关系数据库,企业数据仓库和NoSQL数据存储)轻松导入和导出数据. Sqoop还与Hive,HBase和Oozie等 ...

  2. payara 创建 集群_在Payara Server和GlassFish中配置密码

    payara 创建 集群 回答Stackoverflow问题可以为我发现我最喜欢的开源工具的正式文档中的空白提供很好的反馈. 我在这里回答的问题之一是如何在docker容器中更改Payara Serv ...

  3. 在Payara Server和GlassFish中配置密码

    回答Stackoverflow问题可以为我发现我最喜欢的开源工具的正式文档中的空白提供很好的反馈. 我在这里回答的问题之一是如何在docker容器中更改Payara Server主密码 . 显然,在标 ...

  4. hive sqoop 分区导入_利用oozie,执行sqoop action将DB2中的数据导入到hive分区表中

    测试:利用oozie,执行sqoop action将DB2中的数据导入到hive分区表中. 需要注意的地方: 1,要添加hive.metastore.uris这个参数.否则无法将数据加载到hive表中 ...

  5. chrome 保存密码_如何在Chrome中管理保存的密码

    chrome 保存密码 Google Chrome comes with a handy password manager already built in. You can have your br ...

  6. [Hadoop]Sqoop 1.4.2中文文档(一)之数据导入

    一.Sqoop Help $ sqoop help usage: sqoop COMMAND [ARGS]Available commands:codegen Generate code to int ...

  7. Docker Swarm集群secrets中管理敏感数据

    在Swarm集群中管理敏感数据 以往管理敏感数据的姿势通常是 密钥放镜像中.设置环境变量.volume动态挂载等.Docker目前提供了secrets管理功能,用户可以在Swarm集群中安全地管理密码 ...

  8. 在命令行中管理 Wifi 连接

    在命令行中管理 Wifi 连接 无论何时要安装一款新的 Linux 发行系统,一般的建议都是让您通过有线连接来接到互联网的.这主要的原因有两条:第一,您的无线网卡也许安装的驱动不正确而不能用:第二,如 ...

  9. 本地php后台密码恢复默认,找回wordpress后台管理密码的PHP脚本方法

    有时候我们自己被锁定在WordPress后端,主要是因为忘记了密码.大多数情况下,您可以通过电子邮件重置密码 但是你有时也会忘记你的电子邮件密码.不好了!这太可怕了. 在这里我介绍一种通过FTP /文 ...

最新文章

  1. Java的注释(详细版)
  2. thinkcmf5调用指定分类的二级_Tengine快速上手系列教程amp;视频:基于Python API的图片分类应用入门丨附彩蛋...
  3. python画长方形-怎么用python 画出任意占空比的一串矩形方波呢?
  4. 网站SEO搜索排版布局优化
  5. c语言编程获取当前系统时间包含年,月,日,时,分,秒.,C语言获取系统时间的几种方式...
  6. 注册刷短信验证码的问题
  7. Javaee 应用分层架构
  8. 鸿蒙系统适配开发,捕获科技拟建立鸿蒙开发组 为区块链钱包客户适配鸿蒙系统做筹备...
  9. 打造高效的运维日志收集与分析平台
  10. 4.RabbitMQ实战 --- 解决Rabbit相关问题:编码与模式,RPC
  11. Java计算接口请求时间
  12. WIN10专业版64位21H2正式版19044.1826
  13. java bridge_JavaBridge
  14. qq邮箱发件转发php,phpmailer 利用qq邮箱转发邮件的问题
  15. 多目标优化算法:多目标非洲秃鹫优化算法(Multi-objective Africans Vultures Optimization Algorithm,MOAVOA)提供MATLAB代码及参考文献
  16. 文本文档打开来是写字板怎么办
  17. 2022 最新华为面经分享:Java 高分面试指南
  18. 我的世界(方块地图)生成
  19. PyCharm谷歌翻译插件Translation提示:更新 TKK 失败,请检查网络连接
  20. 腾讯云、阿里云都“服”了,云容灾你还迟疑什么?

热门文章

  1. P1407-[国家集训队]稳定婚姻【tarjan,强连通分量】
  2. jzoj4208-线段树什么的最讨厌了【dfs】
  3. 【主席树】更为厉害(P3899)
  4. 【二分】Best Cow Fences(poj 2018)
  5. 【动态规划】石子合并 (ssl 2863)
  6. 6、mysql中字段
  7. 面试官让我讲下线程的WAITING状态,我笑了
  8. 汇编语言(十一)之统计非数字字符个数
  9. 开发人员也要懂点的测试知识
  10. 架构师必须掌握的 10 条设计原则