hadoop 如何连beeline_0641-5.16.1-如何禁用CDH5.16.1的Kerberos

1.文档编写目的

Fayson在前面的文章介绍了如何为CDH集群启用Kerberos,在集群启用Kerberos后,会对现有环境的部分代码做改造,有些人觉得使用起来不方便,想取消Kerberos。本篇文章Fayson主要介绍如何禁用CDH集群的Kerberos及禁用后对各组件服务的测试。

注意:本文禁用Kerberos属于比较暴力的方式,未在正式成产环境做严格测试,操作方式仅供参考,建议环境为开发/测试/Poc环境。

  • 内容概述

1.集群环境说明

2.禁用Kerberos及启动服务

3.验证服务及各个服务功能

4.总结

  • 测试环境

1.CM和CDH版本为5.16.1

2.集群已启用Kerberos

3.集群已启用Sentry

2.集群环境介绍

1.CDH集群已启用Kerberos

73ca7f5d23b93369fd59492c3b690b7c.png

2.禁用前集群HDFS信息

04c9442473b6a8a4145c1104bc435119.png

3.禁用Kerberos

1.通过CM停止CDH集群的所有服务

e684e20b43f1a5956c687d7cf53395e8.png

服务停止成功

f2c09cb5adb169608530501163270ef5.png

2.对Zookeeper服务操作

通过CM修改Zookeeper的enableSecurity为false(即取消勾选,保存配置)

846d530ddcaff9aebe0994fe122a0736.png

取消勾选quorum.auth.enableSasl,保存配置。

321adeb6442923d2cb6f3b92e99e075b.png

查看Zookeeper服务的数据目录

0db219626fe2dd823b1decdd662a0ebe.png

登录服务器将Zookeeper的数据目录下的文件删除

[root@ip-172-31-13-38 shell]# sh ssh_do_all.sh node.list "rm -rf /var/lib/zookeeper/*"

注意:所有Zookeeper的数据目录下文件都要删除。

执行Zookeeper初始化操作

d3fe4a13f99d785277ac7092f67d6c48.png
bf0b6b197b86ed0bdfc4cd4a51721954.png
bbfc5eb902e529b330dedeade94fb430.png

初始化成功

3592cf8452e2e66a9b77c94e15731f4a.png

3.修改HDFS配置

修改Hadoop的安全身份验证,保存配置。

hadoop.security.authentication 修改为simplehadoop.security.authorization 修改为false即取消勾选
005b9a3f21820e2eb86222c1b1f8c865.png

修改DataNode的数据目录权限为755,保存配置。

052cf5bf13ed98d1aec5a251276f7b8b.png

修改DataNode的如下端口,保存配置

dfs.datanode.address 修改为50010dfs.datanode.http.address 修改为50070
d2e254ef1ef589542eeef2b654b87e43.png

保存修改的配置信息。

4.进入HBase服务修改配置

修改HBase的身份验证,保存配置。

hbase.security.authentication 修改为simplehbase.security.authorization 修改为false即取消勾选hbase.thrift.security.qop修改为none
762931021d4e964561d92a3755933f7e.png

5.Hue服务修改

删除Hue实例中的 “Kerberos Ticket Renewer”服务

d6901e9450a91f7c2b0ea8ffa2bd61d9.png
6f6ece94d9d5bcc9259d353fc8c746ba.png

删除成功

b0041eca558eaaa52044ee22bcbbb09b.png

6.修改Hive配置,如果集群未启用Sentry则跳过此步

sentry.hive.testing.modetrue
658f878533dd6159d910b42255350658.png

保存配置

7.Kudu服务修改

取消勾选enable_security,保存配置。

806a8e231cc0ebf6ded00d8cd59f65d7.png

8.重启Cloudera Management Service服务

修改完上述配置后,重启Cloudera Management Service 服务

576d0bcfc34d1bdfef44b8699d800f4e.png

重启成功

20bd440f8d8a6dc1cfd3c51e912d64cb.png

4.集群服务启动

1.启动Zookeeper服务

63ba921abd1484175b30b1120e492502.png

