mesos 集群基础功能测试

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mesos 集群基础功能测试相关的知识,希望对你有一定的参考价值。


###############################################################

                                                    mesos 集群功能测试

###############################################################

1:首先准备一个json文件(hello.json)

{

    "id": "hello",

    "cmd": "echo hello; sleep 10",

    "mem": 16,

    "cpus": 0.1,

    "instances": 1,

    "disk": 0.0,

    "ports": [0]

 }

 

3:然后调用api,通过marathon启动一个应用

 

curl -i -H ‘Content-Type: application/json‘ [email protected] 172.16.7.12:8080/v2/apps

然后登陆,marathon 即可看到进程已经启动。


5:完整json 样例

{

    "id": "/product/service/myApp",

    "cmd": "env && sleep 300",

    "args": ["/bin/sh", "-c", "env && sleep 300"]

    "cpus": 1.5,

    "mem": 256.0,

    "portDefinitions": [

        { "port": 8080, "protocol": "tcp", "name": "http", labels: { "VIP_0": "10.0.0.1:80" } },

        { "port": 9000, "protocol": "tcp", "name": "admin" }

    ],

    "requirePorts": false,

    "instances": 3,

    "executor": "",

    "container": {

        "type": "DOCKER",

        "docker": {

            "image": "group/image",

            "network": "BRIDGE",

            "portMappings": [

                {

                    "containerPort": 8080,

                    "hostPort": 0,

                    "servicePort": 9000,

                    "protocol": "tcp"

                },

                {

                    "containerPort": 161,

                    "hostPort": 0,

                    "protocol": "udp"

                }

            ],

            "privileged": false,

            "parameters": [

                { "key": "a-docker-option", "value": "xxx" },

                { "key": "b-docker-option", "value": "yyy" }

            ]

        },

        "volumes": [

            {

                "containerPath": "/etc/a",

                "hostPath": "/var/data/a",

                "mode": "RO"

            },

            {

                "containerPath": "/etc/b",

                "hostPath": "/var/data/b",

                "mode": "RW"

            }

        ]

    },

    "env": {

        "LD_LIBRARY_PATH": "/usr/local/lib/myLib"

    },

    "constraints": [

        ["attribute", "OPERATOR", "value"]

    ],

    "acceptedResourceRoles": [ /* since 0.9.0 */

        "role1", "*"

    ],

    "labels": {

        "environment": "staging"

    },

    "fetch": [

        { "uri": "https://raw.github.com/mesosphere/marathon/master/README.md" },

        { "uri": "https://foo.com/archive.zip", "executable": false, "extract": true, "cache": true }

    ],

    "dependencies": ["/product/db/mongo", "/product/db", "../../db"],

    "healthChecks": [

        {

            "protocol": "HTTP",

            "path": "/health",

            "gracePeriodSeconds": 3,

            "intervalSeconds": 10,

            "portIndex": 0,

            "timeoutSeconds": 10,

            "maxConsecutiveFailures": 3

        },

        {

            "protocol": "HTTP",

            "path": "/machinehealth",

            "gracePeriodSeconds": 3,

            "intervalSeconds": 10,

            "port": 3333,

            "timeoutSeconds": 10,

            "maxConsecutiveFailures": 3

        },

        {

            "protocol": "TCP",

            "gracePeriodSeconds": 3,

            "intervalSeconds": 5,

            "portIndex": 1,

            "timeoutSeconds": 5,

            "maxConsecutiveFailures": 3

        },

        {

            "protocol": "COMMAND",

            "command": { "value": "curl -f -X GET http://$HOST:$PORT0/health" },

            "maxConsecutiveFailures": 3

        }

    ],

    "backoffSeconds": 1,

    "backoffFactor": 1.15,

    "maxLaunchDelaySeconds": 3600,

    "upgradeStrategy": {

        "minimumHealthCapacity": 0.5,

        "maximumOverCapacity": 0.2

    }

}



mesos 集群安装部署规划、准备(1)

mesos 集群安装部署zookeeper(2)

mesos 集群安装部署mesos-master(3)

mesos 集群安装部署marathon(4)

mesos 集群安装部署chronos(5)

mesos 集群安装部署mesos-slave(6)

mesos 集群安装部署mesos-dns(7)

mesos 集群基础功能测试(8)

mesos 集群清理(9)


本文出自 “康建华” 博客,转载请与作者联系!

以上是关于mesos 集群基础功能测试的主要内容,如果未能解决你的问题,请参考以下文章

比拼Mesos/Marathon?基于Docker 1.12 Swarm集群管理深度实践

mesos基础

Marathon+Mesos+Docker实战

Mesos使用统一容器管理器支持多种容器

IBM云计算架构师:Mesos新功能以及roadmap简介

庆贺Apache Mesos发布1.0版本:全球最佳集群管理方案更上一层楼