![](https://img-blog.csdnimg.cn/a0ed3f8085114873b8b8478c5e9aaac1.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
大数据运维工作经验
记录自己的运维问题,在这里做一下总结,分享给所有人。也许有用,也许没用,这是一条成长的路。
可乐大数据
心中有光,所到之处皆是彩虹。
展开
-
HBASE集群主节点迁移割接手动操作步骤
HBASE集群主节点指的是包含zk、nn、HM和rm服务的节点,一般这类服务都是一起复用在同一批节点上,我把这一类节点统称为HBASE集群主节点。本文中使用了rsync、pssh等工具,这类是开源的,自己可以下载安装。还有一类是我自己写的环境变量,xcgraceful_stopRegionserver是用于优雅的停regionserver,建议使用脚本停,有时候可能会出现优雅的停失效的问题。dxshell和xcjpsuser是一些我放在环境变量里面,堡垒机全局生效,脚本内容会附在文章末尾。原创 2023-09-28 14:15:23 · 935 阅读 · 0 评论 -
MegaCli64检查磁盘矩阵坏道情况
Media Error Count: 0 Other Error Count: 0 这两个数值来确定阵列中磁盘是否有问题;Medai Error Count 表示磁盘可能错误,可能是磁盘有坏道,这个值不为0值得注意,数值越大,危险系数越高,Other Error Count 表示磁盘可能存在松动,可能需要重新再插入。原创 2023-09-22 09:56:50 · 412 阅读 · 0 评论 -
CDH 集群离线部署、大数据组件安装与扩容详细步骤(cdh-6.3.1)
CDH在实际集群部署中,需要先搭建cm-server服务,然后在各个节点部署cm-agent服务。难点全部在cm-server服务搭建阶段和cm-agent环境初始化。后面涉及到大数据组建的搭建全部是在CDH页面操作,大家可以多摸索摸索使用。原创 2023-09-13 08:55:46 · 1124 阅读 · 0 评论 -
清理buff/cache和swap空间释放
我这个操作没有生效,有人说0和>之间不要留空格就可以,我试过了,没卵用。不过也无所谓,下次服务器重启会自动置为0,不用刻意修改。此时发现free Mem是8g,Swap是9g,所以需要先释放buff/cache。#清理页面缓存和slab分配中的内存。此时检查再次检查swap是否全部为0。原创 2023-08-21 20:05:55 · 824 阅读 · 0 评论 -
如何在系统盘上格式化一部分空间单独挂载/metadata和/log
作为一名大数据SRE工程师,基本上很少涉及到服务器相关的挂盘操作,所以有问题都是找服务器的同事处理。可是最近服务器太忙,流程太慢,那我自己本身也有权限,那就自己干,丰衣足食。接下来进入正题。原创 2023-05-17 16:27:59 · 569 阅读 · 0 评论 -
kafka缩容后,使用tcpdump抓包找到还在连接的用户
获取向本节点9092端口发送数据的IP列表tcpdump dst port 9092 -i eth0 -c1000 |awk '{print $5}'|awk -F '.' '$1原创 2023-02-16 17:12:08 · 948 阅读 · 0 评论 -
万能的kill命令:ps -ef|grep Elasticsearch|grep -v grep|awk ‘{print $2}‘|xargs -r kill -9
如果需要匹配多个进程服务可是使用grep -E "Elasticsearch|NodeManager"原创 2023-01-05 10:55:50 · 1371 阅读 · 0 评论 -
Failed to connect to github.com port 443: Timed out
报错原因是因为我使用了VPN,大家都懂的。接下来看一下问题和解决方案2、检查本地git的所有配置3、设置http.proxy因为开启了VPN,是代理的问题,所以需要设置一下http.proxy。先要查看自己的VPN端口号,如我的http端口号是10809,在git bash命令行中输入以下命令即可4、再次检查本地git的所有配置5、常用的git配置查看命令问题处理方法见如下链接:【已解决】OpenSSL SSL_connect: Connection was转载 2022-12-07 17:23:50 · 3097 阅读 · 0 评论 -
hadoop2和hadoop3端口区别表
最新的hadoop 3版本端口和2版本在端口尚有所改动,之前没用3版本不知道,运维的过程中才发现有区别,今天做了一下整理,用于记录两者的区别。原创 2022-06-05 21:21:31 · 645 阅读 · 0 评论 -
kafka_2.11-1.1.1版本集群搭建手册
本文档仅适用于kafka_2.11-1.1.1版本和zookeeper-3.4.9版本的服务集群,不适用其他版本的安装。本文档搭建的Kafka集群结构为3个zookeeper + 2个controller + n个broker。所涉及zookeeper软件包均在链接: https://pan.baidu.com/s/1930nqCqKNadHRECT6VYvFg?pwd=2zv5 提取码: 2zv5 下,部署前请确认具体版本及环境。原创 2022-10-12 16:25:10 · 1403 阅读 · 0 评论 -
因为资源限制,导致namenode启动失败,报错unable to create new native thread
问题原因是在搭建hadoop集群之前,资源限制调整没有生效。所以建议大家在放宽资源限制之前,先删除/etc/security/limits.conf的相关设置,修改/etc/security/limits.d/90-nproc.conf,放宽最大进程数及最大文件句柄数限制。......原创 2022-07-22 15:07:46 · 887 阅读 · 0 评论 -
一个正确的ES集群重启流程(附串行重启脚本)
目录1、关闭集群自动均衡、禁止集群写入2、重启es集群3、打开集群自动均衡、开启集群写入4、补充一个串行重启es集群的shell脚本注释:本集群所有操作都在跳板机或者堡垒机进行,运维日常一般不需要我们登录具体的机器。...原创 2021-09-02 16:41:49 · 10168 阅读 · 1 评论 -
python批量删除文件中多余的空行
1、需要处理的文件poem1.txt (样例)# cat poem1.txt 010305102、执行python脚本delete_nullRow.py# cat delete_nullRow.py # coding = utf-8def clearBlankLine(): file1 = open('poem1.txt', 'r', encoding='utf-8') # 要去掉空行的文件 file2 = open('poem2.txt', 'w', en原创 2021-03-10 11:03:49 · 4349 阅读 · 2 评论 -
python如何备份保存重要文件?
工作两年半,最近因为工作需要开始学习些python脚本,这里是一个备份自己学习python代码的程序:脚本名称:backup.pyimport osimport time# 1. 需要备份的路径source = '/data00/python_test/2.10'# 2. 备份文件存放路径target_dir = '/data00/python_test/backup'# 3. 判断 target_dir 目录是否存在,不存在则创建目录if not os.path.exists(tar原创 2021-02-22 20:14:46 · 947 阅读 · 0 评论 -
菜鸟自学java(一)99乘法表
菜鸟自学java,第一次学习,也算是自己开始的第一步,留个纪念。public class table99 { public static void main(String[] args) { int sum=0; for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ sum=i*j; System.out.prin...原创 2019-12-04 19:59:18 · 122 阅读 · 0 评论 -
linux如何按行拆分与合并
1、将含有155个ip的文件切割按照10个ip一组进行切割$ split -l 10 -d list restart-list --verbose2、将切割后的文件合并为一个文件,包含所有ip$ for i in {00..15};do cat restart-list$i >> restart-list;done...原创 2022-04-22 09:27:45 · 1217 阅读 · 0 评论 -
HADOOP集群运维常用命令
作为一个大数据运维工程师,hadoop的命令每天都在用,今天借着培训的机会整理了一版常用命令。命令 命令作用解释 hdfs zkfc -formatZK 格式化zk,初始化ZK目录,只在集群新建时,在active namenode(nn1)节点执行 hadoop-daemon.sh start journalnode 启动journalnode服务 hadoop namenode -format 格式化namenode生成新集群id和元数据文件,只在集群新建时,在ac原创 2022-04-18 16:40:17 · 2898 阅读 · 0 评论 -
在windows克隆GitHub/GitLab远程项目,将本地代码推送到GitHub/GitLab远程仓库
目录1、右击 Git Bash Here,进入windows的git操作页面2、克隆GitLab远程项目到本地3、切换路径到克隆的项目下4、查看当前所有远程地址分支,默认在master分支下5、切换到dev_Br20220610分支下6、将代码打包到windows当前路线下7、在windows上提交代码,添加到暂存区8、添加日志信息,将代码提交到本地仓库9、推送本地分支上的内容到远程仓库............原创 2022-03-25 19:11:35 · 3801 阅读 · 0 评论 -
Linux如何查看一个文件最近被修改和访问的时间
有些文件可以被动过,所以我们需要对访问和修改时间进行检查。那就可以使用stat命令检查。查看文件最近的修改时间:# stat ES_config.py File: `ES_config.py' Size: 7359 Blocks: 16 IO Block: 4096 regular fileDevice: fd03h/64771d Inode: 131133 Links: 1Access: (0644/-rw-r--r--) Uid:原创 2022-03-08 14:31:15 · 2982 阅读 · 0 评论 -
JVM的gc过程
我们都知道当java的内存空间满了之后,JVM会提供一种垃圾回收机制(也就是GC)。JVM在内存溢出时会自动进行垃圾处理,也就是我们所理解的垃圾回收。而堆一般被分为了三部分,分别是新生代、年老代、持久带。新生代又被分为Eden、Survivor1、Survivor2。当一个对象被新建后,首先会被放入eden中(比较大对象的会直接放入年老代中),当eden被存满后会发生minor GC,此时eden会将内存中不用的空间清除掉,并把剩余的数据放入Survivor1中,当下一次eden被存满后,重复上次操作,e.原创 2022-01-27 16:13:29 · 947 阅读 · 0 评论 -
在跳板机批量清理一批集群的日志,保留近5天的日志
日志保存路径、预留保存日志时间,都是可以在脚本中指定的,按需修改使用。如果需要定时清理日志,可以将脚本在跳板机设置为定时任务使用。#/bin/bashworkdir=`pwd`#本脚本可以指定需要清理的ip列表,可以将ip列表放在文件中,传参给本脚本。if [[ $# -eq 1 ]]; then logIp=`cd ${workdir};cat $1`fi#需要删除日志的目录。logDir='/opt/logs'#默认保留5天,删除5天前的日志。logDay=5num=1sum原创 2022-01-26 11:18:23 · 2717 阅读 · 0 评论 -
在跳板机验证一批ip是否可以ping通
#!/bin/bash# Author : LJ# Date : 2022/1/25# Func : 批量查询一批机器是否可以ping通if [ $# -lt 1 ]then echo -e "\033[1;31m 参数不足,请重新执行... \033[0m" echo -e "\033[1;32m 此脚本传参使用方法:$0 第一个参数为待查询的ip列表文件名 \033[0m" exit ;fiworkdir=`pwd`list_ip=`cd ${workdir};cat .原创 2022-01-26 10:47:07 · 1832 阅读 · 0 评论 -
在跳板机验证一批ip是否可以ssh免密登录
#!/bin/bash# Author : LJ# Date : 2022/1/25# Func : 批量查询一批机器是否可以免密登陆if [ $# -lt 1 ]then echo -e "\033[1;31m 参数不足,请重新执行... \033[0m" echo -e "\033[1;32m 此脚本传参使用方法:$0 第一个参数为待查询的ip列表文件名 \033[0m" exit ;fiworkdir=`pwd`list_ip=`cd ${workdir};cat...原创 2022-01-26 10:45:04 · 2757 阅读 · 0 评论 -
CPU使用率100%如何定位分析?
按shft+p按照cpu占用进行排序,按shift+m按照内存占用进行排序原创 2022-01-07 18:09:43 · 1797 阅读 · 0 评论 -
记一次raid故障,导致hbase服务异常
问题描述:在收到I/O等待负载大于50%时,我们同等时间收到了业务和研发的通知,目前问题节点io问题对业务有影响。处理步骤如下:问题描述1:ping正常,ssh登陆在10秒以上,登陆节点明显卡顿处理方法:紧急停掉HRegionServer服务。再次检查io情况:发现iowait已经明显比较低,问题似乎已经解决。 iostat -x 1 10问题描述2:大概10min之后(粗略时间)iowait突然飙升问题再次出现,但是可以明显感觉到执行命令没有停HRegionServer服原创 2021-12-31 19:47:40 · 1082 阅读 · 0 评论 -
Linux部署安装jdk步骤
jdk安装因为很多linux系统在安装时选择了安装版本自带jdk,我们会因为自己的特殊需要而单独安装我们需要jdk版本,所以在单独安装jdk之前需要先卸载掉自带的jdk。List item检查并卸载自带的自带的java欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了原创 2021-09-02 16:43:04 · 225 阅读 · 0 评论 -
Linux如何查看swap被进程占用情况
for i in $(cd /proc;ls | grep "^[0-9]" | awk '$0>100'); do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps;done| sort -k2nr | head原创 2021-04-29 14:48:54 · 661 阅读 · 0 评论 -
删除hdfs非白名单坏块和恢复
删除hdfs非白名单坏块的办法:hdfs fsck -delete /tmp/logs/hbase/logs/application_1593277642355_0227/hadoop001_8043如果不小心用-rm删除了坏块的文件,需要在回收站中先恢复,在用fsck删除坏块:1、找到文件在回收站中的位置:$ hdfs dfs -ls /user/hdfs/.Trash/Current/tmp/logs/hbase/logs/application_1593277642355_02312、恢复坏原创 2021-04-28 09:32:46 · 493 阅读 · 0 评论 -
Linux tar配合split完成打包压缩、分割、合并、解压
script为目标打包压缩目录:打包压缩分割文件:tar -zcvf - script|split -b 50m - script.合并打包文件:cat script.a* >> script.tar.gz解压:tar zxvf script.tar.gz原创 2021-04-07 14:06:54 · 771 阅读 · 2 评论 -
shell脚本批量ping和ssh测试一批服务器ip是否可以连通
1、ping脚本# cat ping.sh #!/bin/bashfor i in `cat list`;do ping -c1 $i >/dev/null 2>&1 if [ $? -eq 0 ];then echo "$i:yes ping" else echo "$i:no ping" fidone2、list文件存放服务器ip# cat list10.原创 2021-03-16 16:22:35 · 1028 阅读 · 0 评论