首页 > 系统相关 >windows hbase连接工具 hbase连接数过多, yarn job HBase hdfs zookeper

windows hbase连接工具 hbase连接数过多, yarn job HBase hdfs zookeper

时间:2024-07-29 19:19:59浏览次数:6  
标签:hdfs 登录 windows region 复制 snapshot hbase

windows hbase连接工具 hbase连接数过多


##1. ZK连接过多
1) 查看ip连接数前十  

netstat -na | grep 2181 | awk '{print$5}' | awk -F : '{print$1}'| sort |uniq -c |sort -rn | head -n 10
  • 1.

##2.补数操作

hbase org.apache.hadoop.hbase.mapreduce.CopyTable -Dmapreduce.job.queuename=root.default -Dhbase.client.scanner.caching=5 -Dmapreduce.map.speculative=false --starttime=1624453200000  --endtime=1624539600000  --families=ilFamily --versions=1 --peer.adr=*.*.*.*:2182:/hbase pvs:interfacelog >>./log/pvs-interfacelog
  • 1.

注意:补数时候要观察目标集群的队列积压

杀任务:

yarn application -kill application_1583222603228_0255(此处为application_id)
  • 1.

##4.HBase表挪分组的影响

挪动分组会有一个region上下线的动作,会有短暂的影响,业务可能会有短暂的波动
  • 1.

##5.hbase 节点挂掉

1)GC -超时,原因是scan太多
  • 1.

##7.迁移表

1)首先控制源生产的队列
vim /app/hadoop/etc/hadoop/fair-scheduler.xml

60000 mb,10 vcores
300000 mb,50 vcores

查看端口namenode节点:23188

2)做快照

snapshot 'pis_waybill_staticroute_hot', 'snapshot_pis_waybill_staticroute_hot_20210702'

3)目标集群恢复快照:(目的集群生产+容灾)
hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -Dmapreduce.job.queuename=root.default -snapshot snapshot_pis_waybill_vehicle_destzone_20210702 -copy-to hdfs://...:8020/hbase -mappers 20 -bandwidth 80
hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -Dmapreduce.job.queuename=root.defalut -snapshot snapshot_pis_waybill_vehicle_destzone_20210702 -copy-to hdfs://...:8020/hbase -mappers 20 -bandwidth 80

4)将表先挪到指定分组
move_group_tables 'pis_press, ['fvp_core_fligt_original_info']

5)目的集群容灾生产
restore_snapshot 'snapshot_fvp_core_fligt_original_info_20200212'

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.

##8.hdfs数据均衡

su - hdfs
1)设置balancer带宽
hdfs dfsadmin -setBalancerBandwidth 400000000

2)启动balancer
将主机IP添加进host.txt

nohup hdfs balancer -policy datanode -threshold 5 -include -f host.txt > ./balancer_20210708.log 2>&1 &

threshold 5 :集群平衡的条件,datanode间磁盘使用率相差阀值,区间选择在0~100
-include -f
3)查看nohup任务
jobs

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

###手动离线方式迁移(一般修复不好,不建议使用)

1、从源hbase集群中复制出Hbase数据库表到本地目录
hbase fs -get src loc
2、目的Hbase导入
hbase fs -put loc des
3、修复.META.表
hbase hbck -fixMeta
4、重新分配数据到各RegionServer
hbase hbck -fixAssignments
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

1、从源hbase集群中复制出Hbase数据库表到本地目录
 

hbase fs -get src loc
  • 1.

2、目的Hbase导入

hbase fs -put loc des
  • 1.

3、修复.META.表

hbase hbck  -fixMeta
  • 1.

4、重新分配数据到各RegionServer

hbase hbck -fixAssignments
  • 1.

1、源集群hdfs拉取到本地

hdfs dfs -get hdfs://hbase-blue-print/hbase/data/default/discp_test /home/hbase
  • 1.

2、目的集群本地上传至hdfs

hdfs dfs -put /home/hbase/discp_test hdfs://hbase-blue-print-dr/hbase/data/default/discp_test
  • 1.

3、目的集群master节点,hbck修复

hbase hbck -fixMeta
hbase hbck -fixAssignments
如遇assign失败,hbase shell
move_group_tables 'default', 'discp_test'
  • 1.
  • 2.
  • 3.
  • 4.

### 查hbase数据条数

hbase org.apache.hadoop.hbase.mapreduce.RowCounter      '表名'
  • 1.

###不进入终端操作hbase

echo "disable 'EBIL2:TT_MULTICOLUMN_COMPRESSION_TEST_0628' " | hbase shell
  • 1.

###hdfs均衡:

设置balancer带宽
hdfs dfsadmin -setBalancerBandwidth 50000000
启动balancer
nohup hdfs balancer -policy datanode -threshold 5 -include -f host.txt > ./balancer_pis.log 2>&1 &
  • 1.
  • 2.
  • 3.
  • 4.

###删除hbase大表hbase shell需要添加的参数

@shell.hbase.configuration.get("hbase.rpc.timeout")
@shell.hbase.configuration.setInt("hbase.rpc.timeout", 6000000)
  • 1.
  • 2.

