如何在Kerberos下使用Solr

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

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

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

1.问题描述


当在CDH集群中对Solr服务启用Kerberos后,如果我们要查看某个Solr Server的Web界面,会出现如下报错:

使用如下查询语句会出错

[root@cdh02 _fayson]# curl "http://cdh04.fayson.com:8983/solr/data_shard1_replica1/query?q=*%3A*&wt=json&indent=true" 
<html><head><title>Apache Tomcat/6.0.53 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 401 - Authentication required</h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u>Authentication required</u></p><p><b>description</b> <u>This request requires HTTP authentication.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/6.0.53</h3></body></html>

(可左右滑动)

2.解决办法


1.当对Solr服务启用了Kerberos后,Solr服务不像YARN或HDFS的界面可以选择是否对界面访问启用Kerberos认证,默认Solr Web UI即采用了Kerberos了认证。这时我们需要在我们的Windows客户端机器安装Kerberos客户端,并使用集群的用户在Windows下登录Kerberos,然后使用火狐浏览器做相应的配置才能正常访问浏览器。具体可参考Fayson之前的文章《Windows Kerberos客户端配置并访问CDH

2.配置好Windows客户端的Kerberos后,再次使用火狐浏览器打开Solr的Web UI,一切正常。

3.在后台通过命令行查询collection的时候,我们首先kinit一个账户,然后使用如下curl命令进行查询。

[root@cdh02 ~]# kinit fayson
Password for fayson@FAYSON.COM: 
[root@cdh02 ~]# curl --negotiate -u foo:bar "http://cdh04.fayson.com:8983/solr/data_shard1_replica1/query?q=*%3A*&wt=json&indent=true"

(可左右滑动)

注意:在Kerberos环境下,如果使用curl命令对Solr进行操作,--negotiate和-u这两个参数是必须的。对于参数-u的username和password不会真的校验,可以随便乱写,也可以为空只写冒号。但如果不带这个-u参数,会报401没有授权的错误。

curl --negotiate -u : "http://cdh04.fayson.com:8983/solr/data_shard1_replica1/query?q=*%3A*&wt=json&indent=true"

(可左右滑动)

参考:

https://www.cloudera.com/documentation/enterprise/latest/topics/search_using_kerberos.html

https://www.cloudera.com/documentation/enterprise/latest/topics/cdh_sg_browser_access_kerberos_protected_url.html

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

为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

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

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

原文发布于微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文发表时间:2018-06-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Hadoop实操

如何在Kerberos环境下使用Haproxy实现HiveServer2负载均衡

前面Fayson介绍了《如何使用HAProxy实现HiveServer2负载均衡》,本文主要介绍如何使用HAProxy实现Kerberos环境下HiveServ...

4693
来自专栏Hadoop实操

如何在CDH启用Kerberos的情况下安装及使用Sentry(一)

本文档主要讲述如何在启用Kerberos的CDH集群中安装配置及使用Sentry。

9206
来自专栏Hadoop实操

如何使用Lily HBase Indexer对HBase中的数据在Solr中建立索引

4793
来自专栏北京马哥教育

MySQL存储日志并使用Loganalyzer作为前端展示

为什么要使用日志 在生产环境中我们可能需要一个较为完整的日志系统来查看运行中主机服务的状态和所作出的操作,我们可以在较大型的网络架构中使用ELK来实现对日志的收...

3389
来自专栏乐沙弥的世界

MHA 清理relay log(purge_relay_logs)

    MySQL数据库主从复制在缺省情况下从库的relay logs会在SQL线程执行完毕后被自动删除,但是对于MHA场景下,对于某些滞后从库的恢复依赖于其他...

1460
来自专栏Hadoop实操

如何在Redhat7.3安装CDH5.14

Cloudera在2018年1月26日发布了CDH5.14,新功能介绍可以参考Fayson之前的文章《CDH5.14和CM5.14的新功能》。本文档主要描述如何...

2.1K8
来自专栏Hadoop实操

如何在Redhat7.4安装CDH5.15

7073
来自专栏Hadoop实操

如何在Kerberos与非Kerberos的CDH集群BDR不可用时复制数据

本文档描述了在Kerberos与非Kerberos的CDH集群之间BDR不可用的情况下实现数据互导。文档主要讲述

84211
来自专栏一名合格java开发的自我修养

sqoop关系型数据迁移原理以及map端内存为何不会爆掉窥探

  序:map客户端使用jdbc向数据库发送查询语句,将会拿到所有数据到map的客户端,安装jdbc的原理,数据全部缓存在内存中,但是内存没有出现爆掉情况,这是...

1072
来自专栏PPV课数据科学社区

【工具】大数据在线分析利器:Hue

? Hue百科: Hue 是一种基于Apche hadoop基础平台的在线开源数据分析接口,参见 gethue.com ? Hue的主要功能: 提供SQL 接...

4746

扫码关注云+社区

领取腾讯云代金券