Skip to content

Instantly share code, notes, and snippets.

@strobe
Last active June 13, 2016 22:32
Show Gist options
  • Save strobe/bc3530dc487eadd90c7e05405fca931c to your computer and use it in GitHub Desktop.
Save strobe/bc3530dc487eadd90c7e05405fca931c to your computer and use it in GitHub Desktop.
DCOS Marathon Multi-node Docker-Cassandra
{
"id": "/cassandra",
"groups": [
{
"id": "/cassandra/cassandra-seed-group",
"apps": [
{
"id": "/cassandra/cassandra-seed-group/cassandra1",
"cmd": null,
"cpus": 0.5,
"mem": 1024,
"disk": 0,
"instances": 1,
"env": {
"CASSANDRA_BROADCAST_ADDRESS": "12.0.0.1"
},
"residency": {
"taskLostBehavior": "WAIT_FOREVER"
},
"container": {
"type": "DOCKER",
"volumes": [
{
"containerPath": "cassandra-data",
"persistent": {
"size": 500
},
"mode": "RW"
},
{
"hostPath": "cassandra-data",
"containerPath": "/var/lib/cassandra",
"mode": "RW"
}
],
"docker": {
"image": "cassandra:3.5",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 9042,
"servicePort": 10100,
"protocol": "tcp",
"name": "cql",
"labels": {
"VIP_0": "12.0.0.1:9042"
}
},
{
"containerPort": 9160,
"servicePort": 10101,
"protocol": "tcp",
"name": "thrift",
"labels": {
"VIP_0": "12.0.0.1:9160"
}
},
{
"containerPort": 7001,
"servicePort": 10102,
"protocol": "tcp",
"name": "tls",
"labels": {
"VIP_0": "12.0.0.1:7001"
}
},
{
"containerPort": 7000,
"servicePort": 10103,
"protocol": "tcp",
"name": "internode",
"labels": {
"VIP_0": "12.0.0.1:7000"
}
},
{
"containerPort": 7199,
"servicePort": 10104,
"protocol": "tcp",
"name": "jmx",
"labels": {
"VIP_0": "12.0.0.1:7199"
}
}
],
"privileged": false,
"parameters": [],
"forcePullImage": false
}
},
"labels": {
"HAPROXY_GROUP": "external, internal"
},
"healthChecks": [
{
"protocol": "TCP",
"portIndex": 0,
"gracePeriodSeconds": 300,
"intervalSeconds": 60,
"timeoutSeconds": 20,
"maxConsecutiveFailures": 3,
"ignoreHttp1xx": false
}
]
}
]
},
{
"id": "/cassandra/cassandra-group",
"dependencies": [
"/cassandra/cassandra-seed-group"
],
"apps": [
{
"id": "/cassandra/cassandra-group/cassandra2",
"cmd": null,
"cpus": 0.5,
"mem": 1024,
"disk": 0,
"instances": 1,
"env": {
"CASSANDRA_BROADCAST_ADDRESS": "12.0.0.2",
"CASSANDRA_SEEDS": "12.0.0.1"
},
"residency": {
"taskLostBehavior": "WAIT_FOREVER"
},
"container": {
"type": "DOCKER",
"volumes": [
{
"containerPath": "cassandra-data",
"persistent": {
"size": 500
},
"mode": "RW"
},
{
"hostPath": "cassandra-data",
"containerPath": "/var/lib/cassandra",
"mode": "RW"
}
],
"docker": {
"image": "cassandra:3.5",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 9042,
"protocol": "tcp",
"name": "cql",
"labels": {
"VIP_0": "12.0.0.2:9042"
}
},
{
"containerPort": 9160,
"protocol": "tcp",
"name": "thrift",
"labels": {
"VIP_0": "12.0.0.2:9160"
}
},
{
"containerPort": 7001,
"protocol": "tcp",
"name": "tls",
"labels": {
"VIP_0": "12.0.0.2:7001"
}
},
{
"containerPort": 7000,
"protocol": "tcp",
"name": "internode",
"labels": {
"VIP_0": "12.0.0.2:7000"
}
},
{
"containerPort": 7199,
"protocol": "tcp",
"name": "jmx",
"labels": {
"VIP_0": "12.0.0.2:7199"
}
}
],
"privileged": false,
"parameters": [],
"forcePullImage": false
}
},
"healthChecks": [
{
"protocol": "TCP",
"portIndex": 0,
"gracePeriodSeconds": 300,
"intervalSeconds": 60,
"timeoutSeconds": 20,
"maxConsecutiveFailures": 3,
"ignoreHttp1xx": false
}
]
},
{
"id": "/cassandra/cassandra-group/cassandra3",
"cmd": null,
"cpus": 0.5,
"mem": 1024,
"disk": 0,
"instances": 1,
"env": {
"CASSANDRA_BROADCAST_ADDRESS": "12.0.0.3",
"CASSANDRA_SEEDS": "12.0.0.1"
},
"residency": {
"taskLostBehavior": "WAIT_FOREVER"
},
"container": {
"type": "DOCKER",
"volumes": [
{
"containerPath": "cassandra-data",
"persistent": {
"size": 500
},
"mode": "RW"
},
{
"hostPath": "cassandra-data",
"containerPath": "/var/lib/cassandra",
"mode": "RW"
}
],
"docker": {
"image": "cassandra:3.5",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 9042,
"protocol": "tcp",
"name": "cql",
"labels": {
"VIP_0": "12.0.0.3:9042"
}
},
{
"containerPort": 9160,
"protocol": "tcp",
"name": "thrift",
"labels": {
"VIP_0": "12.0.0.3:9160"
}
},
{
"containerPort": 7001,
"protocol": "tcp",
"name": "tls",
"labels": {
"VIP_0": "12.0.0.3:7001"
}
},
{
"containerPort": 7000,
"protocol": "tcp",
"name": "internode",
"labels": {
"VIP_0": "12.0.0.3:7000"
}
},
{
"containerPort": 7199,
"protocol": "tcp",
"name": "jmx",
"labels": {
"VIP_0": "12.0.0.3:7199"
}
}
],
"privileged": false,
"parameters": [],
"forcePullImage": false
}
},
"healthChecks": [
{
"protocol": "TCP",
"portIndex": 0,
"gracePeriodSeconds": 300,
"intervalSeconds": 60,
"timeoutSeconds": 20,
"maxConsecutiveFailures": 3,
"ignoreHttp1xx": false
}
]
}
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment