首页
动态
时间轴
归档
友链
关于
Search
1
Spark在Yarn模式下提交未找到驱动
10,711 阅读
2
Spark提交任务内存不足
10,292 阅读
3
Flink集群搭建--Yarn模式
9,797 阅读
4
Spark SQL函数总结
8,516 阅读
5
Flume应用--日志采集
7,201 阅读
日常
大数据
经验分享
技术总结
登录
Search
标签搜索
bigdata
Hive
Spark
hadoop
Flume
建站
Flink
linux
Mysql
sqoop
Yarn
摸鱼
羊毛
docker
VMware
图床
sql
function
清泓
累计撰写
39
篇文章
累计收到
---
条评论
首页
动态
后台
栏目
日常
大数据
经验分享
技术总结
页面
时间轴
归档
友链
关于
搜索到
4
篇
hadoop
的结果
2022-06-07
HadoopHA模式下Hive启动报错
报错hadoop配置HA后启动hive报错Exception in thread "main" java.lang.IllegalArgumentException: java.net.UnknownHostException: hadoopcluster[root@master hive]# hive which: no hbase in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/src/jdk/bin:/usr/local/src/hadoop/bin:/usr/local/src/hadoop/sbin:/usr/local/src/zookeeper/bin:/usr/local/src/hive/bin:/usr/local/src/scala/bin:/usr/local/src/spark/bin:/usr/local/src/sqoop/bin:/usr/local/src/kafka/bin:/usr/local/src/flume/bin:/usr/local/src/flink/bin) SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/usr/local/src/hive/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/local/src/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory] Logging initialized using configuration in jar:file:/usr/local/src/hive/lib/hive-common-2.3.4.jar!/hive-log4j2.properties Async: true Exception in thread "main" java.lang.IllegalArgumentException: java.net.UnknownHostException: hadoopcluster at org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:377) at org.apache.hadoop.hdfs.NameNodeProxies.createNonHAProxy(NameNodeProxies.java:320) at org.apache.hadoop.hdfs.NameNodeProxies.createProxy(NameNodeProxies.java:176) at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:687) at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:628) at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileSystem.java:149) at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2667) at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:93) at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2701) at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2683) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:372) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:171) at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:579) at org.apache.hadoop.hive.ql.session.SessionState.beginStart(SessionState.java:549) at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:750) at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:686) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.hadoop.util.RunJar.run(RunJar.java:226) at org.apache.hadoop.util.RunJar.main(RunJar.java:141) Caused by: java.net.UnknownHostException: hadoopcluster ... 22 more原因原因是hadoop配置文件hdfs-site.xml的nameservices的名称为hadoopcluster<!-- 指定hdfs的nameservices名称为hadoopcluster --> <property> <name>dfs.nameservices</name> <value>hadoopcluster</value> </property>而指定HDFS客户端连接active namenode的java类时漏写了client<property> <name>dfs.failover.proxy.provider.hadoopcluster</name> <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> </property>修改为:<property> <name>dfs.client.failover.proxy.provider.hadoopcluster</name> <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> </property>
2022年06月07日
2,873 阅读
0 评论
1 点赞
2022-06-05
Spark报错总结
1.client模式异常 Yarn application has already ended! 解决:hadoop的配置文件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>注意: 修改完配置文件后需要分发到各个节点,并重启Hadoop
2022年06月05日
3,075 阅读
0 评论
1 点赞
2022-05-06
Hadoop完全分布式集群搭建
Hadoop完全分布式集群搭建{lamp/}环境准备操作环境主机名IP地址JDKhadoop版本CentOS7hadoop102192.168.128.172jdk1.8.0_191hadoop-2.7.2CentOS7hadoop103192.168.128.173jdk1.8.0_191hadoop-2.7.2CentOS7hadoop104192.168.128.174jdk1.8.0_191hadoop-2.7.2配置静态IP、主机名及主机映射1.修改各节点的网络配置命令行输入vim /etc/sysconfig/network-scripts/ifcfg-ens33进入虚拟机的网卡配置需要修改虚拟机的网卡默认配置,将虚拟机的网卡配置设置为静态ipip地址 根据 VMware 虚拟网络进行相关配置 如图在虚拟机里修改配置可以如图所示修改完命令行输入:service network restart重启网络服务对其余两个hadoop节点也同样做上述操作,只不过IPADDR值不一样,分别填其节点对应的ip2.修改节点主机名,并且添加各节点映射在命令行中输入vim /etc/hostname进入文件中修改hostname名称为hadoop102,在其他两个子节点的hostname处分别填hadoop103和hadoop104配置节点主机映射,命令行输入vim /etc/hosts添加节点映射这里多写了一些,此次搭建只需要添加hadoop102,hadoop103,hadoop104的映射即可关闭防火墙关闭防火墙后才能在三台机器之间互相通信所以关闭防火墙是很有必要的可以使用这条命令来检查我们虚拟机开机时的防火墙状态chkconfig iptables --list 如果是已经关闭应该会如下图所示如果没有关闭我们可以使用这两条命令来关闭我们的防火墙systemctl stop firewalld这条命令是在本次虚拟机开启过程中关闭防火墙,也就是一次性关闭还需要这条命令禁止防火墙关机自启动,这样防火墙就是是关闭了systemctl disable firewalld.service当hadoop102关闭防火墙后,对于hadoop103与hadoop104也要做同样的操作在防火墙关闭完成后,输入reboot重启虚拟机,检查防火墙是否已经关闭配置节点间ssh免密在hadoop102上输入ssh-keygen -t rsa一直按回车完成后在保证三台虚拟机开启且完成之前所有配置的情况下输入:[root@hadoop102 ~]# ssh-copy-id hadoop102 [root@hadoop102 ~]# ssh-copy-id hadoop103 [root@hadoop102 ~]# ssh-copy-id hadoop104注:如果提示not found 可能是ssh没有安装,输入yum install openssh-clients安装openssh在hadoop102上完成后,在其他两个节点上重复上述操作验证ssh免密登录是否成功这里可以看到使用ssh登录到了hadoop103节点上安装java和hadoop使用xftp将hadoop和java的压缩包上传到我们新建的/opt/software上同时新建一个module文件夹放置解压后的hadoop和java,新建文件夹代码如下、[root@hadoop102 ~]# cd /opt/ [root@hadoop102 ~]# mkdir software [root@hadoop102 ~]# mkdir module上传完成之后我们需要解压java和hadoop到/opt/module下,以便未来的管理解压代码如下tar -zxf jdk-8u191-linux-x64.tar.gz -C /opt/module/ tar -zxf hadoop-2.7.2.tar.gz -C /opt/module/解压完成后/opt/module如图所示配置环境变量vi /etc/profile在末尾添加export JAVA_HOME=/opt/module/jdk1.8.0_191 export PATH=$PATH:$JAVA_HOME/bin export HADOOP_HOME=/opt/module/hadoop-2.7.2 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin退出后,输入source /etc/profile使其生效验证java和hadoop环境变量是否配置完成[root@hadoop103 module]# java -version java version "1.8.0_191" Java(TM) SE Runtime Environment (build 1.8.0_191-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode) [root@hadoop103 module]# hadoop version Hadoop 2.7.2 Subversion Unknown -r Unknown Compiled by root on 2017-05-22T10:49Z Compiled with protoc 2.5.0 From source with checksum d0fda26633fa762bff87ec759ebe689c This command was run using /opt/module/hadoop-2.7.2/share/hadoop/common/hadoop-common-2.7.2.jar [root@hadoop103 module]# 环境变量配置完成, 在其他两个节点上重复上述操作修改hadoop配置文件1.修改core-site.xmlcore-site.xml文件包含了NameNode主机地址,监听端口等信息,对于这个完全分布式模型来说,此次教程的主机地址为hadoo101,NameNode默认使用的端口为8020。<configuration> <!-- 指定HDFS中NameNode的地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop101:8020</value> </property> <!-- 指定hadoop运行时产生文件的存储目录 --> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-2.7.2/data/tmp</value> </property> </configuration>2.修改hdfs-site.xmlhdfs-site.xml用于配置/HDFS的相关属性,例如数据块的副本参数,数据块的副本对于完全分布式来说建议为3<configuration> <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.namenode.secondary.http-address</name> <value>hadoop104:50090</value> </property> <property> <name>dfs.name.dir</name> <value>/opt/module/hadoop-2.7.2/data/tmp/name</value> </property> <property> <name>dfs.data.dir</name> <value>/opt/module/hadoop-2.7.2/data/tmp/data</value> </property> </configuration>3.修改yarn-site.xml<configuration> <!-- Site specific YARN configuration properties --> <!-- reducer获取数据的方式 --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <!-- 指定YARN的ResourceManager的地址 --> <property> <name>yarn.resourcemanager.hostname</name> <value>hadoop103</value> </property> </configuration>4.修改mapred-site.xml重命名文件,本身是没有mapred-site.xml这个文件的输入mv mapred-site.xml.template mapred-site.xml完成后[root@hadoop102 ~]#vim mapred-site.xml <configuration> <!-- 指定mr运行在yarn上 --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>hadoop102:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>hadoop102:19888</value> </property> </configuration>5.修改slavesslaves文件里面记录的是集群里所有DataNode的主机名[root@hadoop102 hadoop]# vim slaves hadoop102 hadoop103 hadoop1046.修改yarn-env.sh,配置JAVA_HOMEexport JAVA_HOME=/opt/module/jdk1.8.0_1917.修改hadoop-env.sh,配置JAVA_HOMEexport JAVA_HOME=/opt/module/jdk1.8.0_191这些配置文件改好后,返回/opt/module目录下把hadoop102下修改的文件分发到hadoop103和hadoop104下[root@hadoop102 module]# scp -r hadoop root@hadoop103:/opt/module/ [root@hadoop102 module]# scp -r hadoop root@hadoop104:/opt/module/测试Hadoop集群格式化namenode[root@hadoop2 hadoop-2.7.2]# bin/hdfs namenode –format格式化成功后,启动集群启动集群[root@hadoop2 hadoop-2.7.2]# start-all.sh每个节点上使用jps命令查看hadoop启动状况hadoop102[root@hadoop102 hadoop-2.7.2]# jpshadoop103[root@hadoop104 hadoop-2.7.2]# jpshadoop104[root@hadoop104 hadoop-2.7.2]# jps启动完成后在浏览器上访问可视化页面:http://namenode所在节点IP:50070
2022年05月06日
4,021 阅读
0 评论
1 点赞
2022-05-06
Hadoop伪分布式搭建
Hadoop伪分布式搭建{lamp/}前言hadoop集群模式:模式描述本地模式单机运行,只是用来演示一下官方案例伪分布式模式单机运行,但是具备Hadoop集群的所有功能,一台服务器模拟一个分布式的环境完全分布式模式多台服务器组成分布式环境教程使用环境:操作环境主机名IP地址JDKHadoop版本CentOS7hadoop101192.168.128.101jdk1.8.0_191hadoop-2.7.2安装Hadoophadoop上传与解压配置好自己的虚拟机后,可以自行在网上下载xftp和xshell,对虚拟机进行远程上传文件和远程操作。下载安装好这两款软件后,就可以将hadoop的解压包上传至虚拟机,将解压包上传至/opt/software中,开始解压hadoop,将hadoop解压至/opt/module/中,同时建议将java也解压至/opt/module/中,方便后面的管理。配置环境变量vi /etc/profile具体配置:在/etc/profile的最后面添加如下配置,关于vi编辑器的用法可以自行百度export JAVA_HOME=/opt/module/jdk1.8.0_191 export PATH=$PATH:$JAVA_HOME/bin export HADOOP_HOME=/opt/module/hadoop-2.7.2 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin使环境变量生效source /etc/profile测试环境变量是否生效hadoop version成功则显示Hadoop 2.7.2 Subversion Unknown -r Unknown Compiled by root on 2017-05-22T10:49Z Compiled with protoc 2.5.0 From source with checksum d0fda26633fa762bff87ec759ebe689c This command was run using /opt/module/hadoop-2.7.2/share/hadoop/common/hadoop-common-2.7.2.jar配置Hadoop在伪分布式里只需要改三个配置文件core-site.xml和hdfs-site.xml还有hadoop-env.sh这三个文件在hadoop目录下的etc/hadoop文件夹下core-site.xml文件包含了NameNode主机地址,监听端口等信息,对于这个伪分布式模型来说,我的主机地址为hadoo101,NameNode默认使用的端口为8020。修改core-site.xml<configuration> <!-- 指定HDFS中NameNode的地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop101:8020</value> </property> <!-- 指定hadoop运行时产生文件的存储目录 --> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-2.7.2/data/tmp</value> </property> </configuration>修改hdfs-site.xmlhdfs-site.xml用于配置/HDFS的相关属性,例如数据块的副本参数,数据块的副本对于伪分布式来说应该为1<configuration> <!-- 指定HDFS副本的数量 --> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>修改hadoop-env.shexport JAVA_HOME=/opt/module/jdk1.8.0_191初始化Hadoophdfs namenode -format初始化成功:启动Hadoop集群在hadoop-2.7.2目录下输入sbin/start-dfs.sh sbin/start-yarn.sh或sbin/start-all.sh可以在web端查看HDFS文件系统http://192.168.128.101:50070192.168.128.171是我的ip地址,如果配置的不同,改一下即可
2022年05月06日
3,242 阅读
0 评论
0 点赞
首页
复制
搜索
前进
后退
重载网页