HADOOP及SPARK安装步骤及问题解决
说明:主节点IP:192.168.35.134 主机名:master
从节点slave1 IP: 192.168.35.135 主机名:slave1
从节点slave2 IP: 192.168.35.136 主机名:slave2
1、检查环境,安装JDK:
Linux系统:用root用户登陆到系统,用如下命令查看当前安装jdk情况:
rpm -qa|grep jdk
显示:java version "1.8.0_131" 若版本过低,用如下命令卸载jdk:
rpm -e --nodeps jdk1.8.0_131
下载好jdk安装包,使用WinSCP工具将安装包上传到主节点目录下。切换至用户模式:su - 用户名(如test)。
新建用户组:
groupadd hadoop
新建用户:
useradd hadoop
新建jdk安装目录:
mkdir /home/java;
执行命令:
tar -zxvf jdk-8u131-linux-x64.tar.gz -C /home/java
将jdk安装在指定目录/home/java下。等待安装,安装完后配置jdk环境变量,配置在/home/test/.bash_profile。
执行命令:
vim /home/test/.bash_profile
键盘按“i”,进入编辑模式,在下方新增如下内容:
export JAVA_HOME=/home/java/jdk1.8.0_131
export CLASSPATH=$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
键盘按“:wq!”保存更改的配置项。终端输入:
source /home/test/.bash_profile
检查jdk是否安装成功,终端输入:
java -version
显示:
则表明安装成功。
2、配置主机名(root身份):
vim /etc/sysconfig/network
修改如下信息:
NETWORKING=yes
HOSTNAME=master
检查是否成功:
hostname
显示:master。则表示配置成功。其他从节点主机名均修改成相应的主机名。
3、配置host列表(root身份):
vim /etc/hosts
将下面内容添加至文件中:
192.168.35.134 master
192.168.35.135 slave1
192.168.35.136 slave2
住:若不知道本机ip地址,可使用命令:ipconfig或 ip addr show查看。
3、配置时钟同步(root身份),请参考这篇文章:
4、关闭防火墙(root身份):
查看防火墙状态,如下命令,若iptables已开启,需关闭防火墙。
service iptables status
关闭防火墙命令:
chkconfig iptables off
5、各服务器节点之间配置SSH免密登录(用户身份登录):
终端输入:
ssh-keygen -t rsa
在各节点分别进入/home/hadoop/.ssh目录,在三个节点中分别把公钥id_rsa.pub命名为authorized_keys_master、authorized_keys_slave1和authorized_keys_slave2,使用命令如下:
cd /home/hadoop/.ssh
cp id_rsa.pub authorized_keys_hadoop1
把两个从节点(slave1、slave2)的公钥使用scp命令传送到master节点的/home/hadoop/.ssh文件夹中;
scp authorized_keys_slave1 hadoop@master:/home/hadoop/.ssh--在slave1节点上执行该条命令;
scp authorized_keys_slave2 hadoop@master:/home/hadoop/.ssh--在slave2节点上执行该条命令;
在主节点上把三个节点的公钥信息保存到authorized_keys文件中,主节点终端输入如下命令:
cat authorized_keys_master >> authorized_keys
cat authorized_keys_slave1 >> authorized_keys
cat authorized_keys_slave2 >> authorized_keys
把authorized_keys文件分发到其他两个从节点上,使用如下命令:
scp authorized_keys hadoop@slave1:/home/hadoop/.ssh
scp authorized_keys hadoop@slave2:/home/hadoop/.ssh
在三台机器中使用如下设置authorized_keys读写权限
chmod 400 authorized_keys
测试ssh免密码登录是否生效:
ssh slave1
ssh slave2
能跳转至其他节点,则表明免密已生效,exit命令退出。
6、安装hadoop:
同样使用WinSCP工具将hadoop安装包上传到主节点目录下,新建hadoop安装目录:
mkdir /home/hadoop
执行命令:
tar -zxvf hadoop-2.8.2.tar.gz -C /home/hadoop
等待安装,安装后,配置环境变量。
6.1 配置hadoop-env.sh环境变量,执行命令:
vim /home/hadoop/hadoop-2.8.2/etc/hadoop/hadoop-env.sh
找到如下一行代码:
export JAVA_HOME=${JAVA_HOME}
将其改为:
export JAVA_HOME=/home/java/jdk1.8.0_131
保存即可。
6.2 配置yarn-env.sh环境变量
6.3 配置组件core-site.xml
6.4 配置文件系统hdfs-site.xml
6.5 配置文件系统yarn-site.xml
6.6 配置计算框架mapred-site.xml
6.7 配置从节点文件slaves
6.8 将上述安装好的hadoop复制到slave1和slave2节点。
6.9 配置hadoop系统环境变量
6.10 创建数据目录
6.11 格式化文件系统
6.12 启动hadoop集群
7、安装spark
8、问题及解决方法
问题一:hadoop的集群无法正常启动,其中jps命令错误。
分析原因:可能是.bash_profile文档需要重新source。Source的功能就是通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。(说明白点就是让修改过的文档重新生效)
解决方案:source下.bash_profile文件。
问题二:Spark提交Pi应用报错,日志显示:ERROR yarn.ApplicationMaster: Uncaught exception: java.lang.ClassNotFoundException: org.apache.spark.examples.SparkPi
分析原因:是jar包有问题
解决方案:换一个好的jar包再执行正确。
问题三:hadoop运行pi任务失败,日志显示:
ERROR client.TransportClient: Failed to send RPC 6920585401247025097 to /192.168.42.162:60956: java.nio.channels.ClosedChannelException
java.nio.channels.ClosedChannelException
at io.netty.channel.AbstractChannel$AbstractUnsafe.write(...)(Unknown Source)
分析原因:内存溢出
解决方案:在yarn-site.xml中增加两个配置项:
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
说明:yarn.nodemanager.vmem-check-enabled是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true。
问题四:启动hadoop后,Spark提交Pi应用报错,日志显示:
pplication application_1511319158710_0002 failed 2 times due to AM Container for appattempt_1511319158710_0002_000002 exited with exitCode: 10
Failing this attempt.Diagnostics: Exception from container-launch.
Container id: container_1511319158710_0002_02_000001
Exit code: 10
分析原因:yarn-site.xml中value配置有空格
解决方案:yarn-site.xml中value配置不能有空格;
HADOOP及SPARK安装步骤及问题解决的更多相关文章
- Hadoop伪分布式安装步骤(hadoop0.20.2版本)
最近在学习hadoop,自己下了个视频教程,他的教学版本是hadoop0.20.2版本,现在的最新版本都到了3.0了,版本虽然有点老,但是还是学了一下,觉得有借鉴的价值. 不废话了,开始介绍: 先说一 ...
- linux hadoop 集群安装步骤
http://blog.csdn.net/xjavasunjava/article/details/12013677 1,时间同步hadoop集群的每台机器的时间不能相差太大. 安装集群前最好进行一下 ...
- Spark学习之Spark安装
Spark安装 spark运行环境 spark是Scala写的,运行在jvm上,运行环境为java7+ 如果使用Python的API ,需要使用Python2.6+或者Python3.4+ Spark ...
- 大数据:Hadoop(JDK安装、HDFS伪分布式环境搭建、HDFS 的shell操作)
所有的内容都来源与 Hadoop 官方文档 一.Hadoop 伪分布式安装步骤 1)JDK安装 解压:tar -zxvf jdk-7u79-linux-x64.tar.gz -C ~/app 添加到系 ...
- hadoop入门学习教程--DKHadoop完整安装步骤
使用hadoop版本是DKH标准三节点发行版,DKHadoop版本的易用性比较好,环境部署要简单的多,参考此篇安装前请先下载DKHadoop版本,网盘链接:https://pan.baidu.com/ ...
- Apache Hadoop集群安装(NameNode HA + SPARK + 机架感知)
1.主机规划 序号 主机名 IP地址 角色 1 nn-1 192.168.9.21 NameNode.mr-jobhistory.zookeeper.JournalNode 2 nn-2 ).HA的集 ...
- Apache Hadoop集群安装(NameNode HA + YARN HA + SPARK + 机架感知)
1.主机规划 序号 主机名 IP地址 角色 1 nn-1 192.168.9.21 NameNode.mr-jobhistory.zookeeper.JournalNode 2 nn-2 192.16 ...
- spark,hadoop集群安装注意
安装步骤严格参看厦门大学数据实验室教程 Spark 2.0分布式集群环境搭建(Python版) 安装Hadoop并搭建好Hadoop集群环境 遇到的问题 1.ubuntu 安装后升级.python是3 ...
- 最新hadoop+hbase+spark+zookeeper环境安装(vmmare下)
说明:我这里安装的版本是hadoop2.7.3,hbase1.2.4,spark2.0.2,zookeeper3.4.9 (安装包:链接:http://pan.baidu.com/s/1c25hI4g ...
随机推荐
- CentOS 7 网络配置详解
今天在一台PC上安装了CentOS 7,当时选择了最小安装模式,安装完成后马上用ifconfig查看本机的ip地址(局域网已经有DHCP),发现报错,提示ifconfig命令没找到. ? 1 2 3 ...
- 启动dubbo消费端过程提示No provider available for the service的问题定位与解决
文/朱季谦 某次在启动dubbo消费端时,发现无法从zookeeper注册中心获取到所依赖的消费者API,启动日志一直出现这样的异常提示 Failed to check the status of t ...
- vue 安装sass5.0版本遇到的问题
cnpm install node-sass@4.9.2 --save-dev cnpm install sass-loader@7.3.1 --save-dev cnpm install style ...
- NVIDIA TensorRT高性能深度学习推理
NVIDIA TensorRT高性能深度学习推理 NVIDIA TensorRT 是用于高性能深度学习推理的 SDK.此 SDK 包含深度学习推理优化器和运行时环境,可为深度学习推理应用提供低延迟和高 ...
- 单点突破:MySQL之日志
前言 开发环境:MySQL5.7.31 日志是 mysql 数据库的重要组成部分,记录着数据库运行期间各种状态信息.若数据库发生故障,可通过不同日志记录恢复数据库的原来数据.因此实际上日志系统直接决定 ...
- springboot异常错误处理
1.在有模板引擎的情况下: springboot会默认找 templates/error/错误状态码.html,所以我们要定制化错误页面就可以到templates/error下创建一个[对应错误状态码 ...
- 【VBA】显示所有隐藏的名称管理器中的名称
Excel提示这个 代码: Sub DisplayNames() Dim Na As Name For Each Na In ThisWorkbook.Names Na.Visible = True ...
- noip2015 总结
神奇的幻方 题目描述 幻方是一种很神奇的N*N矩阵:它由数字1,2,3,--,N构成,且每行.每列及两条对角线上的数字之和都相同. 当N为奇数时,我们可以通过以下方法构建一个幻方:首先将1写在第一行的 ...
- es6 快速入门 系列 —— promise
其他章节请看: es6 快速入门 系列 Promise Promise 是一种异步编程的选择 初步认识Promise 用 Promise 来实现这样一个功能:发送一个 ajax,返回后输出 json ...
- 在vs中调试关闭之后不关闭页面
在vs中调试api时会自动打开一个新的浏览器窗口,在关闭这个浏览器窗口时,会关闭调试.关闭调试时也会关闭浏览器窗口. 设置成调试时在已有的浏览器中打开调试页面,关闭调试也不会关掉浏览器窗口,反之亦然 ...