ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

devops之 gitlab-ci + mesos + docker + marathon 持续发布③marathon常用api的使用

2021-05-15 12:01:16  阅读:256  来源: 互联网

标签:haproxy ci http mesos 9090 lb docker marathon


devops之 gitlab-ci + mesos + docker + marathon 持续发布③marathon常用api的使用

创建marathon-lb的脚本

def test_create_marathon_lb(self):
    url = "http://63.159.217.161:8080/v2/apps"
    app = {
        "id": "marathon-lb",
        "cmd": None,
        "cpus": 1,
        "mem": 128,
        "disk": 0,
        "instances": 1,
        "container": {
            "type": "DOCKER",
            "volumes": [],
            "docker":{
                "image": "docker.io/mesosphere/marathon-lb",
                "network": "HOST",
                "portMappings": [],
                "privileged": True
            }
        },
        "healthChecks": [
            {
                "path": "/_haproxy_health_check",
                # 注意此处的协议是 MESOS_HTTP 否则会健康检查不通过报错,也有可能是网络问题,可以在marathon中 telnet或者 curl 部署容器内部(如172.7.0.2)所在的ip和端口
                "protocol": "MESOS_HTTP",
                "gracePeriodSeconds": 30,
                "intervalSeconds": 5,
                "timeoutSeconds": 5,
                "maxConsecutiveFailures": 5,
                "ignoreHttp1xx": False,
                "port": 9090
            }
        ],
        "args": [
            "sse",
            "-m",
            "http://63.159.217.161:8080",
            "--group",
            "external"
        ]
    }

    r = requests.post(url, headers=headers, json=app)
    print(r.status_code)
    print(json.dumps(r.json(), indent=4))

检查测试健康状态:

http://1.1.1.1:9090/_haproxy_health_check

haproxy常用接口如下:

http://$haproxy_server:9090/haproxy?stats
http://$haproxy_server:9090/_haproxy_health_check
http://$haproxy_server:9090/_haproxy_getconfig

标签:haproxy,ci,http,mesos,9090,lb,docker,marathon
来源: https://www.cnblogs.com/reblue520/p/14771171.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有