StreamX部署详细步骤
之前学习StreamX时留下的笔记,在这里做记录以便后续查看
一、StreamX是什么?
- 一个神奇的开源框架,让flink流处理更简单
- 国内开发
- 极大降低学习成本和开发门槛,开发者只用关心最核心的业务
StreamX标准化了配置、开发、测试、部署、监控、运维的整个过程,打造一个一站式大数据平台,流批一体,湖仓一体的解决方案
StreamX的特色:
- 开发脚手架
- 多版本flink支持(1.12+)
- 一系列开箱即用的connectors
- 支持项目编译功能(maven)
- 在线参数配置
- 支持Application模式,Yarn-Per-Job模式启动
- 快捷的日常操作(任务启动、停止、savepoint,从savepoint模式恢复)
- 支持火焰图
- 支持notebook(在线任务开发)
- 项目配置和依赖版本化管理
- 支持任务备份、回滚(配置回滚)
- 在线管理依赖(maven pom)和自定义jar
二、安装部署StreamX
1、环境要求

2、准备环境
2.1、linux系统
2.2、JDK
2.3、maven
解压
替换为阿里云镜像
软连接
sudo ln -s /opt/module/apache-maven-3.8.5/bin/mvn /usr/bin/mvn
2.4、Node.js
console 前端部分采用 vue 开发,需要 nodejs 环境,下载安装最新的 nodejs 即可。
不同版本对应下载方式:
https://github.com/nodesource/distributions
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -sudo yum install -y nodejs
查看node.js版本
node --version
2.5、安装MySQL
参考中文章安装MySQL步骤
2.6、安装Flink
参考官方文档
3、安装StreamX
3.1、下载StreamX
cd /opt/software
wgethttps://github.com/streamxhub/streamx/releases/download/v1.2.2/streamx-console-service1.2.2-bin.tar.gz
3.2、解压安装包
tar -zxvf streamx-console-service-1.2.2-bin.tar.gz -C /opt/module
3.3、部署StreamX平台
1、在Mysql中创建数据库
CREATE DATABASE `streamx` CHARACTER SET utf8 COLLATE utf8_general_ci;
2、初始化表(在mysql数据库中)
use streamx;
source /opt/module/streamx-console-service-1.2.2/script/final.sql
3、配置连接信息
vim /opt/module/streamx-console-service-1.2.2/conf/application.yml
# 配置默认数据源
primary: primary
datasource: # 数据源-1,名称为 primaryprimary: username: root password: aaaaaa driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://hadoop162:3306/streamx?useUnicode=true&characterEncoding=UTF8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8...
streamx: # HADOOP_USER_NAME hadoop-user-name: atguigu # 本地的工作空间,用于存放项目源码,构建的目录等. workspace: local: /opt/module/streamx_workspace
4、启动server
/opt/module/streamx-console-service-1.2.2/bin/startup.sh
5、启动成功后 jps会看到StreamXConsole进程
6、浏览器登录系统
ip:10000
默认用户名:admin 密码:streamx
Note:
1、可以搭建一个gitlab代码平台,和StreamX进行联动,这样的话就可以省略之前将jar上传到服务器对应目录下然后通过flink run命令启动jar包了,可以直接通过SteamX的页面直接对gitlab的代码进行build编译打包并运行。
2、集成了任务报警功能可以发送邮件进行报警提醒
3、可以在页面上执行FlinkSql并进行相应配置(可以自动下载依赖jar包)
