前情提示:
由于本文写的时间比较久了,新版本的dinky目录结构和这篇文章有一些差异,所以这里编写一个前情提示来标注下,了解这个差异按照下面的文档进行部署安装也是没问题的。
主要的差异点有:
1、旧版本的所有配置在application.yml文件中,新版本使用了springboot的active写法,所以原来在application.yml文件中修改mysql,现在需要把application.yml文件中的active修改为mysql,然后在文件中修改mysql的信息 2、旧版本的自带flink是放在${DINKY_HOME}/plugins目录下,新版本放在了${DINKY_HOME}/extends目录下。
正文部分
在前两篇文章里面我们介绍了使用docker的方式部署dinky进行体验,细心的同学可能会看到,部署的dinky里面,flink的搭配版本是flink1.14的,在实际的生产环境中,我们使用到的flink版本可能会更高一些,例如我们这里使用的flink版本是:flink1.17,如下图:
所以在真实的环境中,其实我们除了k8s容器化环境之外,我们一般都是直接使用安装包的方式部署Dinky。所以本文的话,我们介绍下如何使用安装包的方式部署Dinky,下面直接开始。
1)准备flink环境
这里的flink的环境的话我们需要单独部署一个,因为dinky是完全独立于flink之外的,但是我们又需要依赖这里的flink环境,所以首先我们需要有一个flink的环境,确认这个环境的版本。例如这里的话,我们的flink版本是1.17,安装flink的环境可参考本文《Flink流处理系列(二)standalone集群安装》。
这里我们的flink安装的是一个单机的standalone版本,安装的位置是:/home/pubserver/flink-1.17.0/
2)下载dinky安装包
这里的话我们需要去官网下载dinky的安装包,官网下载地址是:dinky官网下载。这里的话,我们可以下载一个最新版本即可:
3)准备一个dinky数据库
这里的话和前面的文章一样,首先准备一个mysql,然后创建一个名为dinky的库,然后在下载的安装包里面找到dinky.sql,把这个sql文件执行到dinky的库里面去:
执行完毕之后,就可以看到具体的数据库表信息了。
4)把dinky安装包上传到服务器上
这里我们要开始部署了,所以这里的话,我们需要把dinky的安装包上传到服务器上,并且解压,这里的话我们上传的路径是:/home/pubserver/dlink-release-0.7.3。
5)修改auto.sh文件
前面我们提到这里使用的flink版本是1.17,因此这里的话,我们需要把这里的dinky版本关联的flink版本修改为1.17。所以这里需要修改这个auto.sh文件,进入到这个文件,可以看到这里关联的flink版本是1.14,如下图:
我们把14修改为17,如下图:
然后保存。
此时的话,当dinky启动之后,他就会自动去找${DINKY_HOME}/plugins下面的flink1.17版本的包:
6)修改application.yml文件
这里的话我们需要修改${DINKY_HOME}/config/application.yml文件,如下图:
主要修改的内容是mysql相关的信息,如下图,修改为我们的mysql信息即可:
7)添加依赖
我们在前面介绍过,dinky是依赖flink的,但是本身dinky是没有flink的依赖包的,所以这里的话我们需要把flink的依赖包添加到dinky的plugins里面去,例如我们这里使用的flink1.17,那么就需要把flink1.17的依赖包放到${DINKY_HOME}/plugins/flink1.17/dinky/目录下,所以执行如下的命令
#进入到flink的依赖包目录下: cd /home/pubserver/flink-1.17.0/lib
此时我们可以看到有很多依赖包:
#把依赖包放到dinky目录去 cp -r *.jar /home/pubserver/dlink-release-0.7.3/plugins/flink1.17/dinky/
然后我们进入到dinky的plugins的flink1.17目录下,可以看到这些包都被拷贝进来了,如下图:
8)启动dinky
此时我们进入到${DINKY_HOME}目录下启动dinky,启动命令是:
./auto.sh start
可以看到启动成功了,并且flink的关联版本是1.17.
9)测试访问
接着我们测试访问下,这里我们访问:http://${ip}:8888端口
可以访问成功,没有任何问题。
以上就是我们使用安装包独立部署dinky的案例,这种方式也是在生产上常用的案例。
还没有评论,来说两句吧...