首页 > 其他分享 >0641-5.16.1-如何禁用CDH5.16.1的Kerberos

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

时间:2022-10-04 12:04:58浏览次数:83  
标签:Zookeeper 服务 0641 禁用 Kerberos 修改 集群 5.16


温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。




Fayson的github:

​https://github.com/fayson/cdhproject​




提示:代码块部分可以左右滑动查看噢



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


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


2.禁用前集群HDFS信息


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


3

禁用Kerberos


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


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


服务停止成功


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


2.对Zookeeper服务操作

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


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


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


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


查看Zookeeper服务的数据目录


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


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


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


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

执行Zookeeper初始化操作


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

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

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


初始化成功


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


3.修改HDFS配置

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


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


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


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


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


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


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


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


保存修改的配置信息。


4.进入HBase服务修改配置

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


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


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


5.Hue服务修改

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


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

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


删除成功


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


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


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


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


保存配置

7.Kudu服务修改

取消勾选enable_security,保存配置。


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


8.重启Cloudera Management Service服务

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


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


重启成功


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


4

集群服务启动


1.启动Zookeeper服务


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


启动成功


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


Leader选举正常


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


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


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

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


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

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


初始化成功


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


3.部署客户端配置。


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


部署成功


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


4.启动集群剩余服务


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


启动成功


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


集群各个服务状态正常


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


5.CM显示Kerberos已禁用


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


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


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


5

服务功能验证


1.HDFS服务验证

查看HDFS文件系统


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


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


向集群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


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


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


2.Hive服务验证

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


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


使用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;


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

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

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


其他组件如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模式。


提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。


推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

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

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操


标签:Zookeeper,服务,0641,禁用,Kerberos,修改,集群,5.16
From: https://blog.51cto.com/u_14049791/5731167

相关文章