streampark 的基本使用

midoll 623 2022-03-29

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的版本
image-1672390038887
这里配你要执行任务的flink集群的地址,
image-1672390130241

project

这里是CI/CD用的
image-1672389619639
image-1672389578710
配好一个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的任务
image-1672390340059

在线写sql也很好用,可以添加依赖,sql也有提示;nice!

好了,分享就到这里


# flink # streampark