aboutsummaryrefslogtreecommitdiffstats
path: root/resources
diff options
context:
space:
mode:
Diffstat (limited to 'resources')
-rw-r--r--resources/libraries/python/KubernetesUtils.py7
-rw-r--r--resources/templates/kubernetes/eth-l2bdbase-eth-2memif-2vnf.yaml271
-rw-r--r--resources/templates/kubernetes/eth-l2xcbase-eth-2memif-2vnf.yaml271
3 files changed, 547 insertions, 2 deletions
diff --git a/resources/libraries/python/KubernetesUtils.py b/resources/libraries/python/KubernetesUtils.py
index 69e7e832b4..bcbb7f5dff 100644
--- a/resources/libraries/python/KubernetesUtils.py
+++ b/resources/libraries/python/KubernetesUtils.py
@@ -322,12 +322,14 @@ class KubernetesUtils(object):
for _ in range(48):
(ret_code, stdout, _) = ssh.exec_command_sudo(cmd, timeout=120)
if int(ret_code) == 0:
- ready = True
+ ready = False
for line in stdout.splitlines():
try:
state = line.split()[1].split('/')
ready = True if 'Running' in line and\
state == state[::-1] else False
+ if not ready:
+ break
except ValueError, IndexError:
ready = False
if ready:
@@ -392,10 +394,11 @@ class KubernetesUtils(object):
:param kwargs: Key-value pairs used to create configuration.
:param kwargs: dict
"""
+ skip_cnt = kwargs['cpu_skip'] + (kwargs['i'] - 1) * kwargs['cpu_cnt']
cpuset_cpus = \
CpuUtils.cpu_slice_of_list_per_node(node=kwargs['node'],
cpu_node=kwargs['cpu_node'],
- skip_cnt=kwargs['cpu_skip'],
+ skip_cnt=skip_cnt,
cpu_cnt=kwargs['cpu_cnt'],
smt_used=kwargs['smt_used'])
diff --git a/resources/templates/kubernetes/eth-l2bdbase-eth-2memif-2vnf.yaml b/resources/templates/kubernetes/eth-l2bdbase-eth-2memif-2vnf.yaml
new file mode 100644
index 0000000000..5bf290d0ee
--- /dev/null
+++ b/resources/templates/kubernetes/eth-l2bdbase-eth-2memif-2vnf.yaml
@@ -0,0 +1,271 @@
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: sfc-controller-cfg
+ namespace: csit
+data:
+ etcd.conf:
+ insecure-transport: true
+ dial-timeout: 1000000000
+ endpoints:
+ - "172.17.0.1:22379"
+
+ sfc.conf:
+ sfc_controller_config_version: 1
+ description: $$TEST_NAME$$
+ host_entities:
+ - name: vswitch
+ sfc_entities:
+ - name: vswitch-vnf1
+ description: vswitch to VNF1 - memif
+ type: 3
+ elements:
+ - container: vswitch
+ port_label: $$VSWITCH_IF1$$
+ etcd_vpp_switch_key: vswitch
+ type: 5
+ - container: vnf1
+ port_label: port1
+ etcd_vpp_switch_key: vswitch
+ type: 2
+ - name: vswitch-vnf2
+ description: VNF2 to vswitch - memif
+ type: 3
+ elements:
+ - container: vswitch
+ port_label: $$VSWITCH_IF2$$
+ etcd_vpp_switch_key: vswitch
+ type: 5
+ - container: vnf2
+ port_label: port2
+ etcd_vpp_switch_key: vswitch
+ type: 2
+ - name: vnf1-vnf2
+ description: vnf1 to vnf2 via vswitch - memifs
+ type: 2
+ elements:
+ - container: vnf1
+ port_label: port2
+ etcd_vpp_switch_key: vswitch
+ type: 2
+ - container: vnf2
+ port_label: port1
+ etcd_vpp_switch_key: vswitch
+ type: 2
+
+ vnf.conf:
+ vnf_plugin_config_version: 1
+ description: VNF config
+ vnf_entities:
+ - name: vnf1
+ container: vnf1
+ l2xconnects:
+ - port_labels:
+ - port1
+ - port2
+ - name: vnf2
+ container: vnf2
+ l2xconnects:
+ - port_labels:
+ - port1
+ - port2
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: sfc-controller
+ namespace: csit
+spec:
+ containers:
+ - name: "sfc-controller"
+ image: prod_sfc_controller
+ imagePullPolicy: IfNotPresent
+ command:
+ - /bin/sfc-controller
+ - -etcdv3-config=/opt/sfc-controller/dev/etcd.conf
+ - -sfc-config=/opt/sfc-controller/dev/sfc.conf
+ - -vnf-config=/opt/sfc-controller/dev/vnf.conf
+ volumeMounts:
+ - name: controller-config
+ mountPath: /opt/sfc-controller/dev
+ volumes:
+ - name: controller-config
+ configMap:
+ name: sfc-controller-cfg
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: vswitch-agent-cfg
+ namespace: csit
+data:
+ etcd.conf:
+ insecure-transport: true
+ dial-timeout: 1000000000
+ endpoints:
+ - "172.17.0.1:22379"
+
+ kafka.conf:
+ addrs:
+ - "172.17.0.1:9092"
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: vswitch-vpp
+ namespace: csit
+spec:
+ hostNetwork: true
+ containers:
+ - name: "vswitch"
+ image: prod_vpp_agent_shrink
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ privileged: true
+ ports:
+ - containerPort: 5002
+ - containerPort: 9191
+ readinessProbe:
+ httpGet:
+ path: /readiness
+ port: 9191
+ periodSeconds: 1
+ livenessProbe:
+ httpGet:
+ path: /liveness
+ port: 9191
+ periodSeconds: 1
+ initialDelaySeconds: 15
+ env:
+ - name: MICROSERVICE_LABEL
+ value: vswitch
+ volumeMounts:
+ - name: vpp-config
+ mountPath: /etc/vpp
+ - name: agent-config
+ mountPath: /opt/vpp-agent/dev
+ - name: memif-sockets
+ mountPath: /tmp
+ volumes:
+ - name: vpp-config
+ configMap:
+ name: vswitch-vpp-cfg
+ - name: agent-config
+ configMap:
+ name: vswitch-agent-cfg
+ - name: memif-sockets
+ hostPath:
+ path: /tmp
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: vnf-agent-cfg
+ namespace: csit
+data:
+ etcd.conf:
+ insecure-transport: true
+ dial-timeout: 1000000000
+ endpoints:
+ - "172.17.0.1:22379"
+
+ kafka.conf:
+ addrs:
+ - "172.17.0.1:9092"
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: vnf1-vpp
+ namespace: csit
+spec:
+ containers:
+ - name: "vnf1"
+ image: prod_vpp_agent_shrink
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ privileged: true
+ ports:
+ - containerPort: 5002
+ - containerPort: 9191
+ readinessProbe:
+ httpGet:
+ path: /readiness
+ port: 9191
+ periodSeconds: 1
+ livenessProbe:
+ httpGet:
+ path: /liveness
+ port: 9191
+ initialDelaySeconds: 15
+ env:
+ - name: MICROSERVICE_LABEL
+ value: vnf1
+ volumeMounts:
+ - name: vpp-config
+ mountPath: /etc/vpp
+ - name: agent-config
+ mountPath: /opt/vpp-agent/dev
+ - name: memif-sockets
+ mountPath: /tmp
+ volumes:
+ - name: vpp-config
+ configMap:
+ name: vnf1-vpp-cfg
+ - name: agent-config
+ configMap:
+ name: vnf-agent-cfg
+ - name: memif-sockets
+ hostPath:
+ path: /tmp
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: vnf2-vpp
+ namespace: csit
+spec:
+ containers:
+ - name: "vnf2"
+ image: prod_vpp_agent_shrink
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ privileged: true
+ ports:
+ - containerPort: 5002
+ - containerPort: 9191
+ readinessProbe:
+ httpGet:
+ path: /readiness
+ port: 9191
+ periodSeconds: 1
+ livenessProbe:
+ httpGet:
+ path: /liveness
+ port: 9191
+ initialDelaySeconds: 15
+ env:
+ - name: MICROSERVICE_LABEL
+ value: vnf2
+ volumeMounts:
+ - name: vpp-config
+ mountPath: /etc/vpp
+ - name: agent-config
+ mountPath: /opt/vpp-agent/dev
+ - name: memif-sockets
+ mountPath: /tmp
+ volumes:
+ - name: vpp-config
+ configMap:
+ name: vnf2-vpp-cfg
+ - name: agent-config
+ configMap:
+ name: vnf-agent-cfg
+ - name: memif-sockets
+ hostPath:
+ path: /tmp
diff --git a/resources/templates/kubernetes/eth-l2xcbase-eth-2memif-2vnf.yaml b/resources/templates/kubernetes/eth-l2xcbase-eth-2memif-2vnf.yaml
new file mode 100644
index 0000000000..f2b03e670a
--- /dev/null
+++ b/resources/templates/kubernetes/eth-l2xcbase-eth-2memif-2vnf.yaml
@@ -0,0 +1,271 @@
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: sfc-controller-cfg
+ namespace: csit
+data:
+ etcd.conf:
+ insecure-transport: true
+ dial-timeout: 1000000000
+ endpoints:
+ - "172.17.0.1:22379"
+
+ sfc.conf:
+ sfc_controller_config_version: 1
+ description: $$TEST_NAME$$
+ host_entities:
+ - name: vswitch
+ sfc_entities:
+ - name: vswitch-vnf1
+ description: vswitch to VNF1 - memif
+ type: 4
+ elements:
+ - container: vswitch
+ port_label: $$VSWITCH_IF1$$
+ etcd_vpp_switch_key: vswitch
+ type: 5
+ - container: vnf1
+ port_label: port1
+ etcd_vpp_switch_key: vswitch
+ type: 2
+ - name: vswitch-vnf2
+ description: VNF2 to vswitch - memif
+ type: 4
+ elements:
+ - container: vswitch
+ port_label: $$VSWITCH_IF2$$
+ etcd_vpp_switch_key: vswitch
+ type: 5
+ - container: vnf2
+ port_label: port2
+ etcd_vpp_switch_key: vswitch
+ type: 2
+ - name: vnf1-vnf2
+ description: vnf1 to vnf2 via vswitch - memifs
+ type: 5
+ elements:
+ - container: vnf1
+ port_label: port2
+ etcd_vpp_switch_key: vswitch
+ type: 2
+ - container: vnf2
+ port_label: port1
+ etcd_vpp_switch_key: vswitch
+ type: 2
+
+ vnf.conf:
+ vnf_plugin_config_version: 1
+ description: VNF config
+ vnf_entities:
+ - name: vnf1
+ container: vnf1
+ l2xconnects:
+ - port_labels:
+ - port1
+ - port2
+ - name: vnf2
+ container: vnf2
+ l2xconnects:
+ - port_labels:
+ - port1
+ - port2
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: sfc-controller
+ namespace: csit
+spec:
+ containers:
+ - name: "sfc-controller"
+ image: prod_sfc_controller
+ imagePullPolicy: IfNotPresent
+ command:
+ - /bin/sfc-controller
+ - -etcdv3-config=/opt/sfc-controller/dev/etcd.conf
+ - -sfc-config=/opt/sfc-controller/dev/sfc.conf
+ - -vnf-config=/opt/sfc-controller/dev/vnf.conf
+ volumeMounts:
+ - name: controller-config
+ mountPath: /opt/sfc-controller/dev
+ volumes:
+ - name: controller-config
+ configMap:
+ name: sfc-controller-cfg
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: vswitch-agent-cfg
+ namespace: csit
+data:
+ etcd.conf:
+ insecure-transport: true
+ dial-timeout: 1000000000
+ endpoints:
+ - "172.17.0.1:22379"
+
+ kafka.conf:
+ addrs:
+ - "172.17.0.1:9092"
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: vswitch-vpp
+ namespace: csit
+spec:
+ hostNetwork: true
+ containers:
+ - name: "vswitch"
+ image: prod_vpp_agent_shrink
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ privileged: true
+ ports:
+ - containerPort: 5002
+ - containerPort: 9191
+ readinessProbe:
+ httpGet:
+ path: /readiness
+ port: 9191
+ periodSeconds: 1
+ livenessProbe:
+ httpGet:
+ path: /liveness
+ port: 9191
+ periodSeconds: 1
+ initialDelaySeconds: 15
+ env:
+ - name: MICROSERVICE_LABEL
+ value: vswitch
+ volumeMounts:
+ - name: vpp-config
+ mountPath: /etc/vpp
+ - name: agent-config
+ mountPath: /opt/vpp-agent/dev
+ - name: memif-sockets
+ mountPath: /tmp
+ volumes:
+ - name: vpp-config
+ configMap:
+ name: vswitch-vpp-cfg
+ - name: agent-config
+ configMap:
+ name: vswitch-agent-cfg
+ - name: memif-sockets
+ hostPath:
+ path: /tmp
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: vnf-agent-cfg
+ namespace: csit
+data:
+ etcd.conf:
+ insecure-transport: true
+ dial-timeout: 1000000000
+ endpoints:
+ - "172.17.0.1:22379"
+
+ kafka.conf:
+ addrs:
+ - "172.17.0.1:9092"
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: vnf1-vpp
+ namespace: csit
+spec:
+ containers:
+ - name: "vnf1"
+ image: prod_vpp_agent_shrink
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ privileged: true
+ ports:
+ - containerPort: 5002
+ - containerPort: 9191
+ readinessProbe:
+ httpGet:
+ path: /readiness
+ port: 9191
+ periodSeconds: 1
+ livenessProbe:
+ httpGet:
+ path: /liveness
+ port: 9191
+ initialDelaySeconds: 15
+ env:
+ - name: MICROSERVICE_LABEL
+ value: vnf1
+ volumeMounts:
+ - name: vpp-config
+ mountPath: /etc/vpp
+ - name: agent-config
+ mountPath: /opt/vpp-agent/dev
+ - name: memif-sockets
+ mountPath: /tmp
+ volumes:
+ - name: vpp-config
+ configMap:
+ name: vnf1-vpp-cfg
+ - name: agent-config
+ configMap:
+ name: vnf-agent-cfg
+ - name: memif-sockets
+ hostPath:
+ path: /tmp
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+ name: vnf2-vpp
+ namespace: csit
+spec:
+ containers:
+ - name: "vnf2"
+ image: prod_vpp_agent_shrink
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ privileged: true
+ ports:
+ - containerPort: 5002
+ - containerPort: 9191
+ readinessProbe:
+ httpGet:
+ path: /readiness
+ port: 9191
+ periodSeconds: 1
+ livenessProbe:
+ httpGet:
+ path: /liveness
+ port: 9191
+ initialDelaySeconds: 15
+ env:
+ - name: MICROSERVICE_LABEL
+ value: vnf2
+ volumeMounts:
+ - name: vpp-config
+ mountPath: /etc/vpp
+ - name: agent-config
+ mountPath: /opt/vpp-agent/dev
+ - name: memif-sockets
+ mountPath: /tmp
+ volumes:
+ - name: vpp-config
+ configMap:
+ name: vnf2-vpp-cfg
+ - name: agent-config
+ configMap:
+ name: vnf-agent-cfg
+ - name: memif-sockets
+ hostPath:
+ path: /tmp