千家信息网

Hadoop常用命令

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,网络配置hostname 查看珠玑名vim /etc/sysconfig/network 设置主机名ifconfig 查看ip情况vim /etc/sysconfig/network-scripts/
千家信息网最后更新 2025年01月24日Hadoop常用命令

网络配置

  • hostname 查看珠玑名

  • vim /etc/sysconfig/network 设置主机名

  • ifconfig 查看ip情况

  • vim /etc/sysconfig/network-scripts/ifcfg-eth0 设置网络

    • DEVICE="eth0" 接口名(设备、网卡)

    • BOOTPROTO=STATIC IP的配置方法(static:固定IP,dhcp:,none:手动)

    • ONBOOT=yes 系统启动的时候网络端口是否有效

    • IPADDR=192.168.1.2 IP网址

    • GATEWAY=192.168.1.0 网关

    • DNS1=8.8.8.8 DNS服务器

  • service network restart 重启网卡服务

  • service network start 开始网卡服务

  • service network stop 停止网卡服务

  • ifconfig eth0 up|down 启用和关闭制定的网卡

  • ifconfig 查看配置的ip信息是否生效

  • vim /etc/hosts 设置珠玑和ip映射关系

    • 192.168.1.2 master

    • 192.168.1.3 slave1

    • 192.168.1.4 slave2

  • ping master

  • service iptables stop 关闭防火墙

  • chkconfig iptables off 关闭自启动防火墙服务

配置SSH

  • rpm -qa | grep openssh 查看是否安装了ssh服务

  • rpm -qa | grep rsync 查看是否安装了rsync服务

  • yum install ssh 安装ssh协议

  • yum install rsync rsync是一个远程数据同步工具

  • service sshd restart 启动sshd服务

  • ssh-keygen -t rsa -p ' ' 生成无密码密钥对(存放路径是/home/Haddop/.ssh)

  • cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys 将id_rsa.pub追加到授权的key中

  • chmod 600 ~/.ssh/authorized_keys 授予读写权限

  • vim /etc/ssh/sshd_config 修改sshd服务的配置文件

RSAAuthentication yes # 启用 RSA 认证

PubkeyAuthentication yes # 启用公钥私钥配对认证方式

AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

  • service sshd restart 重启sshd服务,是修改生效

  • ssh master 严验证ssh登录(第一次会要求输入密码)

单点对多点的SSH无密码登录

  • ssh-keygen

  • ssh-copy-id storm@slave1 格式是"ssh-copy-id 用户名@主机名"

  • ssh-copy-id storm@slave2 将本机名的公钥复制到远程机器的authorized_keys文件

安装JDK

  1. root用户登录

  2. mkdir /usr/java 创建/usr/java目录

  3. cp /root/Downloads/jdk-6u31-linux-i584.bin /usr/java 复制

  4. chmod +x jdk-6u31-linux-i584.bin 赋予执行的权限

  5. ./jdk-6u31-linux-i584.bin 执行解压过的bin文件

  6. rm -rf jdk-6u31-linux-i584.bin 删除jdk安装文件

  7. vim /etc/profile

在尾部添加以下内容:

# set java environment

export JAVA_HOME=/usr/java/jdk1.6.0_31/

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

source /etc/profile 使profile的配置文件生效

java -version 验证jdk是否安装成功

安装剩余机器:

  • scp /usr/java/jdk1.6.0_31/ Hadoop@mster$i:/usr/java;

使用shell脚本安装:

for i in $(seq 1 100);

do echo slave$i;

scp /usr/javajdk1.6.0_31/ Hadoop@slave$i:/usr/java;

done

profile环境变量的配置文件要可以配置好后一次发送到所有集群中

Hadoop集群的安装

  1. 以root用户登录

  2. cp /root/Downloads/Hadoop-1.0.0.tar.gz /usr

  3. cd /usr

  4. tar -zxvf Hadoop-1.0.0.tar.gz 解压tar.gz的安装包

  5. mv Hadoop-1.0.0.tar.gz hadoop 文件夹重命名

  6. chown -R Hadoop:Hadoop Hadoop hadoop文件的属主重新分配,-R是递归,hadoop文件夹分配给hadoop组下的hadoop用户

  7. rm -rf Hadoop-1.0.0.tar.gz 删除安装文件

配置Hadoop的环境变量

  1. vim /etc/profile

    1. export HADOOP_HOME=/usr/Hadoop

    2. export PATH=$PATH:$HADOOP_HOME/bin

  2. source /etc/profile 使配置生效

配置hadoop

  1. 配置hadoop-env.sh(文件位于/usr/Hadoop/bin/conf)

    1. vim /usr/Hadoop/bin/conf/Hadoop-env.sh

    2. export JAVA_HOME=/usr/java/jdk1.6.0_31

  2. 配置core-site.xml文件

    1. mkdir /usr/Hadoop/tmp 创建文件夹tmp,用来保存hadoop临时数据

    2. vim /usr/Hadoop/bin/conf/core-site.xml

hadoop.tmp.dir

/usr/hadoop/tmp

备注:请先在 /usr/hadoop 目录下建立 tmp 文件夹,默认采用系统的临时目录:/tmp/Hadoop-hadoop。而这个目录每次重启都会被干掉,必须重新执行format才行,否则会出错。)