启动成功

fe1a5a96ab1f9cc59e1f35abccb40035.png

Leader选举正常

47bb79f0280412cbab24190dad7643d2.png

注意:这里先启动Zookeeper服务。

2.初始化Failover Controller服务的自动故障转移Znode

选择任意一个Failover Controller服务进入,初始化自动故障转移Znode

662adc83707ab928d33b6e5b9d6b689a.png
ee373ac9e041513a9e9259b9c8db3cfd.png

初始化成功

2ea11f3fb659d5b22cb74face64fd7c9.png

3.部署客户端配置。

1990616fc399e37bd7505815df82aae1.png

部署成功

6e9fa07c2e27dfd10346b7d749655d41.png

4.启动集群剩余服务

3465a31eddfd9821c9ef40141aa3f2da.png

启动成功

95aad15de830f07d65d993a83de11e3a.png

集群各个服务状态正常

e7c512944da43fc43b793a33fbf40999.png

5.CM显示Kerberos已禁用

0ebf492a4978fb65e136433d944598ce.png

6.HDFS数据量与禁用Kerberos之前一致

26028fb4b9970629d25b32c7cf97239d.png

5.服务功能验证

1.HDFS服务验证

查看HDFS文件系统

[root@ip-172-31-13-38 shell]# klist[root@ip-172-31-13-38 shell]# hadoop fs -ls /
f8abda777099f9111bc08e9c214dc8c6.png

向集群put文件及查看

[root@ip-172-31-13-38 shell]# ls[root@ip-172-31-13-38 shell]# hadoop fs -put a.sh /tmp[root@ip-172-31-13-38 shell]# hadoop fs -ls /tmp[root@ip-172-31-13-38 shell]# hadoop fs -cat /tmp/a.sh
38117511520466dd4e4151b67774bbe1.png

在未Kinit的情况下正常使用Hadoop命令

2.Hive服务验证

使用Hive CLI访问Hive,执行SQL查询及Count操作

1d8115274fb1f37b3de44924d3712337.png

使用Beeline方式访问Hive

[root@ip-172-31-13-38 shell]# beelinebeeline> !connect jdbc:hive2://localhost:10000scan complete in 2msConnecting to jdbc:hive2://localhost:10000Enter username for jdbc:hive2://localhost:10000: hiveEnter password for jdbc:hive2://localhost:10000: Connected to: Apache Hive (version 1.1.0-cdh5.16.1)Driver: Hive JDBC (version 1.1.0-cdh5.16.1)Transaction isolation: TRANSACTION_REPEATABLE_READ0: jdbc:hive2://localhost:10000> select * from test;0: jdbc:hive2://localhost:10000> select count(*) from test;
950d5c64be49e9dab51305571fb3773b.png
887a5209fb96dfef500d0fd173112621.png
dd15dad84ecba4b73d25593d4b880766.png

其他组件如HBase,Hue,Impala,MapReduce等功能验证过程略。

6.总结

1.禁用CDH集群的Kerberos服务,主要是依赖Zookeeper的各个服务对Znode的读取权限,这里Fayson比较暴力直接将Zookeeper的数据目录删除重新初始化。

2.相较之前在CDH5.12.1的禁用过程,对于Zookeeper的配置多了一步取消勾选quorum.auth.enableSasl,否则后面会导致Zookeeper服务启动失败,参考《0271-如何禁用CDH集群Kerberos》。

3.需要对启用了Kerberos的服务进行修改,禁用每个服务的Kerberos主要涉及Zookeeper,HDFS,HBase和Hue。本次过程比之前在CDH5.12.1的禁用过程,多了对于Kudu也要取消Kerberos配置,否则CM的安全页面依旧会显示Kerberos还是启用状态。

4.在修改完配置后,启用HDFS时需要注意,由于Fayson直接删除了Zookeeper的数据目录所以我们要为Failover Controller服务初始化自动故障转移Znode

5.如果Kerberos集群启用了Sentry,需要注意的是禁用Kerberos后要在Hive中配置Sentry为testing mode模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值