随笔分类 -  hadoop

YARN SLS-SLSRunner完整源码分析
摘要:整个slsruner从main函数开始: public static void main(String[] argv) throws Exception { exitAtTheFinish = true; ToolRunner.run(new Confi... 阅读全文

posted @ 2018-07-15 11:10 sichenzhao 阅读(400) 评论(0) 推荐(0)

YARN SLS调度模拟器拓展的简单想法
摘要:SLS的缺点在于输入过于单一和简单,没有实时输入的接口。因此有个想法:将SLS拓展,使之能接收AM的allocate_request一类的信号。拓展其输入。同时拓展输出的数据,也就是metrics,使数据能够反映调度算法的好坏,比如方差等数据。接下来全力做这个项目,进... 阅读全文

posted @ 2018-07-13 22:47 sichenzhao 阅读(162) 评论(0) 推荐(0)

hadoop3.0.3-SYNTH运行成功
摘要:在上篇博文:Hadoop3.0.3-SYNTH运行,SYNTH由于NULL user导致错误。当时以为是hadoop的源码没有写好,但仔细研究后发现,可以在SYNTH的json文件中增加user。也就是说官网给出的synth的json文件是不完整的。下面给出可以完美运... 阅读全文

posted @ 2018-07-13 22:35 sichenzhao 阅读(132) 评论(0) 推荐(0)

Hadoop3.0.3-SYNTH运行
摘要:hadoop的迭代实在太快,导致出现很多bug。在运行SYNTH模式时。发现两个问题。1.官方给出的SYNTH的json脚本:{ "description" : "tiny jobs workload", //description of the meanin... 阅读全文

posted @ 2018-07-13 21:46 sichenzhao 阅读(203) 评论(0) 推荐(0)

hadoop3.0.3 SLS-Failed to create an AM
摘要:在运行slsrun.sh时,报错如下:ERROR sls.SLSRunner: Failed to create an AM: Can't find the queue by the given name: sls_queue_1! Please check if q... 阅读全文

posted @ 2018-07-13 18:37 sichenzhao 阅读(294) 评论(0) 推荐(0)

hadoop3.0.3- java.lang.ClassNotFoundException: org.apache.hadoop.yarn.server.timelineservice.collect
摘要:运行slsrun.sh时报错:Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.yarn.server.timelineservice.collector.TimelineCollector ... 阅读全文

posted @ 2018-07-13 17:10 sichenzhao 阅读(358) 评论(0) 推荐(0)

hadoop3.0.3-错误: 找不到或无法加载主类 org.apache.hadoop.yarn.sls.RumenToSLSConverte
摘要:apache在18年5月底发布hadoop3.0.3,但bug好像更多了。运行rumen2sls.sh,将rumen转化为sls文件时,报错:错误: 找不到或无法加载主类 org.apache.hadoop.yarn.sls.RumenToSLSConverte解决方... 阅读全文

posted @ 2018-07-13 15:27 sichenzhao 阅读(365) 评论(0) 推荐(0)

YARN-SLS中NM和AM如何进入调度
摘要:RM是scheduler的执行者:SLSrunner.javaprivate void startRM() throws ClassNotFoundException, YarnException { Configuration rmConf = new Yar... 阅读全文

posted @ 2018-07-12 23:15 sichenzhao 阅读(262) 评论(0) 推荐(0)

YARN-SLS如何实现大集群,大数据的模拟
摘要:对于几台到几十台机器组成的超小集群,可以采用sls或者rumen的文件方式输入,也就是runsls.sh后加参数--input-sls。但如果要模拟1000的中等集群甚至5000以上的大集群,手动修改sls或者rumen文件显然太不现实。hadoop社区一开始也没有考... 阅读全文

posted @ 2018-07-12 22:55 sichenzhao 阅读(209) 评论(0) 推荐(0)

YARN-SLS中RM如何获得NM和AM的heartbeat
摘要:在NMSimulator.java中: public void middleStep() throws Exception { // we check the lifetime for each running containers ContainerS... 阅读全文

posted @ 2018-07-12 22:20 sichenzhao 阅读(264) 评论(0) 推荐(0)

Hadoop-YARN-SLS模拟器运行
摘要:hadoop中提供sls来进行单机模拟。为缺少大集群的用户提供了便利。如何运行?1.配置hadoop安装前的环境:hadoop环境准备-centos7 安装java jdk82.安装Hadoop:hadoop安装和本地模式实现安装好后,对环境变量进行配置:sudo v... 阅读全文

posted @ 2018-07-11 17:56 sichenzhao 阅读(347) 评论(0) 推荐(0)

hadoop-yarn SLS运行中的问题
摘要:在运行SLS时可能会碰到如下问题:命令:sh $HADOOP_HOME/share/hadoop/tools/sls/bin/slsrun.sh --input-sls=/home/c/sls/output2/sls-jobs.json --nodes=/home/c... 阅读全文

posted @ 2018-07-11 17:27 sichenzhao 阅读(357) 评论(0) 推荐(0)

阿里搜索秒即弹性调度
摘要:目前阿里巴巴搜索的分布式服务一般都是基于Hippo+Carbon来调度的,包括部署、扩缩容、名字服务注册。如下图:其中:Hippo:一层调度(资源调度),解决机器资源分配问题,将一个物理机分成很多资源,根据应用单机不同的资源需求动态创建不同规格的容器(Docker)。... 阅读全文

posted @ 2018-06-28 22:43 sichenzhao 阅读(307) 评论(0) 推荐(0)

阿里搜索hippo架构
摘要:hippo是目前阿里搜索主要的调度系统,hippo是一套分布式调度系统。与YARN和K8s的目的相同,都是提供为集群资源调度服务。hippo架构hippo是典型的master-slave架构,这与YARN类似,多个master通过zookeeper选主做failove... 阅读全文

posted @ 2018-06-28 21:27 sichenzhao 阅读(766) 评论(0) 推荐(0)

Yarn Scheduler Load Simulator (SLS)-调度算法选择源码解析
摘要:如何为SLS选择调度算法。这里谈下本人的理解sls通过slsrun.sh脚本来运行,其中要加入配置文件sls-runner.xml。在该配置文件中,有关于调度算法的配置: org.apache.hadoop.yarn.server.resourc... 阅读全文

posted @ 2018-06-23 15:03 sichenzhao 阅读(215) 评论(0) 推荐(0)

Yarn Scheduler Load Simulator (SLS)-调度模拟器
摘要:YARN的调度器和调度算法总是一个让人感兴趣的方面。比如FIFO,capacity和fair调度算法。每个调度算法都有其自己的特征,而调度的决策受许多因素影响,如公平性、容量保证和资源的可靠性等。在部署一个调度算法到生产集群之前,评估一个调度算法是非常重要的,不幸的是... 阅读全文

posted @ 2018-06-20 20:22 sichenzhao 阅读(743) 评论(0) 推荐(0)

k8s-kubectl功能源码分析
摘要:kubernetes里的命令行接口叫做kubectl,用来控制kubernetes集群,我们要追踪的命令是kubectl create -f-会从指定文件创建k8s资源,我们要创建的资源是使用了nginx基础镜像的单副本pod。首先是kubectl命令的创建,在/cm... 阅读全文

posted @ 2018-06-07 15:12 sichenzhao 阅读(509) 评论(0) 推荐(0)

k8s-kubelet功能源码分析
摘要:kubelet这是k8s中的一种服务,每个节点上都会运行kubelet服务进程,默认监听10250端口,接收并执行master发来的指令,管理pod和pod中的容器。定期向master节点汇报资源使用情况。一、kubelet启动流程kubelet是作为一个cmd命令运... 阅读全文

posted @ 2018-06-06 19:21 sichenzhao 阅读(261) 评论(0) 推荐(0)

k8s源码架构目录分析
摘要:api: 输出接口文档用,基本是json源码build:构建脚本cmd:所有的二进制可执行文件入口代码,也就是各种命令的接口代码。pkg:项目diamante主目录,cmd只是接口,这里是具体实现。cmd类似业务代码,pkg类似核心plugin:插件test:测试相关... 阅读全文

posted @ 2018-06-06 16:29 sichenzhao 阅读(385) 评论(0) 推荐(0)

YARN-client提交任务处理过程
摘要:Client向RM提交任务的过程大致分为七步,如下图:1. Client向RM发出请求2. RM返回一个ApplicationID作为回应3. Client向RM回应Application Submission Context(ASC)。ASC包括Applicatio... 阅读全文

posted @ 2018-06-05 21:38 sichenzhao 阅读(960) 评论(0) 推荐(0)

导航