0641-5.16.1-如何禁用CDH5.16.1的Kerberos

Fayson的github: https://github.com/fayson/cdhproject

推荐关注微信公众号:“Hadoop实操”,ID:gh_c4c535955d0f

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
在这里插入图片描述
2.禁用前集群HDFS信息
在这里插入图片描述

3 禁用Kerberos

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

在这里插入图片描述

服务停止成功

在这里插入图片描述

2.对Zookeeper服务操作

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

在这里插入图片描述

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

在这里插入图片描述

查看Zookeeper服务的数据目录

在这里插入图片描述

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

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

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

执行Zookeeper初始化操作

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

初始化成功
在这里插入图片描述

3.修改HDFS配置

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

hadoop.security.authentication 修改为simple
hadoop.security.authorization 修改为false即取消勾选

在这里插入图片描述

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

在这里插入图片描述

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

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

在这里插入图片描述
保存修改的配置信息。

4.进入HBase服务修改配置

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

hbase.security.authentication 修改为simple
hbase.security.authorization 修改为false即取消勾选
hbase.thrift.security.qop修改为none

在这里插入图片描述

5.Hue服务修改

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

在这里插入图片描述

在这里插入图片描述

删除成功
在这里插入图片描述

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

<property>
    <name>sentry.hive.testing.mode</name>
    <value>true</value>
</property>

在这里插入图片描述

保存配置

7.Kudu服务修改

取消勾选enable_security,保存配置。

在这里插入图片描述

8.重启Cloudera Management Service服务

修改完上述配置后,重启Cloudera Management Service 服务
在这里插入图片描述

重启成功

在这里插入图片描述

4 集群服务启动

1.启动Zookeeper服务
在这里插入图片描述
启动成功

在这里插入图片描述
Leader选举正常

在这里插入图片描述

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

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

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

在这里插入图片描述

在这里插入图片描述

初始化成功

在这里插入图片描述
3.部署客户端配置。

在这里插入图片描述

部署成功

在这里插入图片描述

4.启动集群剩余服务

在这里插入图片描述

启动成功
在这里插入图片描述

集群各个服务状态正常
在这里插入图片描述

5.CM显示Kerberos已禁用
在这里插入图片描述

6.HDFS数据量与禁用Kerberos之前一致
在这里插入图片描述

5 服务功能验证

1.HDFS服务验证

查看HDFS文件系统

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

在这里插入图片描述
向集群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

在这里插入图片描述
在未Kinit的情况下正常使用Hadoop命令

2.Hive服务验证

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

在这里插入图片描述
使用Beeline方式访问Hive

[root@ip-172-31-13-38 shell]# beeline
beeline> !connect jdbc:hive2://localhost:10000
scan complete in 2ms
Connecting to jdbc:hive2://localhost:10000
Enter username for jdbc:hive2://localhost:10000: hive
Enter 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_READ
0: jdbc:hive2://localhost:10000>  select * from test;
0: jdbc:hive2://localhost:10000> select count(*) from test;

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

6 总结

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

2.相较之前在CDH5.12.1的禁用过程,对于Zookeeper的配置多了一步取消勾选quorum.auth.enableSasl,否则后面会导致Zookeeper服务启动失败,参考《如何禁用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模式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值