###hbase表重命名操作:

创建一个快照
hbase(main):024:0> snapshot '表名', '快照名'
克隆这个快照 赋给新的表名
hbase(main):025:0> clone_snapshot '快照名', '新表名'
  • 1.
  • 2.
  • 3.
  • 4.

###hbase老集群RIT排查问题

1. 确认RIT是否都在一台机器上面,若出现在同一台机器上面可以先停掉regionserver进程观察看看
2. 确认是否有大的region
登录集群任意一台切换hdfs用户,查看是否有大于20G的region
hdfs dfs -du -h /hbase/data/表名 |grep M|sort -nrk 1 |head -n 10
3.移动大region到空闲机器(空闲机器要在出问题的分组内)
move 'regionID','SERVERNAME(master页面看到的),eg:cnsz20pl6228,16020,1617240019531'

4.切分region (切完之后hdfs层可能没那么快展示大小,注意观察master日志)也可以先切分region
split 'regionID'

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

###同步队列积压排查思路

1.观察日志查出有问题的表
2.监控查看这个表近几天的请求对比,若波动明显可联系业务停写观察
  • 1.
  • 2.

###zk连接数打高排查:

1. zk节点查看zk连接数前20的IP
netstat -anp | grep 10.110.181.25:2181 | grep ESTABLISHED | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rnk 1 | head -n 20

2.登录前面几台任意几台机器,查和zk机器交互的任务
netstat -anp | grep 10.110.181.25:2181 | grep ESTABLISHED 拿到pid,ps出来任务id

3.拿到任务id之后停止任务

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

###删除比较大的表

1.先删除hdfs层数据
hdfs dfs -ls /hbase/data/命名空间/表名//列族/

hdfs dfs -rm -skipTrash /hbase/data/命名空间/表名//列族/

  • 1.
  • 2.
  • 3.
  • 4.

2. hbase shell 删除表

@shell.hbase.configuration.get("hbase.rpc.timeout")
@shell.hbase.configuration.setInt("hbase.rpc.timeout", 6000000)
drop '表名'
  • 1.
  • 2.
  • 3.

打印机架信息:

hdfs dfsadmin -printTopology
  • 1.

yarn增加队列在resourcemanager上面新增完之后,刷新队列命令:
yarn rmadmin -refreshQueues

解锁root密码:
salt -G 'ipv4:...' cmd.shell 'pam_tally2 -u root -r'

目录介绍:

/hbase/.hbase-snapshot
hbase若开启了 snapshot 功能之后,对某一个用户表建立一个 snapshot 之后,snapshot 都存储在该目录下
/hbase/.hbck
HBase 运维过程中偶尔会遇到元数据不一致的情况,这时候会用到提供的 hbck 工具去修复,修复过程中会使用该目录作为临时过度缓冲
/hbase/.tmp
当对表做创建或者删除操作的时候,会将表move 到该 tmp 目录下,然后再去做处理操作
/hbase/MasterProcWALs
含有一个HMaster主节点状态日志文件,记录操作日志
/hbase/WALs
被HLog实例管理的WAL文件
/hbase/oldWALs
当/hbase/WALs 中的HLog文件被持久化到存储文件中,不再需要日志文件时,它们会被移动到/hbase/oldWALs目录
/hbase/archive
存储表的归档和快照,HBase 在做 Split或者 compact 操作完成之后,会将 HFile 移到archive 目录中,然后将之前的 hfile 删除掉,该目录由 HMaster 上的一个定时任务定期去清理。
存储表的归档和快照具体目录:
/hbase/archive/data/default/表名/region名/列族名/fd2221d8d1ae4e579c21882f0ec4c5a5
/hbase/corrupt
损坏的日志文件,一般为空
/hbase/data
hbase存储数据的核心目录
/hbase/hbase.id
集群唯一ID
/hbase/hbase.version
集群版本号
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.

hbase zookeper最大处理时延过大    

重置计数
1、zk_max_latency过高,zk_avg_latency未明显增长,瞬时过大请求时延,重置计数
echo 'srst' | nc IP PORT 示例 :echo 'srst' |nc 10.110.105.73 2181
2、zk_max_latency,zk_avg_latency皆过高,查询网络连接,确认异常请求,停止该业务请求
  • 1.
  • 2.
  • 3.
  • 4.

单节点同步队列sizeoflogqueue积压    生产容灾数据同步异常    

视具体情况而定
1、确认未同步表,如无容灾表,则建立容灾表
2、确认生产容灾网络连通是否异常
3、查看积压的节点日志,查看积压原因,可能的原因有请求比较大,容灾性能不够,网络异常等,根据不同的异常,进行处理
日志路径:/log/hadoop/hadoop-hdfs-datanode-{hostname}.log
4、如果无明显异常,或短时间无法恢复的情况下,可以短时间停止同步 disable_table_replication 'table_name',关闭peer(不建议做此操作)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

#单节点TPS(RquestsPerSerond)过高,热点    部分请求变慢    均衡region分布/切分region并转移    

