(2)Hadoop

Hive:可以写SQL语句,充当数据仓库作用,完成批量数据处理。

Pig:针对流式数据,轻量级脚本语言。

Tez:将整个MapReduce作业构建成一个有向无环图,实现作业的优化。

ZooKeeper:分布式协调一致性。分布式锁一致性,集群管理等等。

FLume:针对流式数据的收集工作,日志收集工具。

Spark类似于MapReduce,但是Spark是基于内存计算的。

Sqoop:将传统的关系型数据库的数据导入/导出到Hadoop(HDFS,Hbase,Hive中)。

HBase: 非关系型分布式数据库,架构在HDFS之上。用来存储非结构化和半结构化的松散数据。HDFS顺序读写,Hbase支持随机读写以及实时应用。

MapReduce:Data Processing

Yarn:集群的资源管理,cluster resource management

SecondaryNameNode在小型集群中可以和NameNode共用一台机器,较大的群集可以采用与NameNode相同的硬件。(不同的机器)

对于一个小的集群,名称节点(NameNode)和JobTracker运行在单个节点上,通常是可以接受的。但是,随着集群和存储在HDFS中的文件数量的增加,名称节点需要更多的主存,这时,名称节点和JobTracker就需要运行在不同的节点上。

 

安装:

1.一般选择下载最新的稳定版本,即下载 “stable” 下的 hadoop-2.x.y.tar.gz 这个格式的文件,这是编译好的,另一个包含 src 的则是 Hadoop 源代码,需要进行编译才可使用。

2.我们使用的是 hadoop 用户,并且已创建相应的用户目录 /user/hadoop (与系统用户名相对应),因此在命令中就可以使用相对路径如 input,其对应的绝对路径就是 /user/hadoop/input。标注:这里两个hadoop对应的。

