默认 HBase 安装为主服务器和区域服务器的 Web UI 使用不安全的 HTTP 连接。要改为启用安全 HTTP(HTTPS)连接,请在 hbase-site.xml 中将hbase.ssl.enabled设置为true。这不会更改 Web UI 使用的端口。要更改给定 HBase 组件的 Web UI 端口,请在 hbase-site.xml 中配置该端口的设置。这些设置是:

  • hbase.master.info.port

  • hbase.regionserver.info.port

如果启用 HTTPS,则客户端应避免使用非安全 HTTP 连接。

如果启用安全 HTTP,客户端应使用https:// URL 连接到 HBase。使用http:// URL 的客户端将收到200的 HTTP 响应,但不会接收任何数据。记录以下异常:

javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection? 

这是因为相同的端口用于 HTTP 和 HTTPS。

HBase 将 Jetty 用于 Web UI。如果不修改 Jetty 本身,似乎不可能将 Jetty 配置为在同一主机上将一个端口重定向到另一个端口。有关更多信息,请参阅 Nick Dimiduk 对此 Stack Overflow 线程的贡献。如果您知道如何在不打开 HTTPS 的第二个端口的情况下解决这个问题,那么补丁将受到赞赏