A base for other temporary directories.

fs.default.name

hdfs://192.168.1.2:9000

  1. 配置hdfs-site.xml ,默认备份方式是3

dfs.replication

1

(备注:replication 是数据副本数量,默认为3,salve少于3台就会报错)

  1. 配置mapred-site.xml

修改hadoop中mapreduce的配置文件,配置的jobTracker的地址和端口

mapred.job.tracker

http://192.168.1.2:9001

  1. 配置mster

修改/usr/Hadoop/conf/masters文件,指定master机器的主机名

vim /usr/Hadoop/conf/masters

192.168.1.2(或者是master)

  1. 配置slave

vim /usr/Hadoop/conf/slaves

slave1

slave2

注意:单机启动的时候,conf/slaves中一定不能为空。没有其他机器,就指定自己。

集群环境下,slave机器上可以不配置slaves

  1. 在集群中的其他机器上重复此配置

建议普通用户在hadoop下通过scp复制到其他机器对应的目录下,其中第6步是master机器特有的

使用shell脚本:

for i in $(seq1 100);

do echo slave$i;

scp /usr/hadoop Hadoop@slave$i:/usr;

scp /etc/profile Hadoop@slave$i:/etc;

done

复制文件后可能会发现hadoop目录是root权限

chown -R hadoop:Hadoop Hadoop 授权给hadoop用户

Hadoop启动相关命令:

  • Hadoop namenode -format 在master机器上格式化namenode

只需要执行一次,如果要重新执行,一定要先删除配置文件core-site.xml中配置

的hadoop.tmp.dir对应路径下的文件

  • service iptables stop 关闭集群中所有机器防火墙

for i in (seq 1 100);

Do ssh node $i "hostname;

service iptables stop;

chkconfig iptables off;

service iptables status";

done

  • start-all.sh 启动hadoop的所有服务,包含(hdfs和mapreduce的相关服务)

可以通过以下启动日志看出,首先启动namenode,接着启动datanode1,datanode2,......,然后启动secondarynamenode。再启动jobtracker,然后启动tasktracker1,tasktracker2,.........。

启动hadoop成功后,在master中的tmp文件夹中生成dfs文件夹,在slave中的tmp文件夹中均生成了dfs文件加和mapred文件夹

  • jps 查看进程

    • 在master上的结果是

      • jobTracker

      • NameNode

      • jps

      • SecondaryNameNode

    • 在slave上的结果是

      • TaskTracker

      • DataNode

      • jps

  • Hadoop dfsadmin -report 查看hadoop集群的状态

  • Hadoop dfsadmin -safemode leave 关闭hdfs的安全模式

http:192.168.1.2:50030 访问mapreduce对应网页

http:192.168.1.2:50070 访问hdfs的对应网页

服务器一直启动不了的终极解决办法:

  1. 删除集群中所有机器上的/usr/Hadoop/tmp文件

  2. 删除集群中所有机器上的pid文件。默认保存在/tmp目录下。授权给hadoop用户

  3. 重新执行stop-all.sh,把能关的服务先关掉

  4. 执行ps -ef|grep java|grep hadoop命令,查询是否还有hadoop相关进程在运行,如有则kill -9 进程号 命令杀掉

  5. 重新格式话珠玑master

  6. 执行start-all.sh启动hadoop

  7. 发现没有报错,执行Hadoop dfsadmin -report 命令查看hadoop运行状态,发现只启动了一个节点。可能还是存在安全模式

  8. 执行hadoop dfsadmin -safemode leave 关闭主机上的安全模式

  9. 再一次执行hadoop dfsadmin -report

解决"no datanode to stop "问题

原因:

每次namenode format 会重新创建一个namenodeId,而/tmp/dfs/data下包含了上次 format下的id,namenode format 清空了namenode下的数据,但是没有清空datanode下的数据,到时启动是失败,所有每次format前,清空tmp下的所有目录

  • 第一种方法:

删除master上的tmp文件夹 rm -fr /usr/Hadoop/tmp


文件 配置 服务 机器 文件夹 目录 集群 用户 数据 网卡 命令 主机 登录 安全 公钥 密码 权限 格式 模式 环境 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 博途opc服务器接口的作用 组织机构权限数据库设计 怎么查询游戏服务器是否到期 技校的计算机网络技术 吉林大学网络安全研究 网络安全防控工作立即整改 晋宁免费上门回收服务器 企业用的数据库 sp3D数据库维护 数匙网络技术(杭州)有限公司 中国统计局数据库什么时候能修好 那个数据库提供外文电子图书 工业企业网络安全工作总结 网络安全法四川 南京大型软件开发资费 网络安全产品市场推广计划 服务器进bios设置显卡 宁夏民主评议软件开发 聚焦网络技术有限公司招聘 安全数据库评测软件有哪些 湖南工业大学网络安全竞赛 福州讯晟软件开发公司 自学考试软件开发工具试题 求生之路怎么查看服务器的ip 湖南十大互联网科技大咖 互联网 智能科技 ceo 医疗单位网络安全2022 河南软件开发价钱是多少 南京团购电商软件开发 服务器硬件软件选型
0