Spark实时监控yarn指标:实时计算: sparkstreaming、flinkyarn:30T 2000corespark、flink、mr需求: 实时监控yarn资源使用情况项目流程:数据采集:采集yarn指标数据 =》 yarn api => 用户自己开发代码 jar数据处理:实时处理  =》sparkstreaming数据输出:mysql、olap =》 clickhouse数据可视化:superset、dataeaseolap  vs oltp  毫秒级别
olap:clickhouse、doris、tidb、phoenix
oltp:事务 mysql、链路:yarn:app.jar [采集yarn数据] =》 kafka =》sparkstreaming =》 clickhouse =》superset数据格式:1.一行一行发送数据: 文本数据【分割符即可】1 2 3 4 5  空格1,2,3,4,5 ,2.json数据{"applicationid":1,"meme":4G,“name”:"xxx  asd  x"}性能问题:json 占用io 、好处:解析方便1.采集数据:1.yarn api 采集yarn信息 :1.采集yarn 作业运行状态:1.ACCEPTED2.RUNNING2.yarn api如何使用?1.YarnClient2.YarnApplicationState3.ApplicationReport:包含yarn上每个作业的详细信息:程序id、执行引擎、开始时间、结束时间、mem、cpu、队列、名字3.数据发送kafka生产者api :2.实时数据处理
3.数据可视化spark-sql  --master yarn --jars /home/hadoop/software/mysql-connector-java-5.1.28.jar --driver-class-path /home/hadoop/software/mysql-connector-java-5.1.28.jar公司:
kafka-manger:
kafka-eager:查看kafka topic:kafka-topics.sh --list --zookeeper bigdata32:2181,bigdata33:2181,bigdata34:2181/kafka创建topic:
kafka-topics.sh --create --zookeeper bigdata32:2181,bigdata33:2181,bigdata34:2181/kafka --topic yarn-info --partitions 3 --replication-factor 1控制台 test:
kafka-console-consumer.sh --bootstrap-server bigdata32:9092,bigdata33:9092,bigdata34:9092 --topic  yarn-info作业:1.安装clickhouse:https://clickhouse.com/docs/en/install/#from-rpm-packages2.实时数据处理1.sparkstreaming :  微批1.souce kafka  : 10s一个批次  =》计算结果数据延迟性 该如何界定?2.todo => 计算监控指标 =》 不做3.sink clickhouse  =》 yarn指标 利用 clickhouse计算能力进行计算eg: ok =》 业务发展  =》 计算实时指标1.yarn的某个队列的当前正在运行的作业数量2..yarn的当前申请资源的作业的数量3456解决: 略微属于 实时数仓1.souce kafka  : 10s一个批次  =》计算结果数据延迟性 该如何界定?2.sink clickhouse  =》 yarn指标 利用 clickhouse计算能力进行计算指标:clickhouse  => superset实时数仓:odsdwsrpt实时数仓:直接把 宽表数据 写出到 clickhouse  利用clickgouse 计算能力 去解决 业务需求多的问题dws =》 clickhouse代码:sparkstreaming :souce  kafkatodo nosink clickhosue  jdbc :1. jdbc  con2. df  jdbcdata  =》 clickhousetable columnsclickhouse:1.安装部署2.使用 =》 mysqlmysql  rdbms  vs  nosql hbase  redisclickhouse  列式存储1.官网 https://clickhouse.com/clickhouse2.安装部署yum install -y yum-utilsyum-config-manager --add-repo https://packages.clickhouse.com/rpm/clickhouse.repoyum install -y clickhouse-server clickhouse-client/etc/init.d/clickhouse-server startclickhouse-client1.table
CREATE TABLE bigdata.user_info (id String ,
name String,age String,dt String
) ENGINE = MergeTree()
PARTITION BY dt
PRIMARY KEY (dt,id,name,age)
ORDER BY (dt,id,name,age) SETTINGS index_granularity = 8192insert into bigdata.user_info values('1','zhangsan','30','20230206'),('2','lisi','30','20230206');3.dbeaver 进行远程连接 :jdbc1.clickhouse  运行任何机器 ip 都可以访问2.dbeaver :ssh  bigdata34clickhouse  =》 本机连接maven 官网仓库地址:https://mvnrepository.com/远程连接:1.vi /etc/clickhouse-server/config.xml2.把<listen_host>::</listen_host>的注释打开3.重启ClickHouse服务clickhouse stopclickhouse startpom:
添加 clickhouse依赖存在问题:
1.Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/util/JacksonFeaturespark运行过程中需要 xml依赖2.java.sql.SQLException: No suitable driver没有clickhouse驱动CREATE TABLE bigdata.yarn_info_dbhappy (
applicationid String,
name String,
applicationtype String,
user String,
starttime String,
finishtime String,
memorysize String,
virtualcores String,
containers String,
state String,
queue String,
todaytime String,
url String
) ENGINE = MergeTree()
PARTITION BY queue
PRIMARY KEY (applicationid,name,applicationtype,user,starttime,finishtime,memorysize,virtualcores,containers,state,queue,todaytime,url)
ORDER BY (applicationid,name,applicationtype,user,starttime,finishtime,memorysize,virtualcores,containers,state,queue,todaytime,url) SETTINGS index_granularity = 81923.数据可视化
clickhouse:1.default用户 =》 创建用户权限vim /etc/clickhouse-server/users.xml<access_management>1</access_management>2.进入clickhouse里面CREATE USER my_user IDENTIFIED BY 'password';CREATE USER root IDENTIFIED BY '123456';GRANT ALTER on *.* TO root;
superset : clickhouse1.原生方式部署  bigdata340.安装clickhouse驱动pip3 install  sqlalchemy-clickhouse -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com1.sourceclickhouse://root:123456@bigdata34:8123/bigdata2.docker  bigdata33pip3 install clickhouse-connect -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.comclickhousedb://root:123456@bigdata34:8123/bigdata1.试着做一下可视化需求:1.yarn正在运行作业的明细表2.yarn正在运行作业内存使用情况3.yarn正在运行作业任务数4.yarn正在申请作业任务数5.yarn正在运行作业内存使用top10、运行时长top10数据:clickhouse
superset:sql5sql=》 clickhouse 语法1.yarn正在运行作业的明细表 =》 yarn正在运行作业 最新时间点的 app 信息where :1.正在运行2.最新时间点select
applicationid,
name,
applicationtype,
user,
toDateTime(intDivOrZero(toInt64OrZero(starttime),1000)) as s_time,
dateDiff('minute', toDateTime(intDivOrZero(toInt64OrZero(starttime),1000)),toDateTime(todaytime) ) as diff,
intDivOrZero(toInt64OrZero(memorysize),1024) as user_mem,
virtualcores,
containers,
state,
queue,
todaytime,
url
from bigdata.yarn_info_dbhappy
where
state='RUNNING'
and
todaytime =(selectmax(todaytime) as tfrom bigdata.yarn_info_dbhappywhereformatDateTime(toDateTime(todaytime),'%Y-%m-%d')=formatDateTime(now(),'%Y-%m-%d')
)2.yarn正在运行作业内存使用情况=> yarn正在使用的 总内存
select
cast(todaytime_alias,'String') as dt,
sum(user_mem) as all_g
from
(selecttoDateTime(todaytime) as todaytime_alias,intDivOrZero(toInt64OrZero(memorysize),1024) as user_mem,namefrom  bigdata.yarn_info_dbhappywherestate='RUNNING'group bytodaytime_alias,user_mem,name
) as a
group by
dt;注意:1.环境问题superset =》docker  【常用的第三方框架,docker部署 docker】docker pull xxxdocker  run  xxdocker ps -adocker exec -it xxx  bashclickhouse =>docker小问题:clickhouse tcp 端口: 9000  =》 namenode对外提供服务 9000冲突superset docker =》 linux 8080-》8088端口  =》 zookeeper端口冲突对外提供服务 2181tcp端口 8080superset、clickhouse  bigdata31 => mysql
docker =>docker hub补充:kill yarn 上面的作业:yarn application -kill application_1675816347294_00063.正在运行的任务数据
select
cast(todaytime_alias,'String') as dt,
count(name) as cnt
from
(selecttoDateTime(todaytime) as todaytime_alias,namefrom  bigdata.yarn_info_dbhappywherestate='RUNNING'andtodaytime =(selectmax(todaytime) as tfrom bigdata.yarn_info_dbhappywhereformatDateTime(toDateTime(todaytime),'%Y-%m-%d')=formatDateTime(now(),'%Y-%m-%d')
)group bytodaytime_alias,name
) as a
group by
dt;数据采集:采集yarn指标数据 scala 代码
数据处理:Spark作业   scala 代码
数据可视化:superset1.任务进行部署不需要定时调度:数据采集:一直运行   shell数据处理:一直运行   shellxxl2.监控定时监控:1min1.app2.报警:电话短信邮箱钉钉、企业微信任务部署:1.采集数据
java -cp ./yarn-log.jar \
com.bigdata.task.YarnLogTask \
"bigdata32:9092,bigdata33:9092,bigdata34:9092" "yarn-info"2.数据处理
spark-submit \
--master yarn \
--class com.bigdata.App \
--conf "spark.kafka.group.id=yarn01" \
--conf "spark.kafka.topic.name=yarn-info" \
--conf "spark.port.maxRetries=100" \
--driver-memory 1G \
--executor-memory 1G \
--executor-cores 2 \
--num-executors 1 \
/home/hadoop/project/yarn/output/spark-yarn-monitor.jar任务监控:xxl 1min1.采集数据监控2.数据处理监控task 挂了:1.监控 pid2. task 挂了3. 报警4.任务拉起脚本【不做了】
1.采集数据监控1.报警2.监控pid作业:1.任务拉起脚本?2.整理案例<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-assembly-plugin</artifactId><version>3.0.0</version><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs></configuration><executions><execution><id>make-assembly</id><phase>package</phase><goals><goal>single</goal></goals></execution></executions></plugin></plugins></build>

