Skip to content

Latest commit

 

History

History
42 lines (27 loc) · 2.27 KB

cluster-deploy.md

File metadata and controls

42 lines (27 loc) · 2.27 KB

部署集群

在 Flink 集群部署 Alink,需要部署几个 Jar 包(本文会有一个部分专门讲述如何获取)。 对于不同 Flink 集群环境,方式有些区别,本文主要讨论 Standalone 集群和 Kubernetes 集群。

获取集群部署所需Jar包

由于 Alink 可以通过 Java 和 Python 两种方式提交,建议在集群部署的时候将相关 Jar 包一起部署上去。

尽管 Alink Java 没有单独提供集群部署所需 Jar 包的下载,但它们与 PyAlink 所使用的一致,所以可以从 PyAlink 的lib目录中获取。 具体方式如下:

按照Alink快速开始 安装好 PyAlink, 执行命令python3 -c "import os; import pyalink; print(os.path.join(pyalink.__path__[0], 'lib'))", 在 Python 标准输出中即可拿到对应的 PyAlink lib目录的路径。

在安装完成文件系统和Hive后,lib目录的结构如下图所示:

在Standalone集群上部署

将前面获取到的lib目录中的 Jar 包拷贝到 Flink 的lib目录后,然后按下面步骤启动 Flink 集群即可:

  1. 在 Flink 配置中增加:classloader.resolve-order: parent-first,通常在配置文件conf/flink-conf.yaml里添加。
  2. 在 flink-[版本号]目录下,运行 bin/start-cluster.sh 启动集群。
  3. 运行bin/taskmanager.sh start 可以增加 TaskManager。

更多内容可以参考:https://ci.apache.org/projects/flink/flink-docs-stable/ops/deployment/cluster_setup.html

在Kubernetes集群上部署

将前面获取的目录中的 Jar 包放置进 Docker 镜像中,并将以下命令添加进 DockerFile,打包镜像即可。

ADD $PY_ALINK_LIB_FOLDER/* $FLINK_LIB_DIR/

使用Flink官方提供的部署方式,其中增加 classloader.resolve-order: parent-first 配置项。

参考:https://ci.apache.org/projects/flink/flink-docs-stable/ops/deployment/kubernetes.html