最近在项目中遇到同步两个 CDH 数据文件的需求,调研了一圈,发现 datax 不支持两个 cdh 同时进行 kerberos 认证,因此切换到 chunjun,chunjun 在 kerberos 认证的配置这块,官网也没有详细的介绍案例,在查看源代码后,确定了配置项及各配置项的值,供大家参考

  1 {
2 "job": {
3 "content": [
4 {
5 "reader" : {
6 "parameter" : {
7 "path" : "hdfs://cdh-test-namenode05:8020/user/hive/warehouse/testuser_db.db/testuser_user/t4.txt",
8 "hadoopConfig" : {
9 "properties.hadoop.user.name": "testuser",
10 "properties.dfs.ha.namenodes.nameservice1": "namenode27,namenode29",
11 "properties.fs.defaultFS": "hdfs://nameservice1",
12 "properties.dfs.namenode.rpc-address.nameservice1.namenode27": "cdh-test-namenode04:8020",
13 "properties.dfs.client.failover.proxy.provider.nameservice1": "org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider",
14 "properties.dfs.namenode.rpc-address.nameservice1.namenode29": "cdh-test-namenode05:8020",
15 "properties.dfs.nameservices": "nameservice1",
16 "properties.fs.hdfs.impl.disable.cache": "true",
17 "properties.dfs.client.use.datanode.hostname":"true",
18 "dfs.client.use.datanode.hostname":"true",
19 "properties.fs.hdfs.impl": "org.apache.hadoop.hdfs.DistributedFileSystem",
20 "hadoop.security.authentication": "Kerberos",
21 "dfs.namenode.kerberos.principal": "hdfs/_HOST@CDHDEV.COM",
22 "dfs.datanode.kerberos.principal": "hdfs/_HOST@CDHDEV.COM",
23 "yarn.resourcemanager.principal": "rm/_HOST@CDHDEV.COM",
24 "dfs.namenode.kerberos.internal.spnego.principal": "HTTP/_HOST@CDHDEV.COM",
25 "hadoop.security.authorization": "true",
26 "dfs.namenode.keytab.file": "/app/data/CDH6.3.2/kerberos/testuser.keytab",
27 "java.security.krb5.conf": "/app/data/CDH6.3.2/krb5/krb5.conf",
28 "useLocalFile": "true",
29 "principalFile": "/app/data/CDH6.3.2/kerberos/testuser.keytab",
30 "principal": "testuser/cdh-test-namenode05"
31 },
32
33 "column": [
34 {
35 "name": "id",
36 "type": "int"
37 },
38 {
39 "name": "name",
40 "type": "string"
41 }
42 ],
43 "fieldDelimiter" : ",",
44 "encoding" : "utf-8",
45 "defaultFS": "hdfs://cdh-test-namenode05:8020",
46 "fileType" : "text"
47 },
48 "name" : "hdfsreader"
49 },
50 "writer": {
51 "name": "hdfswriter",
52 "parameter": {
53 "path": "/user/hive/warehouse/test_system_user.db/testuser",
54 "defaultFS": "hdfs://test01:8020",
55 "column": [
56 {
57 "name": "id",
58 "type": "int"
59 },
60 {
61 "name": "name",
62 "type": "string"
63 }
64 ],
65 "fileType": "text",
66 "fieldDelimiter": ",",
67 "compress":"gzip",
68 "encoding": "utf-8",
69 "fileName": "20220705",
70 "writeMode": "overwrite",
71 "hadoopConfig": {
72 "properties.hadoop.user.name": "test_system_user",
73 "properties.dfs.ha.namenodes.nameservice1": "namenode37,namenode51",
74 "properties.fs.defaultFS": "hdfs://nameservice1",
75 "properties.dfs.namenode.rpc-address.nameservice1.namenode51": "test02:8020",
76 "properties.dfs.client.failover.proxy.provider.nameservice1": "org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider",
77 "properties.dfs.namenode.rpc-address.nameservice1.namenode37": "test01:8020",
78 "properties.dfs.nameservices": "nameservice1",
79 "properties.dfs.client.use.datanode.hostname":"true",
80 "dfs.client.use.datanode.hostname":"true",
81 "properties.fs.hdfs.impl.disable.cache": "true",
82 "properties.fs.hdfs.impl": "org.apache.hadoop.hdfs.DistributedFileSystem",
83 "hadoop.security.authentication": "Kerberos",
84 "dfs.namenode.kerberos.principal": "hdfs/_HOST@SINOSIG.COM",
85 "dfs.datanode.kerberos.principal": "hdfs/_HOST@SINOSIG.COM",
86 "yarn.resourcemanager.principal": "rm/_HOST@SINOSIG.COM",
87 "dfs.namenode.kerberos.internal.spnego.principal": "HTTP/_HOST@SINOSIG.COM",
88 "hadoop.security.authorization": "true",
89 "dfs.namenode.keytab.file": "/app/data/cloudera/CDH-6.3.2/kerberos/test_system_user.keytab",
90 "java.security.krb5.conf": "/app/data/cloudera/CDH-6.3.2/krb5/krb5.conf",
91 "useLocalFile": "true",
92 "principalFile": "/app/data/cloudera/CDH-6.3.2/kerberos/test_system_user.keytab",
93 "principal": "test_system_user/test02@SINOSIG.COM"
94 }
95 }
96 }
97 }
98 ],
99 "setting": {
100 "speed": {
101 "channel": 4,
102 "bytes": 0
103 }
104 }
105 }
106 }

