如何在docker上面使用hbase shell

在新公司上班,hbase是cdh6.3.2安装在docker上面,如何直接在shell上面使用hbase shell是访问不到的。使用教程如下:

要在Docker上使用CDH 6.3.2中的HBase shell,你需要按照以下步骤操作:

步骤1:启动HBase服务

  1. 确保你的Docker环境已经启动,并且CDH 6.3.2的HBase服务已经随着CDH的安装被正确配置和启动。这通常通过Cloudera Manager完成,它提供了一个用户界面来管理CDH集群中的所有服务。
  2. 如果HBase服务尚未启动,你可以使用Cloudera Manager启动HBase Master和HBase RegionServer服务。

步骤2:进入HBase Shell

  1. 确定HBase服务运行正常后,使用Docker exec命令进入到运行HBase的容器中:docker exec -it <container_name_or_id> /bin/bash请将<container_name_or_id>替换为实际的容器名称或ID。
  2. 在容器内部,你可以使用HBase shell命令来启动HBase的交互式命令行界面:hbase shell

步骤3:使用HBase Shell命令

在HBase shell中,你可以执行多种操作,例如:

  • 创建表create 'table_name', 'column_family'
  • 列出表list
  • 插入数据put 'table_name', 'row_id', 'column_family:column', 'value'
  • 获取数据get 'table_name', 'row_id'
  • 扫描表scan 'table_name'
  • 禁用表disable 'table_name'
  • 启用表enable 'table_name'
  • 删除表drop 'table_name'

示例:在HBase shell中创建表并插入数据

  1. 启动HBase shell。
  2. 创建一个名为my_table的表,使用名为cf的列族:create 'my_table', 'cf'
  3. my_table表中插入一行数据,行键为row1,列族为cf,列名为data,值为my_valueput 'my_table', 'row1', 'cf:data', 'my_value'
  4. 扫描my_table表以查看数据:scan 'my_table'
  5. 退出HBase shell:exit

注意事项:

  • 请确保你有权限访问Docker容器以及HBase服务。
  • 根据你的CDH版本和配置,某些命令和文件路径可能略有不同。
  • 确保在操作过程中遵循安全最佳实践,如使用安全的密码和权限。

在上面步骤2如果不知道HBase的

container_name_or_id ,可以用下面的方法:

要查看 Docker 容器的 ID 或名称,您可以使用以下命令:

复制代码
docker ps 

这将显示当前正在运行的 Docker 容器列表,包括容器的 ID、名称、状态等信息。您可以在列表中找到正在运行的 HBase 容器的 ID 或名称。

如果您有多个容器在运行,并且需要筛选特定的容器,您可以使用 grep 命令来过滤结果,例如:

复制代码
docker ps | grep hbase 

这将仅显示包含 "hbase" 字符串的容器信息,以帮助您找到 HBase 容器的 ID 或名称。实际上关键字可能是cdh

一旦找到了容器的 ID 或名称,您可以将其替换到 <container_id_or_name> 的位置,并继续执行进入容器的命令。

相关推荐
小p12 小时前
docker学习: 2. 构建镜像Dockerfile
docker
小p1 天前
docker学习: 1. docker基本使用
docker
崔小汤呀1 天前
Docker部署Nacos
docker·容器
缓解AI焦虑1 天前
Docker + K8s 部署大模型推理服务:资源划分与多实例调度
docker·容器
1candobetter2 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
シ風箏2 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
BugShare2 天前
继《小爱音响》详细说下怎么部署,尤其是关于Docker部分
docker·nas·xiaomusic
至此流年莫相忘2 天前
Kubernetes实战篇之配置与存储
云原生·容器·kubernetes
小马爱打代码2 天前
Docker:完全指南从入门到精通
运维·docker·容器