streampark 的基本使用
好东西需要分享,自从公司用上flink以来,一直没有找到合适的作业处理平台,直到streamx的出现,即streampark的前身叫streamx;
接下来不多说,直接上手一顿操作;
安装docker,docker-compose
我是使用docker来安装的,一个字,快;
安装文档地址:https://docs.docker.com/engine/install/centos/
简单贴几个步骤:
Set up the repository
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
Install Docker Engine
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
Start Docker
sudo systemctl start docker
安装好了,用sudo运行的命令,给普通用户赋予权限吧
Create the docker group.
sudo groupadd docker
Add your user to the docker group.
sudo usermod -aG docker $USER
activate the changes to groups:
newgrp docker
好了,再安装docker-compose
yum install docker-compose
create a symbolic link
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
安装streampark
官方的安装文档:https://streampark.apache.org/zh-CN/docs/user-guide/docker-deployment
也简单贴几个步骤吧,不想看文档直接看这里就行:
wget https://raw.githubusercontent.com/apache/incubator-streampark/dev/deploy/docker/docker-compose.yaml
wget https://raw.githubusercontent.com/apache/incubator-streampark/dev/deploy/docker/.env
docker-compose up -d
几条命令一把嗦,好了,访问10000端口就好了,so easy;
哦,这里docker-compose.yaml里的version版本可能会不对,报错,改一下就好了,下载下来的version: ‘3.8’,改成version: ‘3.3’;
同时这里安装会自动安装一个flink-session 集群,供你去进行flink的任务使用;后面配的flink home ,flink version 就是这个咯;
前面啥配置没有改,用的是h2数据库,实际使用我们一般会用mysql作为数据库,改下配置就好了:
wget https://raw.githubusercontent.com/apache/incubator-streampark/blob/dev/deploy/docker/mysql/.env
vim .env
重新下个 .env文件,这是个隐藏文件,用ls -a 可以看到
修改对应的连接信息
HUB=apache/streampark
TAG=latest
TZ=Asia/Shanghai
SPRING_PROFILES_ACTIVE=mysql
SPRING_DATASOURCE_URL=jdbc:mysql://localhost:33064/streampark?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8
SPRING_DATASOURCE_USERNAME=root
SPRING_DATASOURCE_PASSWORD=root
FLINK=flink1.16.0
FLINK_PROPERTIES=jobmanager.rpc.address: jobmanager
FLINK_BASE_IMAGE=flink:1.16-scala_2.12-java8
COMMAND=/bin/sh -c "wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.30.tar.gz && tar -zxvf mysql-connector-java-8.0.30.tar.gz && cp mysql-connector-java-8.0.30/mysql-connector-java-8.0.30.jar lib && bash bin/startup.sh"
这里也可以修改一下flink的版本,注意同时这里的命令也会下载一个mysql的驱动;
docker-compose up -d
删了之前的再启动一下就好了;
基本使用
再说说基本使用情况吧
setting
这里配flink的版本
这里配你要执行任务的flink集群的地址,
project
这里是CI/CD用的
配好一个git的项目,然后点build,就会执行自动构建了,会clone项目,然后用mvn打包;这里可能会遇到打包依赖下载不下来,就要改下mvn的settings文件了,加个aliyun的mirror就好了;
找到配置文件
af5d92cd40e9:/# find -name "settings.xml"
./usr/share/java/maven-3/conf/settings.xml
增加mirror
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>https://maven.aliyun.com/repository/public</url> </mirror>
这样再执行构建就成功了;
application
这里就是操作你的作业任务了,我试了一下sql,jar,以及前面project中cicd的jar的任务
在线写sql也很好用,可以添加依赖,sql也有提示;nice!
好了,分享就到这里