chunjun同步两个带Kerberos认证的CDH集群数据的更多相关文章

  1. Flink整合oozie shell Action 提交任务 带kerberos认证

    最近这段时间一直在忙新集群迁移,上了最新的cdh6.3.0 于是Flink 提交遇到了许多的问题 还好有cloudera License 有了原厂的帮助和社区的伙伴,问题解决起来快了不少,手动滑稽 集 ...

  2. DBeaver链接kerberos安全认证的Phoenix集群

    DBeaver链接kerberos安全认证的Phoenix集群 最近公司的CDH集群,启动了kerberos安全认证,所有的用户验证全部需要依赖kerberos来进行.之前的裸奔集群,总算有了一些安全 ...

  3. Eureka应用注册与集群数据同步源码解析

    在之前的EurekaClient自动装配及启动流程解析一文中我们提到过,在构造DiscoveryClient类时,会把自身注册到服务端,本文就来分析一下这个注册流程 客户端发起注册 boolean r ...

  4. Elasticsearch多集群数据同步

    有时多个Elasticsearch集群避免不了要同步数据,网上查找了下数据同步工具还挺多,比较常用的有:elasticserach-dump.elasticsearch-exporter.logsta ...

  5. 3、基于多播、安全认证的corosync集群(VIP、Httpd、Filesystem)

    Messaging Layer --> CRM --> RA systemd:/usr/lib/systemd/system     systemd有一个特性,即便一个服务开机启动,但是在 ...

  6. 利用新版本自带的Zookeeper搭建kafka集群

    安装简要说明新版本的kafka自带有zookeeper,其实自带的zookeeper完全够用,本篇文章以记录使用自带zookeeper搭建kafka集群.1.关于kafka下载kafka下载页面:ht ...

  7. MySqlNDB使用自带的ndb_setup.py安装集群

    在用Mysql做集群时,使用Mysql的NDB版本更易于集群的扩展,稳定和数据的实时性. 我们可以使用Mysql自带的工具进行集群安装与管理:ndb_setup.py.位于Mysql的安装目录bin下 ...

  8. mysql 集群 数据同步

    mysql集群配置在网站负载均衡中是必不可少的: 首先说下我个人准备的负载均衡方式: 1.通过nginx方向代理来将服务器压力分散到各个服务器上: 2.每个服务器中代码逻辑一样: 3.通过使用redi ...

  9. 手把手带你部署K8s二进制集群

    集群环境准备: [etcd集群证书生成] #mkdir -p k8s/{k8s-cert,etcd-cert}#cd k8s/etcd-cert/ #cat > ca-config.json & ...

  10. 008 Ceph集群数据同步

    介绍,目前已经创建一个名为ceph的Ceph集群,和一个backup(单节点)Ceph集群,是的这两个集群的数据可以同步,做备份恢复功能 一.配置集群的相互访问 1.1 安装rbd mirror rb ...

随机推荐

  1. JS 学习笔记 (七) 面向对象编程OOP

    1.前言 创建对象有很多种方法,最常见的是字面量创建和new Object()创建.但是在需要创建多个相同结构的对象时,这两种方法就不太方便了. 如:创建多个学生信息的对象 let tom = { n ...

  2. pycharm安装第三方的包

    这里以安装selenium为例子 在file下找到settings 在弹出的窗口点击python interpreter ,然后在右侧点击[+] 在弹窗顶部输入要导入的包名,在下方列表找到对应包后,点 ...

  3. SqlDataAdapter使用小结

    SqlDataAdapter是 DataSet与SQL Server之间的桥接器,用于相互之间的数据操作. 使用方法 1. 通过查询语句 与 SqlConnection对象实现 string strC ...

  4. 部署redis集群

    1.redis部署 redis单实例部署参考:https://www.cnblogs.com/silgen/p/16537299.html 版本:6.2.7 集群:6个节点(redis集群至少3个节点 ...

  5. Java8中那些方便又实用的Map函数

    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介 java8之后,常用的Map接口中添加了一些非常实用的函数,可以大大简化一些特定场景的代码编写,提升代码可读性,一 ...

  6. laravel 腾讯云短信发送

    public function tecentSms(Request $request) { $phone = $request->input("hiphone"); $app ...

  7. ubuntu 22.04安装多个gcc

    sudo apt install gcc-9 g++-9 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90 - ...

  8. Easy-Classification-验证码识别

    1.背景 Easy-Classification是一个应用于分类任务的深度学习框架,它集成了众多成熟的分类神经网络模型,可帮助使用者简单快速的构建分类训练任务.   案例源代码 Easy-Classi ...

  9. 总结uni-app遇到的坑持续跟新

    1.uni.navigateTo跳转没有反应 官方示例 //在起始页面跳转到test.vue页面并传递参数 uni.navigateTo({ url: 'test?id=1&name=unia ...

  10. Zabbix技术分享——使用docker-compose快速部署zabbix监控系统

    前面文章有提到过使用docker来快速拉起一个zabbix监控系统(详见:如何使用docker快速部署一个zabbix监控系统),但是要一个个执行docker启动命令去将对应的容器启动.如果要配置参数 ...