Local Cluster
Get a local Flink cluster up and running in a few simple steps.
Setup: Download and Start Flink
Flink runs on Linux and Mac OS X. Note: Windows users can run Flink in Cygwin or WSL. To be able to run Flink, the only requirement is to have a working Java 8 or 11 installation.
You can check the correct installation of Java by issuing the following command:
java -version
If you have Java 8, the output will look something like this:
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
- Download a binary from the downloads page. You can pick any Scala variant you like. For certain features you may also have to download one of the pre-bundled Hadoop jars and place them into the
/lib
directory. - Go to the download directory.
- Unpack the downloaded archive.
$ cd ~/Downloads # Go to download directory
$ tar xzf flink-*.tgz # Unpack the downloaded archive
$ cd flink-1.11.0
For MacOS X users, Flink can be installed through Homebrew.
$ brew install apache-flink
...
$ flink --version
Version: 1.2.0, Commit ID: 1c659cf
Start a Local Flink Cluster
$ ./bin/start-cluster.sh # Start Flink
Check the Dispatcher’s web frontend at http://localhost:8081 and make sure everything is up and running. The web frontend should report a single available TaskManager instance.
You can also verify that the system is running by checking the log files in the logs
directory:
$ tail log/flink-*-standalonesession-*.log
INFO ... - Rest endpoint listening at localhost:8081
INFO ... - http://localhost:8081 was granted leadership ...
INFO ... - Web frontend listening at http://localhost:8081.
INFO ... - Starting RPC endpoint for StandaloneResourceManager at akka://flink/user/resourcemanager .
INFO ... - Starting RPC endpoint for StandaloneDispatcher at akka://flink/user/dispatcher .
INFO ... - ResourceManager akka.tcp://flink@localhost:6123/user/resourcemanager was granted leadership ...
INFO ... - Starting the SlotManager.
INFO ... - Dispatcher akka.tcp://flink@localhost:6123/user/dispatcher was granted leadership ...
INFO ... - Recovering all persisted jobs.
INFO ... - Registering TaskManager ... at ResourceManager
Windows Cygwin Users
If you are installing Flink from the git repository and you are using the Windows git shell, Cygwin can produce a failure similar to this one:
c:/flink/bin/start-cluster.sh: line 30: $'\r': command not found
This error occurs because git is automatically transforming UNIX line endings to Windows style line endings when running in Windows. The problem is that Cygwin can only deal with UNIX style line endings. The solution is to adjust the Cygwin settings to deal with the correct line endings by following these three steps:
Start a Cygwin shell.
Determine your home directory by entering
cd; pwd
This will return a path under the Cygwin root path.
- Using NotePad, WordPad or a different text editor open the file
.bash_profile
in the home directory and append the following: (If the file does not exist you will have to create it)
export SHELLOPTS
set -o igncr
Save the file and open a new bash shell.
Stop a Local Flink Cluster
To stop Flink when you’re done type:
$ ./bin/stop-cluster.sh
You can terminate the processes via CTRL-C in the spawned shell windows.