This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-06-12
Channels
- # admin-announcements (1)
- # arachne (3)
- # cider (11)
- # cljsrn (5)
- # clojure (26)
- # clojure-android (10)
- # clojure-greece (8)
- # clojure-russia (5)
- # clojure-spec (7)
- # clojure-uk (3)
- # clojurescript (16)
- # clojurex (38)
- # core-async (1)
- # css (3)
- # cursive (42)
- # dirac (2)
- # hoplon (28)
- # keechma (1)
- # lein-figwheel (2)
- # leiningen (1)
- # mount (3)
- # om (132)
- # onyx (46)
- # re-frame (53)
- # reagent (17)
- # spacemacs (7)
- # specter (50)
- # untangled (2)
- # yada (3)
"New feature: Jobs now support metadata by including a metadata map with job submission data e.g. {:workflow ... :catalog ... :job-metadata {:name "myjobname"}}. This makes it easier to correlate information about jobs, query the cluster for jobs, etc." from the change log, shouldn't the key name for metadata just be :metadata, like it is in the metrics README ?
Indeed it should be. Did you find that in changes.md?
@devth: no GCP pub/sub users yet, as far as I know
I'm just getting ready to run a peer in prod. I've looked through the prod checklist and tested a workflow locally. I'm a little confused on the generated project startup options:
" start-peers [npeers] Start Onyx peers."
" submit-job [job-name] Submit a registered job to an Onyx cluster."
By default the Dockerfile is starting the peer with:
/opt/jdk/bin/java -cp /opt/peer.jar lab79.idx.core start-peers "$NPEERS" -p :docker
What's the intended usage here? Do I let Docker start it up, then attach a shell to my running container and submit a job? (Btw, my job is meant to be long-running and always running as long as my Onyx cluster is up).Where is the correct place to configure things like Datomic uri and ElasticSearch uri? :env-config
?
We’ve been putting a lot of our job config in the config.edn, and then reading it out via aero (which can handle env variables)
Why does the onyx template use FROM anapsix/alpine-java:jre8
in the Dockerfile as opposed to the official Java image FROM java:8-jre-alpine
?
☝️ possibly a question for @gardnervickers ?
Yep, that’s a question for Gardner
@devth: no particular reason, I didn't know there was an official alpine Java container. I'm out and about now but make an issue and I'll swap over
Thanks
@gardnervickers: will do! Main reason I ask is because the official image keeps up with Alpine better than anapsix
does and alpine:3.4
is required to work properly with Kubernetes internal DNS
master is better
Trying to run in prod, hitting:
Starting peer-group
16-Jun-12 16:57:07 idx-2696581386-dc3rt INFO [onyx.static.logging-configuration] - Starting Logging Configuration
16-Jun-12 16:57:07 idx-2696581386-dc3rt INFO [onyx.messaging.aeron] - Starting Aeron Peer Group
***
*** Failed to connect to the Media Driver - is it currently running?
***
16-Jun-12 16:57:08 idx-2696581386-dc3rt FATAL [onyx.system] -
lab79.idx.core.main
...
lab79.idx.core/-main core.clj: 66
lab79.idx.core/-main core.clj: 76
lib-onyx.peer/start-peer peer.clj: 7
@lucasbradstreet: ok I'll redo the PR
the docker container should be starting an aeron media driver as a service
Weird:
java.io.IOException: No space left on device
clojure.lang.ExceptionInfo: Error in component :messaging-group in system onyx.system.OnyxPeerGroup calling #'com.stuartsierra.component/start
component: #<Aeron Peer Group>
function: #'com.stuartsierra.component/start
reason: :com.stuartsierra.component/component-function-threw-exception
system: <#C051WKSP3>.system.OnyxPeerGroup{:config {:onyx/tenancy-id "idx", :onyx.messaging/allow-short-circuit? false, :onyx.messaging/impl :aeron, :onyx.log/config {:level :info}, :onyx.messaging/peer-port 40200, :zookeeper/address "zookeeper:2181", :onyx.peer/job-scheduler :onyx.job-scheduler/greedy, :onyx.messaging.aeron/embedded-driver? true, :onyx.peer/zookeeper-timeout 60000, :onyx.messaging/bind-addr "localhost"}, :logging-config #<Logging Configuration>, :messaging-group #<Aeron Peer Group>}
system-key: :messaging-group
Exception in thread "main" java.io.IOException: No space left on device
try starting docker run with a bigger —shm-size
It is possible with kubernetes, mounting the hosts /dev/shm inside the container worked for me in the past
It looks like it is mounting but immediately running out of space. Can I tell aeron to use a different location?
I think it's defaulting to 64m. Inside my pod if I df -h
I see
shm 64.0M 64.0M 0 100% /dev/shm
That would probably work. I just ssh'd to the underlying VM and it has a
Filesystem Size Used Avail Use% Mounted on
tmpfs 1.5G 648K 1.5G 1% /run/shm
Yea mount it as an emptydir
That's fine
Great to hear!
New exception (after removing old pods and bringing up new ones):
java.lang.IllegalStateException: aeron cnc file version not understood: version=0
java.lang.IllegalStateException: Could not initialise communication buffers
clojure.lang.ExceptionInfo: Error in component :messaging-group in system onyx.system.OnyxPeerGroup calling #'com.stuartsierra.component/start
component: #<Aeron Peer Group>
function: #'com.stuartsierra.component/start
reason: :com.stuartsierra.component/component-function-threw-exception
system: <#C051WKSP3>.system.OnyxPeerGroup{:config {:onyx/tenancy-id "idx", :onyx.messaging/allow-short-circuit? false, :onyx.messaging/impl :aeron, :onyx.log/config {:level :info}, :onyx.messaging/peer-port 40200, :zookeeper/address "zookeeper:2181", :onyx.peer/job-scheduler :onyx.job-scheduler/greedy, :onyx.messaging.aeron/embedded-driver? true, :onyx.peer/zookeeper-timeout 60000, :onyx.messaging/bind-addr "localhost"}, :logging-config #<Logging Configuration>, :messaging-group #<Aeron Peer Group>}
system-key: :messaging-group
Could this be Aeron not cleaning up after itself?