我在Mesosphere上使用Cassandra框架,它在Mesos容器上启动Cassandra节点。
我运行以下命令来安装
dcos package install --options=cassandra.json cassandra
我可以限制特定节点上的部署而不是随机部署中间层吗?我知道我们可以使用JSON文件中的参数 constraints 来使用docker容器来完成它,但是当我对mesos使用相同的时候,它说约束是一个无效的参数。< / p>
我做错了吗?或者有办法吗?
我的cassandra.json看起来像
{
"service" : {
"name": "cassandra-test",
"cpus": 1,
"mem": 512,
"heap": 256
},
"constraints" : {
{
"hostname",
"CLUSTER",
"10.2.1.81,10.2.1.89,10.2.1.74,10.2.1.72"
}
},
"nodes": {
"cpus": 2,
"mem": 2048,
"disk": 4096,
"heap": {
"size": 1024,
"new": 100
},
"count": 2,
"seeds": 1
},
"executor" : {
"cpus": 1,
"mem": 512,
"heap": 256
},
"task" : {
"cpus": 1,
"mem": 128
}
}
答案 0 :(得分:0)
根据您的配置示例,将提供如下约束:
{
"service": {
"name": "cassandra-test",
"cpus": 1,
"mem": 512,
"heap": 256,
"placement_constraint": "hostname:CLUSTER:10.2.1.81,10.2.1.89,10.2.1.74,10.2.1.72"
},
"nodes": {
"cpus": 2,
"mem": 2048,
"disk": 4096,
"heap": {
"size": 1024,
"new": 100
},
"count": 2,
"seeds": 1
},
"executor": {
"cpus": 1,
"mem": 512,
"heap": 256
},
"task": {
"cpus": 1,
"mem": 128
}
}
请参阅此处文档中的示例:
您可以在此处查看控制此内容的配置架构:
https://github.com/mesosphere/dcos-cassandra-service/blob/master/universe/config.json