ambari启用kerberos

背景

公司的测试集群是amabri安装的,HDP3.1.4版本,前面已经安装好了kerberos主从,现在要在集群上开启kerberos认证

通过ambari界面开启集群kerberos

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
如果看到上面界面,说明kerberos开启成功,接下来测试一下各个服务是否能正常访问,对异常的服务针对进行修复。

开启kerberos后各个组件的访问

  1. 默认集群管理员用户(root)拥有访问集群的权限。
  2. kinit test/host@root这种初始化方式是需要输入密码的,仅限于集群管理员使用。
    3.集群租户使用如下方式初始化(不需要密码):
    kinit -k -t test.keytab test/host@root
    keytab 文件如下方式生成:
    kadmin.local -q "addprinc -randkey test/host@root "
    kadmin.local -q “xst -k test-unmerged.keytab test/host@root”
    ktutil
    rkt test-unmerged.keytab
    wkt test.keytab
    exit
    hdfs使用
    执行相关命令前需要使用kinit初始化keytab
    hive使用:
    beeline -u “jdbc:hive2://ochadoop10:10000/default;principal=hive/ochadoop10@root” -n test/host@root -p test
    beeline -u “jdbc:hive2://ochadoop10:10000/default;principal=hive/ochadoop10@root” -n yinkp/ochadoop09@root -p yinkp
    keytab形式需要先进行kinit keytab,再进行beeline连接。
    beeline -u “jdbc:hive2://host-10-1-236-51:10000/default;principal=hive/host-10-1-236-51@root”

我这边的kinit 的test2用户,由于test2用户没有库权限,所以报没有权限。但是访问kerberos OK。
Hbase使用:
进入Hbase shell 前需要执行相关命令前需要使用kinit初始化keytab
Phoenix使用:
进入Hbase shell 前需要执行相关命令前需要使用kinit初始化keytab
./sqlline.py 10.1.236.51:2181:/hbase-secure
集成kerberos后,kafka访问方式:(必须使用主机名,如果是ip会报错)
keytab初始化:
kinit -kt root.keytab root@root

创建topic:
/usr/hdp/current/kafka-broker/bin/kafka-topics.sh --zookeeper host-10-1-236-52:2181 --create --topic yinkp2 --replication-factor 1 --partitions 1

查看topic:
/usr/hdp/current/kafka-broker/bin/kafka-topics.sh --list --zookeeper host-10-1-236-52:2181

创建生产者:
/usr/hdp/current/kafka-broker/bin/kafka-console-producer.sh --broker-list dc-hadoop-dn-7:6667 --topic test --producer.config producer.properties

创建消费者:
/usr/hdp/current/kafka-broker/bin/kafka-console-consumer.sh --topic test --bootstrap-server dc-hadoop-dn-7:6667 --from-beginning --consumer.config consumer.properties

必须使用主机名,如果是ip会报错
ERROR An error: (java.security.PrivilegedActionException: javax.security.sasl.SaslException: GSS initiate failed

注意

我这里测试集群,自定义安装了flink,hue,ES,presto等,应在未安装之前启用kerberos,因为amabri是不支持这个自定义kerberos的,需要自己在自定义是配置,或者后期添加配置,我这里是直接先停停掉,在安装的,但是测试集群很多人再用,停止前要和大家商量好

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