【云星数据---mesos实战系列】:marathon实战Constraints篇-003
2017-12-05 16:52
851 查看
GROUP_BY operator
GROUP_BY can be used to distribute tasks evenly across racks or datacenters for highavailability.
$curl -v -X POST http://192.168.100.30:8080/v2/apps \ -H Content-Type:application/json -d '{ "id":"dataman", "container": { "type": "DOCKER", "docker": { "image": "192.168.100.13:5000/fchen/mynginx", 4000 "network": "BRIDGE", "portMappings": [{ "containerPort": 80, "hostPort": 0, "protocol": "tcp" }] } }, "constraints": [["rack_id", "GROUP_BY"]], "cmd": "/usr/sbin/nginx -c /etc/nginx/nginx.conf", "cpus": 0.1, "mem": 128.0, "instances": 6 }'
GROUP_BY帮我们将instance均匀的分布到不同的机架上,保证了高可用性。可以看到rack1
和rack2上的instance个数均为3个。
LIKE operator
LIKE accepts a regular expression as parameter, and allows you to run your tasks only on the slaves whose field values match the regular expression.curl -v -X POST http://192.168.100.30:8080/v2/apps \ -H Content-Type:application/json -d '{ "id":"dataman", "container": { "type": "DOCKER", "docker": { "image": "192.168.100.13:5000/fchen/mynginx", "network": "BRIDGE", "portMappings": [{ "containerPort": 80, "hostPort": 0, "protocol": "tcp" }] } }, "constraints": [["rack_id", "LIKE", "rack-[1-2]"]], "cmd": "/usr/sbin/nginx -c /etc/nginx/nginx.conf", "cpus": 0.1, "mem": 128.0, "instances": 6 }'
LIKE操作可以将我们的instance发布到我们希望的slave上,匹配正则表达式。
注意:LIKE操作必须带上parameter。
UNLIKE operator
Just like LIKE operator, but only run tasks on slaves whose field values don’t match the regular expression.curl -v -X POST http://192.168.100.30:8080/v2/apps \ -H Content-Type:application/json -d '{ "id":"dataman", "container": { "type": "DOCKER", "docker": { "image": "192.168.100.13:5000/fchen/mynginx", "network": "BRIDGE", "portMappings": [{ "containerPort": 80, "hostPort": 0, "protocol": "tcp" }] } }, "constraints": [["rack_id", "UNLIKE", "rack-[2,3]"]], "cmd": "/usr/sbin/nginx -c /etc/nginx/nginx.conf", "cpus": 0.1, "mem": 128.0, "instances": 6 }'
同LIKE操作,UNLIKE不将instance发布到匹配的slave上,参数匹配正则表达式。
相关文章推荐
- 【云星数据---mesos实战系列003】:marathon实战004--marathon部署一套Tomcat环境(精简代码版)
- 【云星数据---mesos实战系列003】:marathon实战008--marathon部署一套最简单的前端程序
- 【云星数据---mesos实战系列003】:marathon实战002--marathon部署http版的hello world应用
- 【云星数据---mesos实战系列003】:marathon实战009--marathon部署一个springboot应用
- 【云星数据---mesos实战系列】:marathon实战Constraints篇-001
- 【云星数据---mesos实战系列003】:marathon实战007--marathon部署一个docker register
- 【云星数据---mesos实战系列】:marathon实战Constraints篇-002
- 云星数据---mesos实战系列003】:marathon实战001--使用marathon部署一个最简单的容器服务
- 【云星数据---mesos实战系列002】:mesos全分布式部署实战008--配置mesos-master和marathon的高可用
- 【云星数据---mesos实战系列002】:mesos全分布式部署实战003--zookeeper全分布式部署准备
- 【云星数据---mesos实战系列002】:mesos全分布式部署实战009--修改marathon的默认端口
- 云星数据---Apache Flink实战系列(精品版)】:Flink流处理API详解与编程实战005-Flink基于流的window操作003
- 【云星数据---Apache Flink实战系列(精品版)】:Apache Flink高级特性与高级应用023-Flink中OutFormat设置(Scala版)003
- 云星数据---Apache Flink实战系列(精品版)】:Flink其他操作及内容003-flink的背压机制001
- 云星数据---Scala实战系列(精品版)】:Scala入门教程004-Scala数组详解003
- 云星数据---Apache Flink实战系列(精品版)】:Flink流处理API详解与编程实战008-DataStream与MySql自定义sink和source(Scala版)003
- 云星数据---Scala实战系列(精品版)】:Scala入门教程003-Scala数组详解002
- 【云星数据---mesos实战系列002】:mesos全分布式部署实战006--mesos全分布式部署方案
- 【云星数据---Apache Flink实战系列(精品版)】:Apache Flink高级特性与高级应用019-Flink中参数传递和容错设定003
- 云星数据---Apache Flink实战系列(精品版)】:Flink流处理API详解与编程实战003-Flink基于流的window操作001