Spark实时监控yarn指标:相关推荐

  1. 基于大数据的Uber数据实时监控(Part 1:Spark机器学习)

    导言 据Gartner称:到2020年,25亿辆联网汽车将成为物联网的主要对象.联网车辆预计每小时可以生成25GB的数据,对这些数据进行分析实现实时监控.大数据目前是10个主要领域之一,利用它可以使城 ...

  2. 【Flink 监控系列】Flink on yarn 任务实时监控最佳实践(Prometheus + Grafana)打造企业级监控方案

    我们都知道 Flink 任务是一个 7*24 小时不停运行的任务,所以对于任务的实时监控就显得尤为重要,因为任务运行的状态对于我们来说是一个黑盒,比如任务是否挂掉,是否存在反压,使用的内存,CPU 等 ...

  3. Spark实时进度查询

    Spark实时进度查询 大家好,我是一拳就能打爆帕特农神庙柱子的猛男 相信大家都有需求要查询Spark程序执行的进度,所以今天给大家带来Spark实时进度查询的方式整理.我在Spark官网找到了关于S ...

  4. 自带的jvm监控不准_如何实时监控 Flink 集群和作业?

    Flink 相关的组件和作业的稳定性通常是比较关键的,所以得需要对它们进行监控,如果有异常,则需要及时告警通知.本章先会教会教会大家如何利用现有 Flink UI 上面的信息去发现和排查问题,会指明一 ...

  5. Spark 应用监控告警-Graphite_exporter

    Spark 应用监控告警-Graphite_exporter Spark监控和工具 Web界面 事后查看 REST API 度量 高级工具 一.下载graphite_exporter 1.1 修改gr ...

  6. 看大众点评如何通过实时监控系统CAT打造7*24服务

    为什么80%的码农都做不了架构师?>>>    看大众点评如何通过实时监控系统CAT打造7*24服务 2015-06-08  尤勇  高可用架构 https://github.com ...

  7. 用Spotlight on windows 实时监控Windows服务器性能

    用Spotlight on windows 实时监控Windows服务器性能 2010-02-03 10:30:25|  分类: else |  标签: |字号大中小 订阅 用Spotlight on ...

  8. 5分钟完成业务实时监控系统搭建,是一种什么样的体验?

    简介:道旅需要构建一个全面的指标监控系统,既包括系统的业务指标:如各类业务类型的请求数变化,不同供应商信息的变化,客户请求的明细大盘,各酒店请求量的排名变化,不同城市的订单转换率分析报表等:也包括系统 ...

  9. 实时监控:基于流计算 Oceanus ( Flink ) 实现系统和应用级实时监控

    作者:吴云涛,腾讯 CSIG 高级工程师 本文描述了如何使用腾讯云大数据组件来完成实时监控系统的设计和实现,通过实时采集并分析云服务器(CVM)及其 App 应用的 CPU和内存等资源消耗数据,以短信 ...

