Skip to content

Instantly share code, notes, and snippets.

@joestein
Created April 28, 2016 23:39
Show Gist options
  • Save joestein/ec51791af91744751681e6f67af28db2 to your computer and use it in GitHub Desktop.
Save joestein/ec51791af91744751681e6f67af28db2 to your computer and use it in GitHub Desktop.
name: storm-topology-full-dcos
applications:
exhibitor-mesos-storm:
type: "exhibitor-mesos-0.1.x"
id: exhibitor-mesos-storm
version: 0.1
cpu: 0.5
mem: 1024
ports:
- 31991
launch_command: "$(find jdk* -maxdepth 0 -type d)/bin/java -jar exhibitor-mesos-0.0.2.1.jar scheduler"
artifact_urls:
- "https://s3.amazonaws.com/elodina-exhibitor/exhibitor-mesos-0.0.2.1.jar"
- "http://repo.elodina.s3.amazonaws.com/exhibitor-1.5.5-all.jar"
- "http://repo.elodina.s3.amazonaws.com/jdk-7u79-linux-x64.tar.gz"
- "http://repo.elodina.s3.amazonaws.com/zookeeper.tar.gz"
healthcheck: /health
scheduler:
api: http://$HOST:$PORT0
master: leader.mesos:5050
debug: true
storage: "file:exhibitor-mesos.json"
tasks:
nodes:
id: 90
cpu: 0.5
mem: 1024
port: 31150
constraints: "hostname=unique"
configtype: zookeeper
timeout: 5min
zkconfigconnect: "leader.mesos:2181"
zkconfigzpath: /exhibitor-mesos-storm/config
zookeeper-install-directory: "/opt/exhibitor-mesos-storm/zookeeper"
#zookeeper-data-directory: "/opt/exhibitor-mesos/zkdata"
#log-index-directory: "/opt/exhibitor-mesos/zklogindex"
#zookeeper-log-directory: "/opt/exhibitor-mesos/zklog"
kafka-mesos-storm:
type: "kafka-mesos-0.9.x"
id: kafka-mesos-storm
version: 0.9.4
cpu: 0.1
mem: 512
ports:
- 31990
launch_command: "/usr/bin/java -jar kafka-mesos-0.9.4.0.jar scheduler"
artifact_urls:
- "https://github.com/mesos/kafka/releases/download/0.9.4.0/kafka-mesos-0.9.4.0.jar"
- "http://repo.elodina.s3.amazonaws.com/kafka_2.10-0.9.0.0.tgz"
healthcheck: /health
scheduler:
api: http://$HOST:$PORT0
master: leader.mesos:5050
zk: ${exhibitor-mesos-storm.zkConnect}/kafka-storm
storage: "zk:/kafka-mesos-storm"
log: "./std-log.log"
debug: true
tasks:
brokers:
id: 90
cpus: 0.5
mem: 1024
constraints: "hostname=unique"
port: 31250
timeout: 3m
dependencies:
- exhibitor-mesos-storm
storm-nimbus:
type: storm-nimbus
id: storm-nimbus
cpu: 1.0
mem: 1024
artifact_urls:
- "http://repo.elodina.s3.amazonaws.com/storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0.tgz"
- "http://repo.elodina.s3.amazonaws.com/storm.yaml"
launch_command: "cp storm.yaml storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0/conf && cd storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0 && ./bin/storm-mesos nimbus -c mesos.master.url=zk://leader.mesos:2181/mesos -c storm.zookeeper.servers=\"[\\\"leader.mesos\\\"]\" -c nimbus.thrift.port=$PORT0 -c topology.mesos.worker.cpu=0.5 -c topology.mesos.worker.mem.mb=615 -c worker.childopts=-Xmx512m -c topology.mesos.executor.cpu=0.1 -c topology.mesos.executor.mem.mb=160 -c supervisor.childopts=-Xmx128m -c mesos.executor.uri=http://repo.elodina.s3.amazonaws.com/storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0.tgz"
ports:
- 31056
after_scheduler:
- sleep 60
storm-ui:
type: storm-ui
id: storm-ui
cpu: 0.2
mem: 512
artifact_urls:
- "http://repo.elodina.s3.amazonaws.com/storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0.tgz"
- "http://repo.elodina.s3.amazonaws.com/storm.yaml"
healthcheck: /
launch_command: "cp storm.yaml storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0/conf && cd storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0 && ./bin/storm ui -c ui.port=$PORT0 -c nimbus.host=storm-nimbus.marathon.mesos"
ports:
- 31067
dependencies:
- storm-nimbus
storm-submit-topology:
type: run-once
id: storm-submit-topology
cpu: 0.1
mem: 512
artifact_urls:
- "http://repo.elodina.s3.amazonaws.com/storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0.tgz"
- "http://repo.elodina.s3.amazonaws.com/storm-kafka-09-mirror_deploy.jar"
launch_command: "cp storm-kafka-09-mirror_deploy.jar storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0 && cd storm-mesos-0.1.1-SNAPSHOT-storm0.10.0-mesos0.25.0 && ./bin/storm jar -c nimbus.host=storm-nimbus.marathon.mesos -c nimbus.thrift.port=31056 storm-kafka-09-mirror_deploy.jar net.elodina.storm.KafkaMirrorTopology ${storm-topology-name} broker-90.kafka.mesos:31250 ${source-topic} ${target-topic}"
dependencies:
- storm-ui
- kafka-mesos-storm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment