• [大数据类] profile的sqoop地址对的,但是一直显示-bash: sqoop: command not found
    profile    这是sqoop 路径这是测试sqoop是否安装成功所返回的
  • [问题求助] mrs 提交任务到yarn报错 Could not load service provider for table factories
    mrs 提交任务到yarn报错   Could not load service provider for table factories
  • 通过jdbc提交mrs作业到yarn上,mrs是否接口可以返回yarn上执行的作业占用的资源(cpu/memory)的情况
    请教个问题,通过jdbc提交mrs作业到yarn上,mrs是否接口可以返回yarn上执行的作业占用的资源(cpu/memory)的情况
  • [基础组件] yarn任务的counter文件解析样例
    1 背景Yarn的任务的统计结果在HDFS的指定文件(/mr-history/done/2023/05/15  目录 xxx.jhist 文件)存放。解析该文件,即可最小化影响HDFS性能(统计每个MR的counter只需访问1次HDFS,获取该20K文件,然后在客户端解析文件内容即可)2 获取xxx.jhist文件查看对应日期的jhist文件(如:2023年5月23日):hdfs dfs -ls /mr-history/done/2023/05/23/000000下载jhist文件:hdfs dfs -get /mr-history/done/2023/05/23/000000/job_1683342225080_0138-1684848693047-Loader%3A+testsftp2hive_1684848475163-1684848723140-1-0-SUCCEEDED-default-1684848703642.jhist3 解析counter示例使用java代码解析counter3.1 添加依赖<dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${hadoop.version}</version></dependency><dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce-client-common</artifactId> <version>${hadoop.version}</version></dependency><dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-mapreduce-client-hs</artifactId> <version>${hadoop.version}</version></dependency><dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <version>1.8.5</version></dependency>3.2 解析代码package com.huawei.bigdata.mapreduce.examples;import static org.mockito.Mockito.mock;import org.apache.hadoop.mapreduce.Counter;import org.apache.hadoop.mapreduce.CounterGroup;import org.apache.hadoop.mapreduce.v2.hs.CompletedJob;import org.apache.hadoop.mapreduce.v2.hs.HistoryFileManager.HistoryFileInfo;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.mapred.JobACLsManager;import org.apache.hadoop.mapreduce.v2.api.records.JobId;import java.io.IOException;public class TestYarnCounter { public static void main(String args[]) { Path fullHistoryPath = new Path("D:\\history\ job_1683342225080_0138-1684848693047-Loader%3A+testsftp2hive_1684848475163-1684848723140-1-0-SUCCEEDED-default-1684848703642.jhist"); Configuration conf = new Configuration(); boolean loadTasks = false; HistoryFileInfo info = mock(HistoryFileInfo.class); JobId jobId = null; JobACLsManager jobAclsManager = new JobACLsManager(conf); try { CompletedJob completedJob = new CompletedJob(conf, jobId, fullHistoryPath, loadTasks, "user", info, jobAclsManager); CounterGroup counterGroup = completedJob.getAllCounters() .getGroup("org.apache.hadoop.mapreduce.FileSystemCounter"); for (Counter counter : counterGroup) { System.out.println(counter.getName() + ":" + counter.getValue()); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}4 运行结果FILE_BYTES_READ:0FILE_BYTES_WRITTEN:393363FILE_READ_OPS:0FILE_LARGE_READ_OPS:0FILE_WRITE_OPS:0HDFS_BYTES_READ:204HDFS_BYTES_WRITTEN:153HDFS_READ_OPS:3HDFS_LARGE_READ_OPS:0HDFS_WRITE_OPS:3运行的结果也可在ResourceManager WebUI页面查看:点击对应的application id,显示如下页面 在该页面点击history,查看counter信息
  • [问题求助] MRS调用yarn接口时这个错误,请问是什么原因,应该如何配置。。。curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to
    MRS调用yarn接口时这个错误,请问是什么原因,应该如何配置。。。curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to
  • [问题求助] 通过Yarn提交Yarn任务 报错 Protocol message end-group tag did not match expected tag.
    大佬们好,我们再对接华为大数据平台【FusionInsight Manager】时出现了一下问题问题描述:我们设计的Yarn任务提交设计以下几个步骤:检测 Yarn执行资源是否充足   【成功】QueueInfo queueInfo = yarnClient.getQueueInfo(amClientContext.getQueueName());设置yarn运行相关信息【成功】//部分代码 appContext.setApplicationName(amClientContext.getAppName()); appContext.setAttemptFailuresValidityInterval(20000); Set tags = new HashSet<>(1); tags.add("ddmp"); appContext.setApplicationTags(tags); ApplicationId appId = appContext.getApplicationId();上传待运行的任务至HDFS 【成功】 以下是部分代码,上传资源,包括设置yarn执行相关的环境变量,将AppMaster任务信息设置好/** * 添加一个本地资源到远程 * * @param fs 文件系统 * @param fileSrcPath 要上传的文件 * @param fileName 文件名 * @param appId 应用id * @param localResources 本地文件资源映射 * @param resources 文件资源 ,有时候我们并没有实际的资源信息,只有一个类似于命令操作,如果我们想将该命令生成一个文件并上传,就可以将该命令写在这里 * @throws IOException 异常信息 */ private void addToLocalResources(String appName, FileSystem fs, String fileSrcPath, String fileName, String appId, Map localResources, String resources) throws IOException { //获取要上传的目录路径 String suffix = appName + "/" + appId + "/" + fileName; Path dst = new Path(fs.getHomeDirectory(), suffix); //当要上传的文件不存在的时候 尝试将 resources 文件写入到一个目录中 if (fileSrcPath == null) { FSDataOutputStream ostream = null; try { //赋予 可读,可写,可执行的权限 ostream = FileSystem.create(fs, dst, new FsPermission((short) 456)); ostream.writeUTF(resources); } finally { IOUtils.closeStream(ostream); } } else { //将要上传的文件拷贝到对应的目录中 fs.copyFromLocalFile(new Path(fileSrcPath), dst); } //获取刚刚上传的文件的状态 FileStatus scFileStatus = fs.getFileStatus(dst); //创建一个本地资源映射 hdfs URI uri = dst.toUri(); URL url = URL.fromURI(uri); long len = scFileStatus.getLen(); long modificationTime = scFileStatus.getModificationTime(); LocalResource scRsrc = LocalResource.newInstance(url, LocalResourceType.FILE, LocalResourceVisibility.APPLICATION, len, modificationTime); //放入到资源映射中 localResources.put(fileName, scRsrc); }提交AppMaster任务到Yarn引擎 【失败】// 为应用程序主机设置容器启动上下文 ContainerLaunchContext amContainer = ContainerLaunchContext.newInstance(localResourceMap, env, commands, null, null, null); //权限处理 securityCheck(amContainer, amClientContext); //将容器设置进上下文对象 appContext.setAMContainerSpec(amContainer); //配置任务优先级状态 Priority pri = Priority.newInstance(0); appContext.setPriority(pri); //配置队列名称 appContext.setQueue(amClientContext.getQueueName()); yarnRunCallHook.doMessage("任务准备完成,开始提交任务!"); yarnClient.submitApplication(appContext);程序再运行到 yarnClient.submitApplication(appContext); 时执行卡住,通过日志观察,出现一下日志:48833 [main] INFO org.apache.hadoop.io.retry.RetryInvocationHandler - com.google.protobuf.InvalidProtocolBufferException: Protocol message end-group tag did not match expected tag., while invoking ApplicationClientProtocolPBClientImpl.getApplicationReport over 27. Trying to failover immediately. 48833 [main] INFO org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider - Failing over to 28 49849 [main] INFO org.apache.hadoop.io.retry.RetryInvocationHandler - java.net.ConnectException: Call From DESKTOP-BTSFCSH/10.0.55.152 to 10-0-120-162:26004 failed on connection exception: java.net.ConnectException: Connection refused: no further information; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused, while invoking ApplicationClientProtocolPBClientImpl.getApplicationReport over 28 after 1 failover attempts. Trying to failover after sleeping for 35465ms. 85315 [main] INFO org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider - Failing over to 27 85366 [main] INFO org.apache.hadoop.io.retry.RetryInvocationHandler - com.google.protobuf.InvalidProtocolBufferException: Protocol message end-group tag did not match expected tag., while invoking ApplicationClientProtocolPBClientImpl.getApplicationReport over 27 after 2 failover attempts. Trying to failover after sleeping for 30581ms.请重点关注 Protocol message end-group tag did not match expected tag. 连接主节点的时候,出现协议不一致的问题连接信息如下:fs.defaultFS=hdfs://hacluster yarn.resourcemanager.address.27=10-0-120-161:26004 yarn.resourcemanager.address.28=10-0-120-162:26004 yarn.resourcemanager.ha.rm-ids=27,28 dfs.client.failover.proxy.provider.hacluster=org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider yarn.resourcemanager.scheduler.address.28=10-0-120-162:26002 dfs.nameservices=hacluster yarn.resourcemanager.scheduler.address.27=10-0-120-161:26002 dfs.namenode.rpc-address.hacluster.14=10-0-120-161:25000 dfs.namenode.rpc-address.hacluster.15=10-0-120-162:25000 yarn.resourcemanager.ha.enabled=true yarn.resourcemanager.recovery.enabled=true yarn.log-aggregation-enable=true dfs.ha.namenodes.hacluster=14,15 yarn.http.policy=HTTPS_ONLYFusionInsight Manager 已经开启Kereros,再本次提交中,kerberos认证已经通过 以上配置信息来自于 FusionInsight Manager 配置,确认端口信息等无误!以下是引入的Maven依赖 3.1.1 1.3.1 3.1.0 8 8 org.apache.hadoop hadoop-common ${hadoop.version} org.apache.hadoop hadoop-client ${hadoop.version} org.apache.hadoop hadoop-mapreduce-client-app ${hadoop.version} org.apache.hadoop hadoop-mapreduce-client-common ${hadoop.version} org.apache.hadoop hadoop-mapreduce-client-core ${hadoop.version} org.apache.hbase hbase-client ${hbase.version} org.apache.hbase hbase-common ${hbase.version} org.apache.hbase hbase-protocol ${hbase.version} org.apache.hbase hbase-server ${hbase.version} org.apache.hive hive-jdbc ${hive.version} org.apache.hive hive-service ${hive.version} 上述依赖,模仿华为云大数据平台 客户端案例的依赖!
  • [生态对接] spark 读取卡夫卡数据 提交到yarn一直报错连接异常失败 代码和参数都配置正确
    【功能模块】spark 读取kafka提交到yarn之后异常,一直报连接错误 【截图信息】 
  • [生态对接] spark提交yarn idea执行正常,提交yarn报错找不到主类
    【功能模块】spark 代码,rdd提交时报错【截图信息】【日志信息】(可选,上传日志内容或者附件)
  • [生态对接] 【FI8.1.2】【flink】yarn-session看不到submit new job
    【功能模块】flink 1.12.2 session模式【操作步骤&问题现象】1、客户端认证之后执行yarn-session.sh -jm 1024 -tm 4096 -d2、提示submit成功,application_id写入/tmp/.yarn-properties-xxx成功【截图信息】【日志信息】(可选,上传日志内容或者附件)
  • [其他问题] Flink 1.12 yarn-per-job不报错但是也没提交任务到yarn
    环境:FusionInsight8.1.2,flink 1.12windows本地运行okMRS客户端执行 flink run -t yarn-per-job --detached xxx.jar 不报错也不提示提交情况
  • [技术干货] Flink on Yarn三部曲之三:提交Flink任务[转载]
    欢迎访问我的GitHub这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos本文是《Flink on Yarn三部曲》系列的终篇,先简单回顾前面的内容:《Flink on Yarn三部曲之一:准备工作》:准备好机器、脚本、安装包;《Flink on Yarn三部曲之二:部署和设置》:完成CDH和Flink部署,并在管理页面做好相关的设置;现在Flink、Yarn、HDFS都就绪了,接下来实践提交Flink任务到Yarn执行;两种Flink on YARN模式实践之前,对Flink on YARN先简单了解一下,如下图所示,Flink on Yarn在使用的时候分为两种模式,Job Mode和Session Mode:Session Mode:在YARN中提前初始化一个Flink集群,以后所有Flink任务都提交到这个集群,如下图:Job Mode:每次提交Flink任务都会创建一个专用的Flink集群,任务完成后资源释放,如下图:接下来分别实战这两种模式;准备实战用的数据(CDH服务器)接下来提交的Flink任务是经典的WordCount,先在HDFS中准备一份文本文件,后面提交的Flink任务都会读取这个文件,统计里面每个单词的数字,准备文本的步骤如下:SSH登录CDH服务器;切换到hdfs账号:su - hdfs下载实战用的txt文件:创建hdfs文件夹:hdfs dfs -mkdir /input将文本文件上传到/input目录:hdfs dfs -put ./GoneWiththeWind.txt /input准备工作完成,可以提交任务试试了。Session Mode实战SSH登录CDH服务器;切换到hdfs账号:su - hdfs进入目录:/opt/flink-1.7.2/执行如下命令创建Flink集群,-n参数表示TaskManager的数量,-jm表示JobManager的内存大小,-tm表示每个TaskManager的内存大小:创建成功后,控制台输出如下图,注意红框中的提示,表明可以通过38301端口访问Flink:浏览器访问CDH服务器的38301端口,可见Flink服务已经启动:浏览器访问CDH服务器的8088端口,可见YARN的Application(即Flink集群)创建成功,如下图,红框中是任务ID,稍后结束Application的时候会用到此ID:再开启一个终端,SSH登录CDH服务器,切换到hdfs账号,进入目录:/opt/flink-1.7.2执行以下命令,就会提交一个Flink任务(安装包自带的WordCount例子),并指明将结果输出到HDFS的wordcount-result.txt文件中:执行完毕后,控制台输出如下:flink的WordCount任务结果保存在hdfs,我们将结果取出来看看:hdfs dfs -get /wordcount-result.txtvi打开wordcount-result.txt文件,如下图,可见任务执行成功,指定文本中的每个单词数量都统计出来了:浏览器访问Flink页面(CDH服务器的38301端口),也能看到任务的详细情况:销毁这个Flink集群的方法是在控制台执行命令:yarn application -kill application_1580173588985_0002Session Mode的实战就完成了,接下来我们来尝试Job Mode;Job Mode执行以下命令,创建一个Flink集群,该集群只用于执行参数中指定的任务(wordCount.jar),结果输出到hdfs的wordcount-result-1.txt文件:控制台输出如下,表明任务执行完成:如果您的内存和CPU核数充裕,可以立即执行以下命令再创建一个Flink集群,该集群只用于执行参数中指定的任务(wordCount.jar),结果输出到hdfs的wordcount-result-2.txt文件:在YARN管理页面可见任务已经结束:执行命令hdfs dfs -ls /查看结果文件,已经成功生成:执行命令hdfs dfs -get /wordcount-result-1.txt下载结果文件到本地,检查数据正常;至此,Flink on Yarn的部署、设置、提交都实践完成,《Flink on Yarn三部曲》系列也结束了,如果您也在学习Flink,希望本文能够给您一些参考,也建议您根据自身情况和需求,修改ansible脚本,搭建更适合自己的环境;欢迎关注华为云博客:程序员欣宸学习路上,你不孤单,欣宸原创一路相伴…
  • [问题求助] 创建Flink集群时执行yarn-session.sh命令失败
    执行命令:bin/yarn-session.sh -n 3 -jm 1024 -tm 1024报错图片:
  • [二次开发] 【MRS】【YARN java api】调用yarnclient的接口提交应用到RM的java样例demo
    【功能模块】【操作步骤&问题现象】1、能否提供一个调用yarnclient的接口提交应用到RM的java样例demo,感谢【截图信息】【日志信息】(可选,上传日志内容或者附件)
  • [二次开发] 【大数据Spark2X】sparkstreaming对接kafka程序yarn-cluster提交到华为集群后运行失败,提示入口
    【功能模块】【操作步骤&问题现象】1、sparkstreaming对接kafka程序,本地环境测试正常2、程序打包后通过如下命令提交到yarn上3、提交成功,运行失败,报错:找不到主类【截图信息】【日志信息】(可选,上传日志内容或者附件)
  • [环境搭建] HD 6.5.1.3 版本集群扩容 hdfs和yarn 节点,原集群内存256 新扩容节点512,扩容后是否会存在木桶效应?
    【操作步骤&问题现象】HD 6.5.1.3 版本集群扩容 hdfs和yarn 节点,原集群内存256 新扩容节点512,扩容后是否会存在木桶效应?怎么规避?
总条数:38 到第
上滑加载中