在centos上部署和使用hadoop分布式文件系统(hdfs)是大数据处理和分析中常见的任务。以下是一个详细的使用案例分享,涵盖了从环境准备到基本操作的各个方面。
环境准备
- 前期准备
- Hadoop的安装
- 从apache Hadoop官网下载适合的Hadoop版本。
- 将安装包解压到指定目录,例如 /usr/local/hadoop。
- 设置环境变量
- 修改 /etc/profile 文件,添加Hadoop的路径和库路径。
- 通过执行 source /etc/profile 命令使配置立即生效。
- 配置Hadoop配置文件
- core-site.xml:设置HDFS的默认文件系统和临时目录。
- hdfs-site.xml:配置HDFS的数据节点目录、副本数量等。
- mapred-site.xml:设置mapreduce框架。
- yarn-site.xml:配置YARN资源管理器。
- 格式化NameNode
- 在NameNode节点上运行 hdfs namenode -format 命令,初始化文件系统。
- 启动HDFS
- 使用以下命令启动HDFS集群:
<pre class="brush:php;toolbar:false">/opt/hadoop/sbin/start-dfs.sh
- 验证配置
- 使用 jps 命令检查进程,确认NameNode和DataNode是否在运行。
- 通过Web界面(通常是 https://www.php.cn/link/89c44761d7bafba48b64d0477dfb544e。
基本操作
- 将文件上传到HDFS
<pre class="brush:php;toolbar:false">hdfs dfs -put /usr/local/hadoop-2.8.5/NOTICE.txt /input/
- 从HDFS下载文件
<pre class="brush:php;toolbar:false">hdfs dfs -get /input/README.txt ./hdfs_backup.txt
- 删除文件或目录
<pre class="brush:php;toolbar:false">hdfs dfs -rm /input/README.txt hdfs dfs -rm -r /output
- 创建目录
<pre class="brush:php;toolbar:false">hdfs dfs -mkdir /output hdfs dfs -mkdir -p /output/abc/123
- 复制文件或目录
<pre class="brush:php;toolbar:false">hdfs dfs -cp /input/NOTICE.txt /input/NOTICE2.txt hdfs dfs -mv /input/NOTICE.txt /input/NOTICE3.txt
- 查看文件内容
<pre class="brush:php;toolbar:false">hdfs dfs -cat /input/NOTICE3.txt
高级配置与优化
- 高可用性(HA)配置
- 配置两个NameNode(一个活动,一个备用)以及至少三个JournalNode。
- 修改 hdfs-site.xml 文件,添加相关配置。
- 调整NameNode的内存配置。
- 提高DataNode的心跳并发处理能力。
- 启用HDFS回收站功能。
- 安全性
- 实施基于角色的访问控制(RBAC)和访问控制列表(ACLs)。
- 启用数据加密。
- 使用Kerberos等认证协议。
通过上述步骤,您可以在CentOS上成功搭建和配置HDFS,并进行基本操作以及高级配置与优化。根据具体需求和环境,选择最适合的配置策略。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END