"cniVersion": "0.2.0",
"name": "macvlan0",
"type": "macvlan",
- "master": "eth0",
+ "master": "em1",
"args" : {
"org.apache.mesos" : {
"network_info" : {
]
}
}
+ },
+ "org.verizon" : {
+ "network_info" : {
+ "name" : "mynet",
+ "labels" : {
+ "labels" : [
+ { "key" : "app", "value" : "myapp" },
+ { "key" : "mccKey1", "value" : "mccVal1" },
+ { "key" : "bs", "value" : "bsVal" },
+ { "key" : "StaticIP", "value" : "172.19.0.209" },
+ { "key" : "mccKey2", "value" : "mccVal2" },
+ { "key" : "env", "value" : "prod" }
+ ]
+ }
+ }
}
},
"ipam": {
--- /dev/null
+
+
+ "args":{
+ "cni":{
+ "labels": [{"key": "app", "value": "myapp"}]
+ }
+ },
+
+https://github.com/containernetworking/cni/blob/master/CONVENTIONS.md
+
+https://github.com/containernetworking/cni/blob/master/SPEC.md#network-configuration
+
+
+{
+ "id": "cambria/test/cni-be-sock",
+ "cpus": 0.2,
+ "mem": 128,
+ "disk": 0,
+ "instances": 1,
+ "constraints": [ [ "hostname", "CLUSTER", "10.37.8.1" ] ],
+ "env": {
+ "MON_GROUP": "ThingSpaceHome",
+ "MON_APP": "ThingSpaceHome-plugin-test",
+ "MON_CONTACT": "michael.cambria@verizon.com"
+ },
+ "container": {
+ "docker": {
+ "image": "10.32.17.1:9001/montana/tsh-sock-sink",
+ "forcePullImage": false,
+ "privileged": false
+ },
+ "type": "MESOS"
+ },
+ "ipAddress": {
+ "networkName": "macvlan0",
+ "labels" : {
+ "StaticIP" : "172.19.0.209" ,
+ "mccKey2" : "mccVal2"
+ }
+ },
+ "uris": [ "file:///docker.tar.gz" ]
+}
+
+
+
--- /dev/null
+
+sudo ip link add eth1p0 link em1 type macvlan mode bridge
+sudo ip addr add 172.19.0.1/16 dev eth1p0
+sudo ip link set eth1p0 up
+
+sudo ip netns add mcc-cni-test0
+sudo ip netns add mcc-cni-test1
+
+sudo ip netns exec mcc-cni-test0 /bin/bash
+sudo ip netns exec mcc-cni-test1 /bin/bash
+
+
+
+/var/lib/cni/networks/
+
+
#/bin/bash
export DEBUG=1
export NETCONFPATH=/etc/cni/net.d/
-export CNI_PATH=/home/mcambria/go/src/github.com/containernetworking/cni/bin/
-#export CNI_PATH=/home/mcambria/go2/src/stash.verizon.com/cni/bin
+#export CNI_PATH=/home/mcambria/go/src/github.com/containernetworking/cni/bin/
+export CNI_PATH=/home/mcambria/go2/src/stash.verizon.com/cni/bin
export NETCONFPATH=${NETCONFPATH-/etc/cni/net.d}
export CNI_COMMAND=ADD
export CNI_NETNS=/var/run/netns/mcc-cni-test0
export CNI_CONTAINERID=mcc-cni-test0
-export CNI_ARGS="IP=172.19.99.99;UPLINK=cbr0"
+export CNI_ARGS="IP=172.19.99.99;UPLINK=eth1p0"
#export CNI_ARGS="IP=172.19.99.99"
#export CNI_ARGS+=";UPLINK=cbr0"
--- /dev/null
+#/bin/bash
+export DEBUG=1
+export NETCONFPATH=/etc/cni/net.d/
+#export CNI_PATH=/home/mcambria/go/src/github.com/containernetworking/cni/bin/
+export CNI_PATH=/home/mcambria/go2/src/stash.verizon.com/cni/bin
+export NETCONFPATH=${NETCONFPATH-/etc/cni/net.d}
+export CNI_COMMAND=ADD
+export CNI_NETNS=/var/run/netns/mcc-cni-test1
+export CNI_CONTAINERID=mcc-cni-test1
+
+export PATH=$CNI_PATH:$PATH
+export CNI_IFNAME=eth1
+
+export MCCVAL="Jamal Env Value"
+
+# sudo -E /home/mcambria/github/cni-master/scripts/exec-plugins.sh add mcc-cni-test0 /var/run/netns/mcc-cni-test0
+
+macvlan < 20-macvlan0.conf
+
+
#/bin/bash
export DEBUG=1
export NETCONFPATH=/etc/cni/net.d/
-export CNI_PATH=/home/mcambria/go/src/github.com/containernetworking/cni/bin/
-#export CNI_PATH=/home/mcambria/go2/src/stash.verizon.com/cni/bin
+#export CNI_PATH=/home/mcambria/go/src/github.com/containernetworking/cni/bin/
+export CNI_PATH=/home/mcambria/go2/src/stash.verizon.com/cni/bin
export NETCONFPATH=${NETCONFPATH-/etc/cni/net.d}
export CNI_COMMAND=DEL
export CNI_NETNS=/var/run/netns/mcc-cni-test0
export CNI_CONTAINERID=mcc-cni-test0
-export CNI_ARGS="IP=172.19.99.99;UPLINK=cbr0"
+export CNI_ARGS="IP=172.19.99.99;UPLINK=eth1p0"
#export CNI_ARGS="IP=172.19.99.99"
#export CNI_ARGS+=";UPLINK=cbr0"
--- /dev/null
+#/bin/bash
+export DEBUG=1
+export NETCONFPATH=/etc/cni/net.d/
+#export CNI_PATH=/home/mcambria/go/src/github.com/containernetworking/cni/bin/
+export CNI_PATH=/home/mcambria/go2/src/stash.verizon.com/cni/bin
+export NETCONFPATH=${NETCONFPATH-/etc/cni/net.d}
+export CNI_COMMAND=DEL
+export CNI_NETNS=/var/run/netns/mcc-cni-test1
+export CNI_CONTAINERID=mcc-cni-test1
+
+export PATH=$CNI_PATH:$PATH
+export CNI_IFNAME=eth1
+
+export MCCVAL="Jamal Env Value"
+
+# sudo -E /home/mcambria/github/cni-master/scripts/exec-plugins.sh add mcc-cni-test0 /var/run/netns/mcc-cni-test0
+
+macvlan < 20-macvlan0.conf
+
+
*/
labels := map[string]string{}
- if args != "" {
if n.ARGS != nil {
for k, label := range n.ARGS.Mesos.NetworkInfo.Labels.Labels {
println("CNI Args: Net Name: ", n.ARGS.Mesos.NetworkInfo.Name)
}
- }
for key, value := range labels {
println("Key:", key, "Value:", value)
staticIP, found := labels["StaticIP"]
if found {
println("StaticIP is: ", staticIP)
- }
+ log.Println("StaticIP is: ", staticIP)
+ n.IPAM.Args.IP = net.ParseIP(staticIP)
+ log.Println("IPAM args: n.IPAM.IP is:", n.IPAM.Args.IP)
+ } else {
+ println("StaticIP label NOT set")
+ }
bull, found := labels["bull"]
if !found {
--- /dev/null
+
+sudo systemctl restart dcos-mesos-slave-public.service
+
+cp ~montana/vz-local /opt/mesosphere/active/cni/vz-local
+
+cp ~montana/20-macvlan0.cni /opt/mesosphere/etc/dcos/network/cni
+
+sftp montana@maikai-prov.verizon.com
+
+sftp 10.37.20.1
+
+