-
Notifications
You must be signed in to change notification settings - Fork 2.8k
[ZEPPELIN-6406] Remove deprecated Flink 1.15/1.16/1.17 shims and add Flink 1.19/1.20 support #5205
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 15 commits
af014ab
674d103
ca86726
550715b
9a26ead
ae88975
5544050
cfff618
537285b
e335f19
28a3350
c1ee8b0
085911f
182d924
a388745
a443153
1d06082
28bae0c
2b856ec
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -27,7 +27,7 @@ limitations under the License. | |
| [Apache Flink](https://flink.apache.org) is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. | ||
| Flink has been designed to run in all common cluster environments, perform computations at in-memory speed and at any scale. | ||
|
|
||
| In Zeppelin 0.9, we refactor the Flink interpreter in Zeppelin to support the latest version of Flink. **Currently, only Flink 1.15+ is supported, old versions of flink won't work.** | ||
| In Zeppelin 0.9, we refactor the Flink interpreter in Zeppelin to support the latest version of Flink. **Currently, only Flink 1.19+ is supported, old versions of flink won't work.** | ||
| Apache Flink is supported in Zeppelin with the Flink interpreter group which consists of the five interpreters listed below. | ||
|
|
||
| <table class="table-configuration"> | ||
|
|
@@ -138,16 +138,15 @@ docker run -u $(id -u) -p 8080:8080 --rm -v /mnt/disk1/flink-sql-cookbook-on-zep | |
|
|
||
| ## Prerequisites | ||
|
|
||
| Download Flink 1.15 or afterwards (Only Scala 2.12 is supported) | ||
| Download Flink 1.19 or afterwards (Only Scala 2.12 is supported) | ||
|
|
||
| ### Version-specific notes for Flink | ||
|
|
||
| Flink 1.15 is scala free and has changed its binary distribution, the following extra steps is required. | ||
| * Move FLINK_HOME/opt/flink-table-planner_2.12-1.15.0.jar to FLINK_HOME/lib | ||
| * Move FLINK_HOME/lib/flink-table-planner-loader-1.15.0.jar to FLINK_HOME/opt | ||
| * Download flink-table-api-scala-bridge_2.12-1.15.0.jar and flink-table-api-scala_2.12-1.15.0.jar to FLINK_HOME/lib | ||
|
|
||
| Flink 1.16 introduces new `ClientResourceManager` for sql client, you need to move `FLINK_HOME/opt/flink-sql-client-1.16.0.jar` to `FLINK_HOME/lib` | ||
| Flink 1.19+ is scala free and has changed its binary distribution, the following extra steps are required. Replace `${FLINK_VERSION}` below with the version of Flink you installed. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
we don't need to mention this as it happened a long time ago.
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @pan3793 Dropped that sentence. |
||
| * Move FLINK_HOME/opt/flink-table-planner_2.12-${FLINK_VERSION}.jar to FLINK_HOME/lib | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. should be
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @pan3793 Wrapped |
||
| * Move FLINK_HOME/lib/flink-table-planner-loader-${FLINK_VERSION}.jar to FLINK_HOME/opt | ||
| * Download flink-table-api-scala-bridge_2.12-${FLINK_VERSION}.jar and flink-table-api-scala_2.12-${FLINK_VERSION}.jar to FLINK_HOME/lib | ||
| * Move FLINK_HOME/opt/flink-sql-client-${FLINK_VERSION}.jar to FLINK_HOME/lib | ||
|
|
||
| ## Flink on Zeppelin Architecture | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -85,14 +85,14 @@ cd zeppelin | |
| Package Zeppelin. | ||
|
|
||
| ```bash | ||
| ./mvnw clean package -DskipTests -Pspark-3.5 -Pflink-1.17 | ||
| ./mvnw clean package -DskipTests -Pspark-3.5 -Pflink-119 | ||
| ``` | ||
|
|
||
| `-DskipTests` skips build tests- you're not developing (yet), so you don't need to do tests, the clone version *should* build. | ||
|
|
||
| `-Pspark-3.5` tells maven to build a Zeppelin with Spark 3.5. This is important because Zeppelin has its own Spark interpreter and the versions must be the same. | ||
|
|
||
| `-Pflink-1.17` tells maven to build a Zeppelin with Flink 1.17. | ||
| `-Pflink-119` tells maven to build a Zeppelin with Flink 1.19. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. same use flink 1.20 in docs, and can we keep the original style?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @pan3793 Bumped the example to 1.20.3 with |
||
|
|
||
| **Note:** You can build against any version of Spark that has a Zeppelin build profile available. The key is to make sure you check out the matching version of Spark to build. At the time of this writing, Spark 3.5 was the most recent Spark version available. | ||
|
|
||
|
|
@@ -215,16 +215,16 @@ Building from source is recommended where possible, for simplicity in this tuto | |
| To download the Flink Binary use `wget` | ||
|
|
||
| ```bash | ||
| wget -O flink-1.17.1-bin-scala_2.12.tgz "https://www.apache.org/dyn/closer.lua/flink/flink-1.17.1/flink-1.17.1-bin-scala_2.12.tgz?action=download" | ||
| tar -xzvf flink-1.17.1-bin-scala_2.12.tgz | ||
| wget -O flink-1.19.3-bin-scala_2.12.tgz "https://www.apache.org/dyn/closer.lua/flink/flink-1.19.3/flink-1.19.3-bin-scala_2.12.tgz?action=download" | ||
| tar -xzvf flink-1.19.3-bin-scala_2.12.tgz | ||
| ``` | ||
|
|
||
| This will download Flink 1.17.1. | ||
| This will download Flink 1.19.3. | ||
|
|
||
| Start the Flink Cluster. | ||
|
|
||
| ```bash | ||
| flink-1.17.1/bin/start-cluster.sh | ||
| flink-1.19.3/bin/start-cluster.sh | ||
| ``` | ||
|
|
||
| ###### Building From source | ||
|
|
@@ -233,13 +233,13 @@ If you wish to build Flink from source, the following will be instructive. Note | |
|
|
||
| See the [Flink Installation guide](https://github.com/apache/flink/blob/master/README.md) for more detailed instructions. | ||
|
|
||
| Return to the directory where you have been downloading, this tutorial assumes that is `$HOME`. Clone Flink, check out release-1.17.1, and build. | ||
| Return to the directory where you have been downloading, this tutorial assumes that is `$HOME`. Clone Flink, check out release-1.19.3, and build. | ||
|
|
||
| ```bash | ||
| cd $HOME | ||
| git clone https://github.com/apache/flink.git | ||
| cd flink | ||
| git checkout release-1.17.1 | ||
| git checkout release-1.19.3 | ||
| mvn clean install -DskipTests | ||
| ``` | ||
|
|
||
|
|
@@ -261,8 +261,8 @@ If no task managers are present, restart the Flink cluster with the following co | |
| (if binaries) | ||
|
|
||
| ```bash | ||
| flink-1.17.1/bin/stop-cluster.sh | ||
| flink-1.17.1/bin/start-cluster.sh | ||
| flink-1.19.3/bin/stop-cluster.sh | ||
| flink-1.19.3/bin/start-cluster.sh | ||
| ``` | ||
|
|
||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -10,9 +10,7 @@ Flink interpreter is more complex than other interpreter (such as jdbc, shell). | |
| Currently, it has the following modules clustered into two groups: | ||
|
|
||
| * flink-shims | ||
| * flink1.15-shims | ||
| * flink1.16-shims | ||
| * flink1.17-shims | ||
| * flink1.19-shims (shared by Flink 1.19 and 1.20) | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. suppose we will support flink 1.20 for a bit longer than 1.19; can we name the shared module flink1.20-shims?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @pan3793 Renamed. |
||
|
|
||
| * flink-scala-2.12 | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can we replace it with Flink 1.20 in docs? which is an LTS version, while Flink 1.19 is already EOL
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@pan3793 Bumped to 1.20.