# Hadoop集群怎么构建 ## 一、Hadoop集群概述 Hadoop是一个由Apache基金会开发的分布式系统基础架构,其核心设计包括: - HDFS(分布式文件系统) - MapReduce(分布式计算框架) - YARN(资源调度系统) 典型的生产环境集群包含三类节点: 1. **主节点(Master)**:运行NameNode、ResourceManager等关键服务 2. **从节点(Slave)**:运行DataNode、NodeManager等工作者服务 3. **客户端节点**:提交作业和访问集群 ## 二、前期准备 ### 1. 硬件要求 | 节点类型 | 建议配置 | |---------|---------| | Master | 16核CPU/32GB内存/1TB存储 | | Slave | 8核CPU/16GB内存/10TB存储 | | Client | 4核CPU/8GB内存即可 | ### 2. 软件环境 - 操作系统:CentOS 7/8或Ubuntu 18.04+ - Java版本:JDK 8(必须Oracle或OpenJDK) - SSH无密码登录配置 - 网络要求: - 节点间千兆网络连接 - 关闭所有防火墙或开放必要端口(50070, 8088等) ## 三、详细构建步骤 ### 1. 系统基础配置 ```bash # 所有节点执行 sudo hostnamectl set-hostname master # 分别设置hostname echo "192.168.1.10 master" >> /etc/hosts echo "192.168.1.11 slave1" >> /etc/hosts echo "192.168.1.12 slave2" >> /etc/hosts # 配置SSH免密登录 ssh-keygen -t rsa ssh-copy-id master ssh-copy-id slave1 ssh-copy-id slave2
tar -zxvf jdk-8u301-linux-x64.tar.gz -C /opt/ echo 'export JAVA_HOME=/opt/jdk1.8.0_301' >> /etc/profile echo 'export PATH=$JAVA_HOME/bin:$PATH' >> /etc/profile source /etc/profile
export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/data/hadoop/tmp</value> </property> </configuration>
<property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/data/hadoop/namenode</value> </property>
<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property>
# 首次启动需要格式化HDFS hdfs namenode -format # 启动HDFS start-dfs.sh # 启动YARN start-yarn.sh # 验证服务 jps # 主节点应显示NameNode/ResourceManager
# 测试HDFS写入性能 hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-*-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 1GB # 运行WordCount示例 hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount /input /output
# 查看HDFS空间使用 hdfs dfsadmin -report # 安全模式操作 hdfs dfsadmin -safemode enter/leave # 节点退役 hdfs dfsadmin -refreshNodes
DataNode无法启动
YARN资源分配不足
<!-- yarn-site.xml增加 --> <property> <name>yarn.nodemanager.resource.memory-mb</name> <value>8192</value> </property>
NameNode启动失败
高可用方案:
性能优化:
提示:生产环境建议至少部署3个JournalNode和2个NameNode,ZooKeeper集群应为奇数节点(3/5/7台)
通过以上步骤,一个完整的Hadoop集群即可投入生产使用。建议首次部署后在测试环境充分验证,再迁移到生产环境。 “`
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。