You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+10-1Lines changed: 10 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,11 +17,14 @@ See [Troubleshooting Tips](doc/troubleshooting.md) as well as [Yarn tips](doc/ya
17
17
- Avenida.com
18
18
- GumGum
19
19
- Fuse Elements
20
+
- Frontline Solvers
21
+
- Aruba Networks
22
+
-[Zed Worldwide](www.zed.com)
20
23
21
24
## Features
22
25
23
26
-*"Spark as a Service"*: Simple REST interface for all aspects of job, context management
24
-
- Support for Spark SQL and Hive Contexts/jobs and custom job contexts! See [Contexts](doc/contexts.md).
27
+
- Support for Spark SQL, Hive, Streaming Contexts/jobs and custom job contexts! See [Contexts](doc/contexts.md).
25
28
- Supports sub-second low-latency jobs via long-running job contexts
26
29
- Start and stop job contexts for RDD sharing and low-latency jobs; change resources on restart
27
30
- Kill running jobs via stop context
@@ -46,6 +49,8 @@ For release notes, look in the `notes/` directory. They should also be up on [l
46
49
47
50
## Quick start / development mode
48
51
52
+
NOTE: This quick start guide uses SBT to run the job server and the included test jar, but the normal development process is to create a separate project for Job Server jobs and to deploy the job server to a Spark cluster. Please see the deployment section below for more details.
53
+
49
54
You need to have [SBT](http://www.scala-sbt.org/release/docs/Getting-Started/Setup.html) installed.
50
55
51
56
To set the current version, do something like this:
it to the remotes you have configured in `<environment>.sh`
232
237
3. On the remote server, start it in the deployed directory with `server_start.sh` and stop it with `server_stop.sh`
233
238
239
+
The `server_start.sh` script uses `spark-submit` under the hood and may be passed any of the standard extra arguments from `spark-submit`.
240
+
234
241
NOTE: by default the assembly jar from `job-server-extras`, which includes support for SQLContext and HiveContext, is used. If you face issues with all the extra dependencies, consider modifying the install scripts to invoke `sbt job-server/assembly` instead, which doesn't include the extra dependencies.
235
242
236
243
Note: to test out the deploy to a local staging dir, or package the job server for Mesos,
@@ -275,6 +282,8 @@ the REST API.
275
282
DELETE /jobs/<jobId> - Kills the specified job
276
283
GET /jobs/<jobId>/config - Gets the job configuration
277
284
285
+
For details on the Typesafe config format used for input (JSON also works), see the [Typesafe Config docs](https://github.com/typesafehub/config).
286
+
278
287
### Context configuration
279
288
280
289
A number of context-specific settings can be controlled when creating a context (POST /contexts) or running an
Copy file name to clipboardExpand all lines: doc/contexts.md
+10-1Lines changed: 10 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,4 +38,13 @@ This can be done easily by extending the `SparkContextFactory` trait, like `SQLC
38
38
39
39
## Jars
40
40
41
-
If you wish to use the `SQLContext` or `HiveContext`, be sure to pull down the job-server-extras package.
41
+
If you wish to use the `SQLContext` or `HiveContext`, be sure to pull down the job-server-extras package.
42
+
43
+
## StreamingContext
44
+
45
+
`job-server-extras` provides a context to run Spark Streaming jobs. There are a couple of configurations you can change in job-server's .conf file:
46
+
47
+
*`streaming.batch_interval`: the streaming batch in millis
48
+
*`streaming.stopGracefully`: if true, stops gracefully by waiting for the processing of all received data to be completed
49
+
*`streaming.stopSparkContext`: if true, stops the SparkContext with the StreamingContext. The underlying SparkContext will be stopped regardless of whether the StreamingContext has been started.
You may need to adjust Spray's default request timeout and idle timeout, which are by default 40 secs and 60 secs. To do this, modify the configuration file in your deployed job server, adding a section like the following:
20
+
21
+
```
22
+
spray.can.server {
23
+
idle-timeout = 210 s
24
+
request-timeout = 200 s
25
+
}
26
+
```
27
+
28
+
Then simply restart the job server.
29
+
30
+
Note that the idle-timeout must be higher than request-timeout, or Spray and the job server won't start.
31
+
19
32
## Job server won't start / cannot bind to 0.0.0.0:8090
20
33
21
34
Check that another process isn't already using that port. If it is, you may want to start it on another port:
@@ -33,6 +46,10 @@ after this fixed, I can run jobs submitted from a remote job server successfully
33
46
34
47
(Thanks to @pcliu)
35
48
49
+
## Exception in thread "main" java.lang.NoSuchMethodError: akka.actor.ActorRefFactory.dispatcher()Lscala/concurrent/ExecutionContextExecutor;
50
+
51
+
If you are running CDH 5.3 or older, you may have an incompatible version of Akka bundled together. :( Try modifying the version of Akka included with spark-jobserver to match the one in CDH (2.2.4, I think), or upgrade to CDH 5.4. If you are on CDH 5.4, check that `sparkVersion` in `Dependencies.scala` matches CDH. Or see [isse #154](https://github.com/spark-jobserver/spark-jobserver/issues/154).
0 commit comments