云服务器docker中Hbase整合java-api需要放行的接口

在使用 Docker 部署 HBase 并通过 Java API 进行访问时,确保通信畅通非常重要。如果 HBase 部署在云服务器或虚拟机中,你需要在云服务器的安全组中放行一些关键端口,确保外部或本地的 Java 应用可以正确访问 Docker 容器中的 HBase 服务。

1. HBase Master 端口

  • 默认端口:16000
  • 作用:HBase Master 管理端口,管理整个 HBase 集群,包括元数据、区域分配等。这个端口可能不直接对外暴露,但在某些管理操作或客户端与 Master 通信时可能需要开放。

2. HBase Master Web UI 端口

  • 默认端口:16010
  • 作用:提供 HBase Master 的 Web 管理界面,通过浏览器访问 HBase 集群的状态、日志、监控信息等。可选放行,仅当你需要通过 Web 访问 UI 时放行。

3. HBase RegionServer 端口

  • 默认端口:16020
  • 作用:这是 HBase RegionServer 的主要通信端口,RegionServer 负责管理 HBase 表中的数据区域(Region)。通过 Java API 进行读写操作时,Java 客户端会通过该端口与 HBase 的 RegionServer 通信,因此必须放行此端口。

4. HBase RegionServer Web UI 端口

  • 默认端口:16030
  • 作用:提供 RegionServer 的 Web 管理界面,通过浏览器查看单个 RegionServer 的状态和性能信息。这个端口一般用于管理和监控,如果不需要 Web UI,可以不用放行。

5. Zookeeper 客户端端口

  • 默认端口:2181
  • 作用 :Zookeeper 是 HBase 的核心协调服务,负责元数据管理和节点的协调。Java 客户端通过 Zookeeper 获取 HBase 集群的位置信息,因此必须放行 Zookeeper 的客户端端口 2181

6. HBase Thrift 端口

  • 默认端口:9090
  • 作用:如果你通过 Thrift 服务访问 HBase,那么需要开放 Thrift 端口。Thrift 提供了跨语言的访问接口(非 Java 客户端)。如果你只使用 Java API,不需要 Thrift,可以不用放行此端口。

7. HBase REST 端口

  • 默认端口:8080
  • 作用:HBase 提供的 REST API 端口,允许通过 HTTP 进行访问。如果不使用 REST API,可以不放行此端口。

8. Hadoop HDFS 相关端口

HBase 通常运行在 Hadoop HDFS 上,因此,如果你的 HBase 集群依赖 HDFS 存储,那么你还需要确保以下 Hadoop 端口开放:

  • NameNode RPC 端口 :默认 8020
  • NameNode Web UI 端口 :默认 50070
  • DataNode 通信端口 :默认 50010
  • SecondaryNameNode Web UI 端口 :默认 50090

9. Docker 容器与外部网络通信

当 HBase 部署在 Docker 容器中时,你需要将上述端口通过 Docker 映射到宿主机。例如:

复制代码

bash

复制代码

docker run -d --name hbase-container \ -p 16000:16000 -p 16010:16010 \ -p 16020:16020 -p 16030:16030 \ -p 2181:2181 \ hbase:latest

通过这种方式,Docker 内的 HBase 服务会通过宿主机的相应端口对外提供服务。

推荐开放的必要端口

如果你通过 Java API 进行访问,通常只需要放行以下关键端口:

  • 2181(Zookeeper 客户端端口)
  • 16020(HBase RegionServer 通信端口)

其他端口(如 Web UI、Thrift、REST 端口)可根据你的实际需求放行。

总结

在云服务器的安全组中,最小化的端口放行配置应该包含:

  1. 16020:HBase RegionServer 通信端口(Java API 访问 HBase 的必需端口)。
  2. 2181:Zookeeper 客户端端口(HBase 集群元数据管理)。

根据需求,其他端口(如管理 Web UI、Thrift、REST)可以按需放行。

相关推荐
LIKEYYLL13 分钟前
GNU Octave:特性、使用案例、工具箱、环境与界面
服务器·gnu
云云3211 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云3211 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
玖疯子1 小时前
介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
docker
暴富的Tdy1 小时前
【快速上手Docker 简单配置方法】
docker·容器·eureka
CircleMouse1 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
Karoku0662 小时前
【k8s集群应用】kubeadm1.20高可用部署(3master)
运维·docker·云原生·容器·kubernetes
木子Linux2 小时前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
不惑_2 小时前
小白入门 · 腾讯云轻量服务器部署 Hadoop 3.3.6
服务器·hadoop·腾讯云
阿甘知识库3 小时前
宝塔面板跨服务器数据同步教程:双机备份零停机
android·运维·服务器·备份·同步·宝塔面板·建站