温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

hadoop2.7+Spark1.4环境如何搭建

发布时间:2021-11-18 16:35:04 来源:亿速云 阅读:199 作者:小新 栏目:云计算
# Hadoop 2.7 + Spark 1.4环境搭建指南 ## 目录 1. [环境准备](#环境准备) 2. [Hadoop 2.7集群搭建](#hadoop-27集群搭建) - [SSH无密码登录配置](#ssh无密码登录配置) - [Java环境安装](#java环境安装) - [Hadoop安装与配置](#hadoop安装与配置) - [集群启动与验证](#集群启动与验证) 3. [Spark 1.4集群搭建](#spark-14集群搭建) - [Scala环境安装](#scala环境安装) - [Spark安装与配置](#spark安装与配置) - [Spark集群验证](#spark集群验证) 4. [集成测试](#集成测试) 5. [常见问题解决](#常见问题解决) 6. [性能优化建议](#性能优化建议) --- ## 环境准备 ### 硬件要求 - **Master节点**:建议4核CPU/8GB内存/100GB存储 - **Slave节点**:建议2核CPU/4GB内存/50GB存储(至少2个节点) - 网络:千兆以太网,关闭防火墙或开放必要端口 ### 软件要求 - 操作系统:Ubuntu 16.04 LTS/CentOS 7 - Java版本:JDK 1.8 - Hadoop版本:2.7.7 - Spark版本:1.4.0 - Scala版本:2.10.5 ### 节点规划示例 | 主机名 | IP地址 | 角色 | |----------|------------|-----------------------| | master | 192.168.1.10 | NameNode, ResourceManager, Spark Master | | slave1 | 192.168.1.11 | DataNode, NodeManager, Spark Worker | | slave2 | 192.168.1.12 | DataNode, NodeManager, Spark Worker | --- ## Hadoop 2.7集群搭建 ### SSH无密码登录配置 ```bash # 所有节点执行 ssh-keygen -t rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys # Master节点执行 scp ~/.ssh/id_rsa.pub slave1:~/.ssh/master.pub ssh slave1 "cat ~/.ssh/master.pub >> ~/.ssh/authorized_keys" 

Java环境安装

# Ubuntu示例 sudo apt-get update sudo apt-get install openjdk-8-jdk # 验证安装 java -version 

Hadoop安装与配置

  1. 下载并解压
wget https://archive.apache.org/dist/hadoop/core/hadoop-2.7.7/hadoop-2.7.7.tar.gz tar -xzvf hadoop-2.7.7.tar.gz -C /usr/local/ 
  1. 环境变量配置(/etc/profile
export HADOOP_HOME=/usr/local/hadoop-2.7.7 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 
  1. 核心配置文件修改

$HADOOP_HOME/etc/hadoop/core-site.xml:

<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> 

$HADOOP_HOME/etc/hadoop/hdfs-site.xml:

<configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/data/hadoop/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/data/hadoop/datanode</value> </property> </configuration> 
  1. YARN配置(可选)
<!-- yarn-site.xml --> <property> <name>yarn.resourcemanager.hostname</name> <value>master</value> </property> 

集群启动与验证

# 首次启动需格式化NameNode hdfs namenode -format # 启动HDFS start-dfs.sh # 启动YARN start-yarn.sh # 验证服务 jps # 应看到NameNode/DataNode/ResourceManager等进程 hdfs dfsadmin -report # 查看节点状态 

Spark 1.4集群搭建

Scala环境安装

wget https://downloads.lightbend.com/scala/2.10.5/scala-2.10.5.tgz tar -xzvf scala-2.10.5.tgz -C /usr/local/ export SCALA_HOME=/usr/local/scala-2.10.5 export PATH=$PATH:$SCALA_HOME/bin 

Spark安装与配置

  1. 下载并解压
wget https://archive.apache.org/dist/spark/spark-1.4.0/spark-1.4.0-bin-hadoop2.7.tgz tar -xzvf spark-1.4.0-bin-hadoop2.7.tgz -C /usr/local/ 
  1. 环境变量配置
export SPARK_HOME=/usr/local/spark-1.4.0-bin-hadoop2.7 export PATH=$PATH:$SPARK_HOME/bin 
  1. 配置文件修改

$SPARK_HOME/conf/spark-env.sh:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export SCALA_HOME=/usr/local/scala-2.10.5 export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export SPARK_MASTER_IP=192.168.1.10 export SPARK_WORKER_MEMORY=4g 

$SPARK_HOME/conf/slaves:

slave1 slave2 

Spark集群验证

# 启动集群 $SPARK_HOME/sbin/start-all.sh # 验证Web UI http://master:8080 # 查看Worker节点状态 # 运行测试程序 spark-submit --class org.apache.spark.examples.SparkPi \ --master spark://master:7077 \ $SPARK_HOME/examples/jars/spark-examples_2.10-1.4.0.jar 100 

集成测试

  1. HDFS读写测试
hdfs dfs -mkdir /test hdfs dfs -put $HADOOP_HOME/LICENSE.txt /test hdfs dfs -cat /test/LICENSE.txt 
  1. Spark读取HDFS数据
val textFile = sc.textFile("hdfs://master:9000/test/LICENSE.txt") textFile.count() 

常见问题解决

  1. Hadoop启动失败

    • 检查日志:$HADOOP_HOME/logs/
    • 常见原因:端口冲突/目录权限不足
  2. Spark Worker未注册

    • 检查网络连通性
    • 验证$SPARK_HOME/conf/slaves文件格式
  3. 内存不足错误

    export SPARK_WORKER_MEMORY=2g # 降低内存配置 

性能优化建议

  1. Hadoop调优

    • 调整mapred-site.xml中的任务并行度
    • 优化HDFS块大小(默认128MB)
  2. Spark调优

    spark-submit --executor-memory 2g --total-executor-cores 4 ... 
  3. 硬件层面

    • 使用SSD替代机械硬盘
    • 增加节点间网络带宽

注:本文基于测试环境编写,生产环境需根据实际需求调整配置参数。建议通过Ambari或Cloudera Manager等工具进行集群管理。 “`

该文档包含: - 完整的安装流程(代码块+配置示例) - 分步骤的验证方法 - 常见问题解决方案 - 关键注意事项(黄色高亮提示) - 符合Markdown规范的结构化排版

实际使用时可根据具体环境调整IP地址、路径等参数。建议配合官方文档阅读以获得最新安全补丁信息。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI