- 博客(23)
- 收藏
- 关注
原创 flink on k8s native 再次实践
基于flink 1.13.2版本做的实践本次主要实践flink on k8s native 的两种方式, 分别是sesion 和 application方式第一步: k8s环境准备 1, 创建一个namespace kubectl create namespace flink-session-cluster-test-1213 2, 新建一个serviceaccount, 用来提交flink的任务 kubectl create serviceaccount flink -n
2021-12-15 18:05:53
4351
7
原创 使用arthas在线诊断flink的那些事
最近在使用arthas诊断工具, 诊断java服务的一些问题, 突然想到能不能使用arthas诊断flink的jobManager和taskManager呢? 答案是可以的.下载tunnel-server的jar包使用的是Arthas Tunnel方式.第一步: 先启动一个 tunnel-server服务, 在服务器:10.0.16.1 执行 java -jar -Dserver.port=4433 -Darthas.server.port=7766 arthas-tunnel-server-
2021-09-10 14:14:22
1450
7
原创 flink1.13 on native k8s
flink 版本: 1.13.0 k8s 版本: v1.16.2 本次试用都是在default的namespace下操作的, 如果有需要可以 通过 -Dkubernetes.namespace=default来指定namespace, 并在在kubectl操作时, -n来指定方案一: 基于flink session来实现 先创建一个flink session. 此时由于没有任务的提交, 是没有taskManager的./data/flink-1.13.0/bin/kubern..
2021-05-13 17:01:52
1764
5
原创 flink流元素理解
StreamElement 为flink的数据流的流元素的接口类. 其有四个子类.StreamRecord: 1, 封装了每一个元素, 视为一条数据,或者是一个事件.LatencyMarker: 1, 用来评估数据流转DAG的延时, 用来监控数据处理延时使用.StreamStatus: 1, 用来通知task是否会继续接收到上游的记录或者Watermark.StreamStatus在数据源算子中生成,向下游DAG传播. 有两种状态, 一种为空闲状态,一种为活动状态Watermark:
2021-05-07 15:18:04
266
原创 flink资源篇之内存管理
在谈及Flink的内存管理时, 必须要回答一个问题. Flink为什么需要自己管理内存, 而不是使用JVM来管理内存? 现在通常的回答是: 1) jvm存储对象密度低. 2) full gc 会极大的影响性能, 可能达到秒级甚至分钟级. 3) OOM问题等.1. JobManager/TaskManager的内存模型:官方文档源码中的位置为:org.apache.flink.configuration.TaskManagerOptionsorg.apa..
2021-04-29 17:37:39
893
原创 使用grafana+prometheus监控flink任务
1,软件安装:grafana+prometheus 安装教程请参考文章: 安装教程2,flink配置方案一: 修改文件conf/flink-conf.yamlmetrics.reporter.promgateway.class: org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter#这里填写安装的prometheusGateway的ipmetrics.reporter.promgateway.host
2021-04-22 17:01:01
3315
原创 在已有的k8s中部署rancher
k8s安装racher接上文安装ingress之后, 需要先安装ingress-nginx, 链接安装需要Helm, 请自行安装Helm.k8s的master节点是: 10.6.14.23第一步: 安装证书vim cert.sh#!/bin/bash -ehelp (){ echo ' ================================================================ ' echo ' --ssl-domain: 生成ssl
2021-03-16 20:11:30
3144
原创 k8s安装ingress-nginx
k8s安装ingress-nginx的详细步骤master节点: 10.6.14.23第一步: 准备yaml文件1,ingress-nginx我们选择0.20.0版本 https://github.com/kubernetes/ingress-nginx/tree/nginx-0.20.0mkdir ingress-nginx#替换defaultbackend-amd64镜像地址sed -i 's#k8s.gcr.io/defaultbackend-amd64#registry.cn
2021-03-16 16:18:06
1213
原创 flink提交到yarn时, 自定义container的提交命令
在flink提交命令到yarn时,有时需要添加自定义的命令或者参数, 那么可以使用-yD yarn.container-start-command-template 来实现.-yD yarn.container-start-command-template="%java% %jvmmem% %jvmopts% %logging% -Dkafka.servers=xx.xx.xx.xx:9092,xx.xx.xx.xx:9092,xx.xx.xx.xx:9092 -Dflink.job.yarn.
2021-03-11 10:55:54
485
原创 docker-Dockerfile
创建一个文件为Dockerfilemkdir testcd testtouch Dockerfilevi Dockerfile修改Dockerfile#格式:FROM <image>或 FROM <image>:<tag>#第一条指令必须为FROM指令,并且,如果在同一个Dockerfile中创建多个镜像时,可以使用多个FROM指令(每个镜像一次)FROM anapsix/alpine-java:8_server-jre_unlimited#指定维护者
2021-03-05 15:15:04
142
原创 docker-基础操作篇
查看本地镜像 docker images docker images -a从镜像仓库中搜索镜像,并找到自己需要的版本或者tag信息https://hub.docker.com/u/library拉取镜像 docker pull mysql:5.5运行镜像 docker run --name mysql01 -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql
2021-03-05 11:36:43
145
1
原创 flink on yarn时的 slot,taskManager,jobManager,parallelism,container之间的关系
在使用命令提交任务到yarn时.flink run -m yarn-cluster -ys 2 -p 1 -yjm 1G -ytm 2G -d -yqu default -ynm iot_flink_flow-3812_1 -c cn..IotFileMain iot-flink-sql-runtime-1.0.3-SNAPSHOT.jar -jsonFile ./iot_flink_flow-3812_1.txtys 表示为一个taskManager的slot大小yjm 表示为jobMan
2021-02-24 17:19:01
1053
原创 flinkSql 时间窗口到达前 输出结果
flinkSql的时间窗口,可以将一段时间内的数据进行聚合计算. 但是有时, 我们希望可以在时间窗口截止前, 就可以看到结果. 一种方案是: 使用嵌套的时间窗口, 另一种方案是, 在代码进行配置.我们这里说下如何在代码里进行配置比如, 时间窗口为 12小时-12小时 (24小时为一个窗口), 但是希望每5分钟就需要输出一次结果. 配置如下: Configuration conf = new Configuration(); conf.setString( "ta
2020-08-28 14:51:34
2058
4
原创 flinkSql中自定义时间窗口开启时间
flinkSql中,默认的时间窗口开始时间为0时0分. 有时我们期望的窗口开始时间早上8点到第二天8点, 或者是中午12点到第二天的中午12点, 等等.本文以 第一天中午12点到第二天中午12点 为一个统计周期为例.数据的事件时间不变, 那么我们可以让窗口往后或者往前移12个小时, 即可满足. 具体的sql如下. CREATE TABLE t_1144_1 ( deviceId varchar , ba_name integer, be_age integer, e
2020-08-28 14:32:55
2730
4
原创 flinkSql将嵌套Json映射成source表
flinkSql在遇到复杂的json时,如何映射成表呢? 这里推荐一种方便的方式:嵌套的json格式如下:{ "data":{ "data":{ "mac_value":0, "ad_name":2056, "voice":75, "dataTimeStamp":1598522106830 }, "type":3, "deviceId":
2020-08-28 14:13:18
2312
4
原创 windows安装rocketMq
使用flinksql开发业务的实时任务分析时,业务希望将数据写入到他们的rocketmq中,正好借此机会在windows上安装rocketmq4.2.0. 下载地址: http://rocketmq.apache.org/release_notes/release-notes-4.2.0/下载完成后,解压至需要安装的目录:比如D:\softs\rocketmq-all-4.2.0-bin-release配置比如我的安装目录为:D:\softs\rocketmq-all-4.2.0-bin-rel
2020-08-13 09:48:02
226
原创 flinksql的primary key异常处理
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2020-08-08 14:58:04
7772
1
原创 flink的akka timeout异常处理
flink运行时, 出现akka timeout异常ERROR akka.remote.Remoting - Association to [akka.tcp://flink@xxxxx:36569有可能的原因是 jdk版本不对 升级jdk版本, 将版本(jdk1.8.0_11 )升至jdk1.8.0_221或之后,重新启动集群,重新提交作业,可以正常运行...
2020-08-05 10:13:10
1818
原创 Flink使用RestApi
flink是一个非常好用的流任务计算框架, 这次我们来试用flink的restApi来提交任务.1, 上传jar包 public static boolean uploadJar( File jarFile) { RequestBody requestBody = new MultipartBody.Builder() .setType(MultipartBody.FORM) .addFormDataPart("fil
2020-08-05 09:51:30
5386
3
原创 quicksql安装与调试
quicksql是360开源出来的可以跨数据源进行sql操作的计算框架. 底层使用spark/flink实现.下载 quicksql安装包 https://github.com/Qihoo360/Quicksql/tree/branch-0.7解压缩安装包 cd /data/qsql/opt tzr -zxvf qsql-0.7.0.tar.gz cd qsql-0.7.0修改配置 vim metadata.properties修改以下内容 meta.storage.mod
2020-08-04 20:19:51
1452
1
原创 解决zookeeper占用8080端口
安装zookeeper后, 发现端口8080被占用, 分享如何解决.zookeeper部署后, 3.5以后的版本, 会自动占用8080端口. 需要修改配置文件. a,查看端口占用 netstat -nap|grep 8080 b,查看端口占用的进程 ps -aux |grep 27672 发现, 8080端口被zookeeper占用. 修改配置文件 vim /usr/local/zookeeper/zookeeper-3.5.8/conf/zoo.cfg
2020-08-04 19:41:45
912
原创 在centos7上安装mysql
记录mysql的安装过程, 包括 卸载原有的mysql与mariadb, 安装mysql, 配置mysql, 添加用户与分配权限等.1, 卸载原有的mysql 与 mariadb1.1 卸载mariadba,查看系统已有的mariadb rpm -qa|grep mariadbb,卸载mariadb rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_641.2 卸载mysqla,查看系统已有的mysql rpm -qa | gr
2020-08-04 19:28:27
408
原创 分享: 解决mysql死锁的思路
分享: 解决mysql死锁的思路问题: 使用springBoot做单元测试时,出现mysql死锁的问题.### The error occurred while setting parameters### SQL: INSERT INTO t_escheduler_queue_used_info .......Caused by: java.sql.SQLException: Lock w...
2019-11-06 19:29:52
425
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人