<think>好的,我现在需要处理用户提供的关于Hadoop目录权限的日志信息。首先,用户之前已经询问过关于HDFS数据目录权限的问题,并且得到了解决方案,现在他们展示了执行命令后的结果,可能需要确认权限是否正确修改,或者是否存在其他问题。 首先,我需要仔细查看用户提供的命令输出。用户首先以root身份在hadoop03节点上执行了chmod 755修改data目录权限,然后退出到hadoop用户,执行ls -ld,显示权限变为drwxr-xr-x,属主组都是hadoop,看起来正确。接着在hadoop02节点上,同样以root执行chmod 755,退出后检查显示权限同样正确,但需要注意的是hadoop03的data目录显示是2个子目录,而hadoop02显示的是3个,这可能涉及到目录结构的变化,或者是时间戳的不同。 接下来,我需要分析用户可能的问题是什么。用户可能是在确认权限修改是否成功,或者是否存在其他潜在问题。比如,虽然权限已经改为755,但Hadoop服务是否正常运行?或者是否存在其他节点也需要同样的修改? 另外,用户可能在多个节点上执行了权限修改,需要确认所有DataNode节点的data目录权限是否一致。用户提供的输出显示hadoop03hadoop02都修改成功,但需要检查是否还有其他节点需要处理。 此外,之前的回答中提到了父目录权限SELinux的问题,用户可能没有检查这些,导致即使data目录权限正确,Hadoop仍然出现问题。需要提醒用户检查父目录的权限,例如/home/hadoop/bigdatasoftware/hadooptmp/dfs的权限是否为755,以及SELinux是否启用。 还有可能用户遇到了修改权限后服务仍然无法启动的情况,需要进一步查看日志。或者用户在执行命令时是否有遗漏的步骤,比如没有停止Hadoop服务就直接修改权限,导致数据损坏或服务无法识别新的权限设置。 另外,注意到在hadoop03上,data目录的子目录数量是2,而hadoop02上是3,这可能正常,因为不同DataNode可能存储的数据块数量不同,但需要确认是否存在异常情况,比如某些节点未能正确初始化数据目录。 总结来说,用户可能需要确认以下几点: 1. 所有相关节点的data目录权限是否正确设置为755。 2. 父目录的权限是否也正确。 3. SELinux是否影响服务访问。 4. 修改权限后是否重启了Hadoop服务,并检查日志是否有错误。 5. 确认集群中所有DataNode节点的配置是否一致,避免因权限不一致导致的问题。 此外,用户可能希望了解后续的验证步骤,确保Hadoop集群正常运行,例如使用hdfs dfsadmin -report检查DataNode是否正常注册,以及测试文件上传下载是否成功。</think>--- ### **操作过程解析** 根据你提供的操作记录结果,整理如下: --- #### **步骤 1:在 hadoop03 节点修改权限** 1. **以 root 用户执行权限修改**: ```bash [root@hadoop03 dfs]# chmod 755 /home/hadoop/bigdatasoftware/hadooptmp/dfs/data [root@hadoop03 dfs]# exit ``` 2. **验证权限**(切换回 hadoop 用户): ```bash [hadoop@hadoop03 dfs]$ ls -ld /home/hadoop/bigdatasoftware/hadooptmp/dfs/data drwxr-xr-x. 2 hadoop hadoop 4096 10月 16 11:43 /home/hadoop/bigdatasoftware/hadooptmp/dfs/data ``` - **结果**:权限已成功修改为 **755**,子目录数为 **2**。 --- #### **步骤 2:在 hadoop02 节点修改权限** 1. **以 root 用户执行权限修改**: ```bash [root@hadoop02 data]# chmod 755 /home/hadoop/bigdatasoftware/hadooptmp/dfs/data [root@hadoop02 data]# exit ``` 2. **验证权限**(切换回 hadoop 用户): ```bash [hadoop@hadoop02 data]$ ls -ld /home/hadoop/bigdatasoftware/hadooptmp/dfs/data drwxr-xr-x. 3 hadoop hadoop 4096 10月 9 00:33 /home/hadoop/bigdatasoftware/hadooptmp/dfs/data ``` - **结果**:权限已成功修改为 **755**,子目录数为 **3**。 --- ### **关键分析** #### **1. 权限修复成功** - **目标权限**:`drwxr-xr-x`(755)已正确设置,确保: - **属主(hadoop)**:完全控制(读、写、执行)。 - **其他用户**:可读、可执行(避免 DataNode 进程因权限不足无法访问目录)。 --- #### **2. 子目录数量差异解释** - **hadoop03**:子目录数为 **2**(如 `current` `tmp`)。 - **hadoop02**:子目录数为 **3**(可能包含额外副本或临时文件)。 - **正常现象**: DataNode 会根据数据块存储需求动态生成子目录,数量差异通常由集群负载或副本分布导致,无需干预。 --- ### **后续验证建议** #### **1. 检查所有 DataNode 节点** 确保集群中 **所有 DataNode** 的 `dfs.data.dir` 目录权限均已调整为 **755**: ```bash # 示例:检查 hadoop04 节点 ssh hadoop04 "ls -ld /home/hadoop/bigdatasoftware/hadooptmp/dfs/data" ``` --- #### **2. 验证 Hadoop 服务状态** 1. **重启 Hadoop 服务**(若之前未停止服务直接修改权限,需重启生效): ```bash stop-dfs.sh && start-dfs.sh ``` 2. **检查 DataNode 注册状态**: ```bash hdfs dfsadmin -report ``` - **预期输出**:显示所有 DataNode 的容量状态为 `In Service`。 --- #### **3. 排查潜在问题** - **父目录权限**: 确认路径 `/home/hadoop/bigdatasoftware/hadooptmp/dfs` 的权限是否为 **755**: ```bash ls -ld /home/hadoop/bigdatasoftware/hadooptmp/dfs ``` - **修复命令**: ```bash chmod 755 /home/hadoop/bigdatasoftware/hadooptmp/dfs ``` - **SELinux 干扰**: 若系统启用 SELinux,检查上下文标签是否兼容: ```bash ls -Z /home/hadoop/bigdatasoftware/hadooptmp/dfs/data ``` - **临时解决方案**(生产环境谨慎使用): ```bash setenforce 0 # 临时禁用 SELinux ``` --- ### **总结** - **操作结果**:`hadoop02` `hadoop03` 节点的 HDFS 数据目录权限已修复为 **755**,满足 Hadoop 运行要求。 - **下一步**: 1. 检查其他 DataNode 节点权限一致性。 2. 重启 Hadoop 服务并验证集群健康状态。 3. 若仍有问题,结合 DataNode 日志(`$HADOOP_HOME/logs/*datanode*.log`)进一步排查。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值