1、查看region分布
访问集群主页,查看同一rsgroup节点region分布情况
2、均衡region
若该节点regions num过多,balance该节点所属group,登录集群任一数据节点,进入hbase shell
hbase shell
balance_group '{groupname}'
否则转移热点region(同上)
3、切分region并转移
登录集群任一数据节点,进入hbase shell
hbase shell
split '{regionID}'
转移region至同一rsgroup其他节点
move '{regionID}','{serverName}'(此处region为切分产生的region)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.

原文链接:https://blog.51cto.com/u_16213610/9803473

标签:hdfs,登录,windows,region,复制,snapshot,hbase
From: https://www.cnblogs.com/sunny3158/p/18330838

相关文章

  • WPF 检测Windows用户会话状态:登录界面、非登录界面
    1主动获取Windows用户会话状态:登录界面、非登录界面,没有直接的Api接口,通过获取当前的前台窗台判断,条件:获取不到、UWP界面且窗体名字:windows窗体类名windows.ui.core.corewindow。 经过压测可靠usingSystem;usingSystem.Runtime.InteropServices;usingSystem.Text;......
  • change CR+LF(Windows) to LF(UNIX)
    可以使用VIM命令行,快速实现 例如:filetest.txttest.txt:ASCIItext,withCRLFlineterminators执行命令vim-c":w++ff=unix"-c"q"test.txtfiletest.txttest.txt:ASCIItext 来源:https://stackoverflow.com/questions/13522599/how-to-run-vim-c......
  • .net访问远程共享的Windows文件
    可以使用cmd连接创建Windows凭据publicstaticboolConnectPwd(stringIpAddress,stringuserName,stringpassword){ boolFlag=faslse; Processproc=newProcess(); try { proc.StartInfo.FileName="cmd.exe"; proc.StartInfo.UseShellExecute=false;......
  • Pentester Academy -Windows API Exploitation Recipes: Processes, Tokens and Memor
    早年为PentesterAcademy(https://www.pentesteracademy.com/),如今为INE(https://ine.com/)002安装VS社区版https://visualstudio.microsoft.com/zh-hans/003processlistingapi正在运行的是什么:服务,AV,HIDS/IPS等其他attack开始的点:进程注入,内存dump/修改,TokenSt......
  • windows编译ZLMediaKit流媒体服务webrtc
    环境说明ZLMediaKit编译需要的软件visualstudio 2022cmake 3.29.0-rc2OpenSSL 1.1.1w(不想踩坑的话安装这个版本)libsrtp 2.6.0ZLMediaKit编译后运行需要libsrtp 编译后且配置环境变量ZLMediaKit 编译后文件cmakevisualstuido20222,自带cmakecmake可以到这两个地方......
  • 从流读取时,PyAudio Stream 导致 Windows 堆损坏(-1073740940 (0xC0000374))
    我在尝试读取PyAudio的Stream时遇到了问题。它因退出代码而崩溃-1073740940这是一个Windows堆损坏错误0xC0000374它发生在我从PyAudio流读取的行中,如下所示:stream.read(chunk_size)我也看到它崩溃了-1073741819ACCESS_VIOLATION_......
  • Windows下捕获6GHz报文/无线抓包(WiFi6E网卡mt7921au)
    目录16GHz概述1.16GHz与WiFi6E1.26GHz国际使用情况1.36GHz中国使用情况1.46GHz信道一览表26GHz抓包操作2.1抓包网卡推荐2.2抓包软件使用2.2.1VMware虚拟机安装2.2.2WinSniffer程序使用2.2.3WireShark远程抓包2.3扫描软件推荐2.3.1Windows2.3.2WiFi......
  • 【全过程】windows GPU训练大模型的前期准备教程
    CUDA下载及安装下载显卡驱动点这里进入之后点画圈的地方,然后打开下载的文件,会帮你自动下载和安装适配你显卡的驱动程序(这里不是特别重要,就简单带过)点击桌面左下角小箭头,出现花圈的标志,也就是英伟达的logo,说明驱动安装成功安装CUDA接下来到了重头戏,cuda的安装查看本机......
  • Qt+OpenCascade开发笔记(二):windows开发环境搭建(二):Qt引入occ库,搭建基础工程模板Demo和发
    前言  OpenCASCADE是由OpenCascadeSAS公司开发和支持的开源软件开发平台,旨在为特定领域快速开发程序而设计。它是一个面向对象的C++类库,提供了丰富的几何造型、数据交换和可视化等功能,成为许多CAD软件的核心组件。  本篇描述搭建Qt开发occ环境过程。 Demo  ......
  • Windows环境变量,JAVA_HOME设置后,如何立即生效?建议重启电脑
    问:Windows环境变量,JAVA_HOME设置后,如何立即生效?建议重启电脑答:在Windows系统中,设置JAVA_HOME环境变量后,要使其立即生效,可以采取以下几种方法:1.通过命令提示符(cmd)修改PATH环境变量这种方法不需要重启计算机或资源管理器,但需要注意的是,它只会对当前打开的cmd窗口有效,一旦关闭该......