Apache Flink Web Dashboard
The web dashboard is work in progress towards the new Flink runtime monitor. In particular, it will provide the following missing features of the current web dashboard:
- Live progress monitoring (via live accumulators)
- A graph view of the program, as it is executed.
- A REST style API to access the status of individual jobs.
- A more modular design
The dashboard listens at
The new web dashboard is work in progress. It starts an HTTP server (by default at port 8081) that serves the new web pages and additional background requests.
The code is regular Java code built via Maven. To add additional request handlers, follow the
example of the
The web dashboard is implemented using angular.js. The dashboard build infrastructure uses node.js. The dashboard files are all pre-built, so one can try it out without building it.
Preparing the Build Environment
Depending on your version of Linux, Windows or MacOS, you may need to manually install node.js and bower.
Install node.js by following these instructions.
Verify that the installed version is at least 2.11.3, via
Install bower via
sudo npm install -g bower
Verify that the installed version is at least 1.4.1, via
Install gulp via
sudo npm install -g gulp
Verify that the installed version is at least 3.9.0, via
The build process downloads all requires libraries via the node.js package management tool (npm) and the bower dependency management tool. The final build tool is gulp.
cd flink-runtime-web/web-dashboard npm install bower install gulp
The dashboard code is under
/app. The result of the build process is under
When developing the dashboard, every change needs to recompile the files and update the server:
cd flink-runtime-web/web-dashboard gulp cd ../../flink-dist mvn -DskipTests clean package
To simplify continuous development, one can use a standalone proxy server, together with automatic re-compilation:
- Edit the file
app/scripts/index.coffee. Comment/uncomment the lines that define the
- Re-compile the files via
gulp. By calling
gulp watch, the build-tool autocompiles future changes.
- Start the proxy server via
- Access the dashboard at