Launch Using YARN¶
Building the YARN Client and Application Master¶
First, run
gradle buildYarn
under the project root directory. This will create the YARN client and application master jar files under jbosen_yarn/build/libs/ directory named yarnClient.jar and yarnApplicationMaster.jar.
Or download the jar files directly from our repo:
Running on YARN¶
For a step by step instruction on a quick start to run SSP Demo, please follow here.For a step by step instruction on how to run Matrix Factorization app on YARN, please follow here.
For running apps on YARN, we have provided for you a running script jbosen_yarn_run.py under the root directory.Usage: python scripts/jbosen_yarn_run.py --client_jar_path <Path to the yarnClient.jar> --app_master_jar_path <Path to the application master jar file> --ps_app_jar_local_path <Path to the ps app jar file>These are the required command line arguments for running the ps app on YARN. For further usages, please consult with python scripts/jbosen_yarn_run.py -hor jbosen.
Extra Files¶
As part of the YARN requirement, files accessed by the app need to be on HDFS. Therefore, users need to put data files onto HDFS manually and pass the complete HDFS paths (with the format hdfs://<domain>/<path>) of the files as command line arguments.
Things to watch out for¶
- YARN client, application master and JBösen app jar files need to be on local filesystem. The YARN client takes care of transferring the jar files into HDFS and containers.
- All other files that are accessed by the JBösen app need to be transferred to HDFS manually, as mentioned above.
- To access the application master and JBösen app log, use
yarn logs -applicationId <application id>where the application id will be printed as part of the YARN client log. - In order to use
--ps_hdfs_prefix <HDFS path>flag correctly, the<HDFS path>needs to have r/w permission for both current login user and YARN user, if they are different. Otherwise, users may see permission related exceptions with YARN.