>      Yet the cni plugin is afaik not even looking at the  
args.'org.apache.mesos'.network_info configuration,
 >      for the cni_args it looks e.g. at args.cni.ips (or an environment 
variable)
 >
 >
 >That depends on the CNI plugin you're using. CNI is a spec between CO 
(container orchestration system
 > like K8s, mesos, etc.) and NP (network providers like calico, cisco, 
juniper, etc.).
 >
 >`args` field is the place where CO can inject CO specific information. 
Some CNI plugin might use those CO
 > specific information to perform some special operations. Although I 
don't like it, this is just how the
 > spec has evolved. The use of CNI_ARGS has been deprecated 
<https://github.com/containernetworking/cni/blob/master/CONVENTIONS.md#cni_args>
 > in favor of using `args` field.
 >
 >
 >      Or is it possible to reference in the cni network json config 
files a key of args.'org.apache.mesos'.network_info?
 >
 >
 >I don't really follow this. Can you state your use case?

Basically I want to assign a static ip via mesos/marathon. The only way 
I can get this to work now is via
 the cni network configuration something like this. But I do not want to 
start creating a cni network
 config file for every app.


{
  "name": "test-macvtap",
  "type": "macvtap",
  "master": "eth1",
  "hostrouteif": "macvtap1",
  "ipam": {
    "type": "host-local",
    "subnet": "192.168.122.0/24",
    "rangeStart": "192.168.122.171",
    "rangeEnd": "192.168.122.179",
    "routes": [ { "dst": "192.168.122.22/32", "gw": "0.0.0.0" },
                { "dst": "192.168.10.10/32", "gw": "0.0.0.0" },
                { "dst": "192.168.10.22/32", "gw": "0.0.0.0" }]
  },
  "dns": { "nameservers": ["192.168.10.10"] },
  "args": {
    "cni": { "ips": ["192.168.122.177"] }
}


Reply via email to