最新文章

  1. while循环,递进,linux按行读入并按数组存储
  2. python处理字符串数组慢_Python字符串处理 - str/bytes
  3. 【codevs1026】逃跑的拉尔夫,广搜的胜利
  4. 我问你as3中 0.2 + 0.1 ==?
  5. msm8953抓取audio kernel dsp log
  6. 【JOURNAL】Greeting via Connexion on Air in Lufthansa并一些祝福
  7. WebGrid 在asp.net mvc中的使用和理解(译)
  8. 无法修改计算机时间权限,无法修改系统时间怎么办
  9. 在类中找不到 main 方法, 请将 main 方法定义为: public static void main(String[] args)
  10. 亚马逊工资翻倍!本地人士担忧:房价又要...
  11. 贵阳骑龙村:一根小香葱闯出大市场
  12. html5 驾考 答题样式,驾考科目一答题规律
  13. vue+vant+springboot+netty仿照微信聊天和朋友圈
  14. 高通量测序数据分析:RNA-seq
  15. 【论文阅读】Alignment-Robust Cancelable Biometric Scheme for Iris Verification
  16. python实现windows ie代理切换
  17. Linux卸载安装bind,Bind编译安装详解
  18. 情感驿站 | 真正厉害的人从不说教
  19. 云计算课程 DAY 1
  20. 尚硅谷JavaScript基础实战丨JS入门到精通全套完整版 P15

热门文章

  1. 插入vba代码到excel文件
  2. 通用技术专利申请步骤是什么呢?
  3. [Widget]Android小票打印,蓝牙打印、固定IP打印、黑白图片打印
  4. 最新显卡驱动及CUDA、CUDNN与tensorflow对应版本关系
  5. 物理实验计算不确定度的小程序c语言
  6. java从入门到精通basic
  7. Visual Studio 2011开发者预览版发布
  8. 换个花样玩C++(8)吃不透内存布局,坑的是自己,万字经验告诉你类的内存布局
  9. 使用Python批量查询ip地址的信息
  10. Pycharm中的报错:ImportError:cannot import name ‘open_code‘ form ‘io‘ 和AttributeError :‘HTMLParser‘ objec