hadoop开发常用linux命令整理(代码片段)

ZSYL ZSYL     2023-01-07     184

关键词:

  1. 更改文件夹所属用户:sudo chown zs:zs module/ software/
  2. 查看安装的Java版本:rpm -qa | grep -i java
  3. 删除已安装的Java:rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps
  4. 切换root用户:su root
  5. 修改主机IP:vim /etc/sysconfig/network-scripts/ifcfg-ens33
  6. 修改主机名称:vim /etc/hostname
  7. 查看主机名称:hostname
  8. 查看IP地址:ifconfig
  9. 解压jdk-指定目录:tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/
  10. 返回上层目录:cd ..
  11. 修改环境变量:sudo vim /etc/profile
  12. 创建新的环境变量:cd /etc/profile.d -> sudo vim my_env.sh
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
  1. 重新生效配置文件:source /etc/profile
  2. 查看数据:cat
  3. hadoop统计词频:bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount wcinput/ ./wcoutput
/mapreduce/hadoop-mapreduce-examples-3.1.3.jar:使用mapreduce下的jar包-hadoop-mapreduce-examples-3.1.3.jar
wordcount:使用wordcount方法
wcinput/:数据来源输入路径
./wcoutput:输出路径不能存在)
  1. 集群数据传输:scp -r jdk1.8.0_212/ zs@hadoop103:/opt/module/
  2. 集群中间件互传:scp -r zs@hadoop104:/opt/module/* zs@hadoop102:/opt/module/(站在103从104传输文件到102)

第一次同步使用scp,之后同步差异文件使用rsync

  1. 集群群发脚本:xsync a.txt
  2. 显示环境变量:echo $PATH
  3. 提升文件的权限:chmod 777 xsync
  4. 集群分发文件:xync bin/
  5. 分发环境变量:xsync /etc/profile.d/my_env.sh
  6. 查看所有的隐藏文件:ls -al
  7. SSH免密登录:ssh-keygen -t rsa(生成密钥-私钥公钥)
[zs@hadoop102 .ssh]$ ll
total 12
-rw-------. 1 zs zs 1679 Sep  4 13:38 id_rsa
-rw-r--r--. 1 zs zs  394 Sep  4 13:38 id_rsa.pub
-rw-r--r--. 1 zs zs  186 Sep  4 13:35 known_hosts

拷贝公钥至指定服务器:ssh-copy-id hadoop103

  1. 格式化namenode: hdfs namenode -format
  2. 启动hadoop:
    [zs@hadoop102 hadoop-3.1.3]$ cd sbin/ [zs@hadoop102 sbin]$ start-dfs.sh
  3. 显示当前运行的节点:jps
  4. 启动资源管理器ResourceManager(hadoop103):
    [zs@hadoop103 hadoop-3.1.3]$ cd sbin/ [zs@hadoop103 sbin]$ start-yarn.sh
  5. 创建文件夹:hadoop fs -mkdir /wcinput
  6. 上传文件:hadoop fs -put wcinput/word.txt /wcinput
  7. 重定向:cat blk_1073741826 >> tmp.tar.gz
  8. 解压:tar -zxvf tmp.tar.gz
  9. 删除:rm -rf jdk1.8.0_212/ tem.tar.gz
  10. Yarn:是资源的调度者
  11. 上传的Yarn:hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /wcinput /wcoutput
  12. 杀死集群进程:kill -9 6228
  13. 停止集群:sbin/stop-dfs.sh
  14. 集群分发文件:xsync mapred-site.xml
  15. 启动历史服务器:mapred --daemon start historyserver
  16. 停止历史服务器:mapred --daemon stop historyserver
  17. Yarn终止:sbin/stop-yarn.sh
  18. Yarn开启: sbin/start-yarn.sh
  19. 启动namenode:hdfs --daemon start datanode
  20. yarn启动nodemanager:yarn --daemon start nodemanager
  21. 查看外网时间:systemctl status ntpd
  22. 开启外网:systemctl start ntpd
  23. 查看时间:date
  24. 停止更新时间:sudo systemctl stop ntpd
  25. 设置时间:sudo date -s "2022-01-29 11:11:11"

集群崩溃处理办法

  1. 杀死进程(停止集群)
sbin/stop-dfs.sh
  1. 删除每个集群上的data/logs
rm -rf data/ logs/
  1. 格式化namenode节点
hdfs namenode -format
  1. 启动集群
sbin/start-dfs.sh

HDFS_Shell命令

  • hadoop fs or hdfs dfs两个完全一样
  • 启动Hadoop集群:
sbin/start-dfs.sh 
sbin/start-yarn.sh 
  • 查看某一命令的帮助:hadoop fs -help rm

  • 创建文件夹:hadoop fs -mkdir /sanguo

  • 上传到HDFS:

hadoop fs -moveFromLocal ./shuguo.txt /sanguo
hadoop fs -copyFromLocal weiguo.txt /sanguo
hadoop fs -put wuguo.txt  /sanguo
  • 追加数据至文末
hadoop fs -appendToFile liubei.txt /sanguo/shuguo.txt
  • 下载文件
 hadoop fs -copyToLocal /sanguo/shuguo.txt ./
 hadoop fs -get /sanguo/shuguo.txt ./shuguo2.txt
  • 修改文件所属用户
hadoop fs -chown zs:zs /sanguo/shuguo.txt
  • 拷贝文件
hadoop fs -cp /sanguo/shuguo.txt /jinguo
  • 剪切文件
hadoop fs -mv /sanguo/weiguo.txt /jinguo
  • 查看文末1kb数据
hadoop fs -tail /jinguo/shuguo.txt
  • 删除数据
hadoop fs -rm /sanguo/shuguo.txt
hadoop fs -rm -r /sanguo
  • 显示文件夹详细信息
hadoop fs -du -s -h /jinguo
hadoop fs -du -h /jinguo
13  39  /jinguo/shuguo.txt
7   21  /jinguo/weiguo.txt
6   18  /jinguo/wuguo.txt
  • 设置副本
hadoop fs -setrep 10 /jinguo/shuguo.txt

最多设置副本与集群多少有关,若超过则记录,等集群扩充后,会自动拷贝副本,具体存在哪个服务器,根据距离最近原则分配。

  • hadoop-3.1.3/data/dfs/name/current:存放fsimage/edits数据信息
  • 下载文件到Windows本地:sz edits.xml

Maven

  • Junit:单元测试
  • org.slf4j:打印日志,控制日志级别

Shuffle机制

  • 进入缓冲区后,默认快速排序,按照key值索引字典排序

Hadoop压缩

  • hadoop checknative:查看支持的压缩方式
  • hdfs dfsadmin -report:显示集群运行信息

Hadoop生产调优手册

  • 删除:hadoop fs -rm /a.txt
  • 查看堆内存:jmap -heap 进程id
  • 100Mbps单位是bit;100M/s单位是byte;100Mbps/8=12.5M/s
  • sbin/stop-yarn.sh
  • 删除data下的lo:rm -rf data/ lo
  • 启动集群:sbin/start-dfs.sh
  • 查看版本:cat version
  • 集群分发:xsync hdfs-site.xml
  • 在hadoop安装目录下上传文件:hadoop fs -put libei.txt /

配置白名单

cd etc/hadoop
vim whitelist
放入hadoop102 hadoop103
# 创建黑名单
touch blacklist
vim hdfs-site.xml
添加配置信息
# 分发
xsync whitelist blacklist

第一次添加白名单必须重启集群,不是第一次,只需要刷新NameNode节点即可。

ResourceManager是集群的老大

服役新服务器

  • 添加新的节点,修改网络配置:vim /etc/sysconfig/network-scripts/ifcfg-ens33

修改IPADDR=192.168.10.105
修改主机名称:vim /etc/hostname

  • ifconfig``hostname
  • 拷贝文件:scp -r module/* zs@hadoop105:/opt/module/
  • 拷贝环境变量:sudo scp /etc/profile.d/my_env.sh root@hadoop105:/etc/profile.d/
  • 在hadoop105中source /etc/profile,打印java看是否成功
  • 在hadoop102中
cd .ssh/
ssh-copy-id hadoop105 
  • 在hadoop103中
cd .ssh/
ssh-copy-id hadoop105 
  • 在hadoop105中进入hadoop安装路径,必须删除logs文件
rm -rf data/ logs/

启动datanode:

hdfs --daemon start datanode
yarn --daemon start nodemanager

在web端并未显示hadoop105,则需要修改白名单,分发,之后在hadoop102刷新:

hdfs dfsadmin -refreshNodes
  • 在hadoop105上,上传文件测试:
hadoop fs -put wc.jar /

服务器间数据均衡

执行命令:sbin/start-balancer.sh -threshold 10,10代表的是集群中各个节点的磁盘空间利用率相差不超过10%。

黑名单退役服务器

在hadoop102中

vim balcklist
添加hadoop105

分发:

xsync blacklist

hadoop105上也需要处理:

cd etc/hadoop
vim blacklist
  • 进行刷新操作
cd sbin
hdfs dfsadmin -refreshNodes

Decommissioned

在hadoop105中停掉节点

cd etc/hadoop
hdfs -daemon stop datanode
yarn --daemon stop nodemanager

修改jpsall脚本:

vim jpsall
cd etc/hadoop
vim workers
xsync workers
rm -rf data/ logs/

格式化:

hdfs namenode -format

纠删码

  • 查看命令:hdfs ec

删除命令:

rm -rf data/ logs/

Hadoop源码分析的章节,我跳过了大概2个小时的课程,整体感觉只是了解,学的并不好。9月这么快过完了,这个月就学一丁点东西,需要反思 消化 吸收。

加油!

感谢!

努力!

hadoop高可用ha开发常用linux命令(代码片段)

HA开发常用Linux命令手动故障转移配置手动故障转移配置在module文件夹下,新建HA目录:mkdirHA拷贝hadoop文件夹到HA中:cp-rhadoop-2.7.2/HA/删除配置data/logs/rm-rfdata/logs/启动hadoopsbin/hadoop-daemon.shstartjournalnode-hadoop102.out 查看详情

linux常用命令整理(代码片段)

Linux常用命令整理防火墙查看防火墙状态临时关闭防火墙永久关闭防火墙centos7设置静态ip设置hostname查看当前的hostname修改hostname在windows做主机名和ip地址的绑定Linux中比较重要的几个目录/etc/bin,/sbin,/usr/bin,/usr/sbin/varipaddr命令介绍... 查看详情

zookeeper常用linux命令整理(代码片段)

【Zookeeper】常用Linux命令整理本地模式安装Zookeeper配置参数解读Zookeeper分布式安装创建服务器编号配置zoo.cfg文件创建节点删除节点查看节点状态本地模式安装启动服务端:bin/zkServer.shstart查看状态:bin/zkServer.shstatus启动客... 查看详情

zookeeper常用linux命令整理(代码片段)

【Zookeeper】常用Linux命令整理本地模式安装Zookeeper配置参数解读Zookeeper分布式安装创建服务器编号配置zoo.cfg文件创建节点删除节点查看节点状态本地模式安装启动服务端:bin/zkServer.shstart查看状态:bin/zkServer.shstatus启动客... 查看详情

hdfs常用命令整理(代码片段)

简介:HDFS文件系统提供了相当多的shell操作命令,大大方便了程序员和系统管理人员查看、修改HDFS上的文件。进一步,HDFS的操作命令和Unix/Linux的命令名称和格式相当一致,因而学习HDFS命令的成本也大为缩小。1.命令帮助[[email&#... 查看详情

十万字整理linux常用命令,超详细(代码片段)

1文件管理1.1basename1.1.1功能说明从文件名中去掉路径和扩展名例:basenameinclude/stdio.h.hOutput“stdio”.1.1.2选项–help显示此帮助信息并离开–version显示版本信息并离开1.2cat1.2.1功能说明把档案串连接后传到基本输出(屏幕或... 查看详情

系统运维系列之linux系统下常用查找命令整理(代码片段)

1前言网上关于linux命令大多写的很细很全,但是真正使用起来需要根据自己的场景进行拼接,本博客建立在实际场景下,在实际问题中使用linux查找命令。2grep命令使用场景:查找日志中的关键词,并且限定时... 查看详情

linux常用开发命令(代码片段)

文章目录Linux常用开发命令查看文件内容的某几行cat专项读取标准输入的数据,并将其内容输出成文件性能分析工具Top软件管理命令进程管理IO重定向查看文件大小和文件夹大小查找grep从一个输出或文件中查找指定内容别名... 查看详情

linux开发常用命令(代码片段)

Linux操作1常用的命令1.1杂项history查看执行过的历史命令命令太长,需要在命令后使用回车,让·命令不执行,输入\\所有没有权限的都可以使用前置命令sudoctrl+C结束进程tab自动代码补全linux命令格式命令名称[命令... 查看详情

linux笔记:一网打尽常用命令(代码片段)

在小企业的日常工作中,可能安装服务器也是后端开发的活,对于刚入门linux的小伙伴们来说,真心比较困难,楼主在这里整理在日常环境中常用的linux命令,掌握以下命令一般的安装中间件和发布项目就应该... 查看详情

linux笔记:一网打尽常用命令(代码片段)

在小企业的日常工作中,可能安装服务器也是后端开发的活,对于刚入门linux的小伙伴们来说,真心比较困难,楼主在这里整理在日常环境中常用的linux命令,掌握以下命令一般的安装中间件和发布项目就应该... 查看详情

hadoop中hdfs的shell操作(开发重点)启动hadoop集群基本语法常用命令实操命令大全-help-mkdir-movefromlocal-copyfromlocal(代码片段)

...本语法6.2命令大全6.3常用命令实操6.3.1准备工作6.3.1.1启动Hadoop集群(方便后续的测试)6.3.1.2-help:输出这个命令参数6.3.1.3创建/sanguo文件夹6.3.2上传6.3.2.1-moveFromLocal:从本地剪切粘贴 查看详情

linux开发基础知识shell语法整理(代码片段)

文章目录shell常用语法整理shell变量自定义变量系统变量环境变量流程控制ifforwhilecaseselectshell函数字符字符串变量的创建拼接字符串提取子字符串运算符关系运算符字符串运算符文件测试运算符数组定义数组赋值数组使用数组获... 查看详情

linux开发基础知识shell语法整理(代码片段)

文章目录shell常用语法整理shell变量自定义变量系统变量环境变量流程控制ifforwhilecaseselectshell函数字符字符串变量的创建拼接字符串提取子字符串运算符关系运算符字符串运算符文件测试运算符数组定义数组赋值数组使用数组获... 查看详情

hadoop开发重点hdfs的shell操作(代码片段)

HDFS的Shell操作1.基本语法2.命令大全3.常用命令实操3.1准备工作3.2上传3.3下载3.4HDFS直接操作1.基本语法hadoopfs具体命令ORhdfsdfs具体命令2.命令大全[zs@hadoop102hadoop-3.1.3]$bin/hadoopfs[-appendToFile<localsrc>...<dst>][-cat[-ignoreCr 查看详情

linux常用操作命令(代码片段)

...且它是黑客、渗透人员、运维人员等必会的。整理的Linux常用操作命令将会能够让你基础操作它。快捷键1、打开终端ctrl+alt+t2、推出鼠标ctrl+comm 查看详情

学习笔记hadoop——hadoop基础操作(代码片段)

文章目录一、Hadoop安全模式1.1、HDFS启动日志分析1.2、Safemode进入方式二、Hadoop集群基本信息三、HDFS常用Shell操作3.1、HDFS文件系统3.2、常用Shell命令-appendToFile3.3、常用Shell命令-cat3.4、常用Shell命令-copyFromLocal|put3.5、常用Shell命令-cp3... 查看详情

[linux嵌入式开发]linux常用命令

文章目录Linux常用命令整理(一)文件类(二)磁盘类(三)网络类(四)用户管理(五)进程管理(六)查找类(七)系统类(八)压缩类(九)其他Linux常用命令整理&... 查看详情