dc/os marathon虚拟网络不工作

pinkon5k  于 2021-06-26  发布在  Mesos
关注(0)|答案(1)|浏览(308)

我安装了带有3个主机和3个代理的dc/os,并且面临虚拟网络的问题。以下是我的马拉松应用程序规范:

{
  "id": "/nginx",
  "cmd": null,
  "cpus": 1,
  "mem": 128,
  "disk": 0,
  "instances": 1,
  "container": {
    "type": "DOCKER",
    "volumes": [],
    "docker": {
      "image": "nginx",
      "network": "BRIDGE",
      "portMappings": [
        {
          "containerPort": 80,
          "hostPort": 0,
          "servicePort": 10002,
          "protocol": "tcp",
          "name": "main1",
          "labels": {
            "VIP_0": "9.0.0.0:34562"
          }
        }
      ],
      "privileged": false,
      "parameters": [],
      "forcePullImage": false
    }
  },
  "portDefinitions": [
    {
      "port": 10002,
      "protocol": "tcp",
      "labels": {}
    }
  ]
}

我在dc/os虚拟网络部分看到以下内容:
虚拟网络名称|子网|代理前缀长度
dcos 9.0.0.0/8 24
集装箱在里面等了很长时间。如果我删除端口Map部分,它将成功运行。
基本上,我需要知道如何使用这个新的虚拟网络,修复服务发现和负载平衡而不使用任何额外的东西。

yws3nbqq

yws3nbqq1#

我也花了点时间想出来。。。
你需要:
删除任务定义中的所有端口分配
描述要连接到的网络的名称(创建的默认网络名为“dcos”)

{
    "id": "yourtask",
    "container": {
        "type": "DOCKER",
        "docker": {
            "image": "your/image",
            "network": "USER"
        }
    },
    "acceptedResourceRoles" : [
        "slave_public"
    ],
    "ipAddress": {
        "networkName": "dcos"
    },
    "instances": 2,
    "cpus": 0.2,
    "mem": 128
}

相关问题