3 navsection: installguide
4 title: Install the Crunch dispatcher
10 The dispatcher normally runs on the same host/VM as the API server.
12 h4. Perl SDK dependencies
14 Install the Perl SDK on the controller.
16 * See "Perl SDK":{{site.baseurl}}/sdk/perl/index.html page for details.
18 h4. Python SDK dependencies
20 Install the Python SDK and CLI tools on controller and all compute nodes.
22 * See "Python SDK":{{site.baseurl}}/sdk/python/sdk-python.html page for details.
24 h4. Likely crunch job dependencies
28 * @pip install --upgrade pyvcf@
30 h4. Crunch user account
32 On compute nodes and controller:
36 The crunch user should have the same UID, GID, and home directory on all compute nodes and on the controller.
40 Crunch scripts must be in Git repositories in the directory configured as @git_repositories_dir@/*.git (see the "API server installation":install-api-server.html#git_repositories_dir).
42 Once you have a repository with commits -- and you have read access to the repository -- you should be able to create a new job:
45 read -rd $'\000' newjob <<EOF; arv job create --job "$newjob"
46 {"script_parameters":{"input":"f815ec01d5d2f11cb12874ab2ed50daa"},
47 "script_version":"master",
49 "repository":"arvados"}
53 Without getting this error:
56 ArgumentError: Specified script_version does not resolve to a commit
61 * @services/api/script/crunch-dispatch.rb@ must be running.
62 * @crunch-dispatch.rb@ needs @services/crunch/crunch-job@ in its @PATH@.
63 * @crunch-job@ needs @sdk/perl/lib@ and @warehouse-apps/libwarehouse-perl/lib@ in its @PERLLIB@
64 * @crunch-job@ needs @ARVADOS_API_HOST@ (and, if necessary in a development environment, @ARVADOS_API_HOST_INSECURE@)
66 Example @/var/service/arvados_crunch_dispatch/run@ script:
73 ## uncomment this line if you use rvm:
74 #rvmexec="/usr/local/rvm/bin/rvm-exec 2.1.1"
76 export PATH="$PATH":/path/to/arvados/services/crunch
77 export ARVADOS_API_HOST={{ site.arvados_api_host }}
78 export CRUNCH_DISPATCH_LOCKFILE=/var/lock/crunch-dispatch
80 fuser -TERM -k $CRUNCH_DISPATCH_LOCKFILE || true
82 ## Only if your SSL cert is unverifiable:
83 # export ARVADOS_API_HOST_INSECURE=yes
85 cd /path/to/arvados/services/api
86 export RAILS_ENV=production
87 exec $rvmexec bundle exec ./script/crunch-dispatch.rb 2>&1